summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--arch/arm/mach-tegra/devices.c32
-rw-r--r--arch/arm/mach-tegra/devices.h3
-rw-r--r--arch/arm/mach-tegra/include/mach/iomap.h3
3 files changed, 38 insertions, 0 deletions
diff --git a/arch/arm/mach-tegra/devices.c b/arch/arm/mach-tegra/devices.c
index 53fe654e2ab3..b23b9108287e 100644
--- a/arch/arm/mach-tegra/devices.c
+++ b/arch/arm/mach-tegra/devices.c
@@ -1334,6 +1334,37 @@ struct platform_device tegra_kbc_device = {
};
#if !defined(CONFIG_ARCH_TEGRA_2x_SOC)
+static struct resource tegra_tsensor_resources[]= {
+ {
+ .start = TEGRA_TSENSOR_BASE,
+ .end = TEGRA_TSENSOR_BASE + TEGRA_TSENSOR_SIZE - 1,
+ .flags = IORESOURCE_MEM,
+ },
+ {
+ .start = INT_TSENSOR,
+ .end = INT_TSENSOR,
+ .flags = IORESOURCE_IRQ,
+ },
+ {
+ .start = TEGRA_PMC_BASE + 0x1B0,
+ /* 2 pmc registers mapped */
+ .end = TEGRA_PMC_BASE + 0x1B0 + (2 * 4),
+ .flags = IORESOURCE_MEM,
+ },
+};
+
+struct platform_device tegra_tsensor_device = {
+ .name = "tegra-tsensor",
+ .id = -1,
+ .num_resources = ARRAY_SIZE(tegra_tsensor_resources),
+ .resource = tegra_tsensor_resources,
+ .dev = {
+ .platform_data = 0,
+ },
+};
+#endif
+
+#if !defined(CONFIG_ARCH_TEGRA_2x_SOC)
static u64 tegra_se_dma_mask = DMA_BIT_MASK(32);
struct resource tegra_se_resources[] = {
@@ -1360,3 +1391,4 @@ struct platform_device tegra_se_device = {
.num_resources = ARRAY_SIZE(tegra_se_resources),
};
#endif
+
diff --git a/arch/arm/mach-tegra/devices.h b/arch/arm/mach-tegra/devices.h
index 26bf59ad40c0..7fc387ee6283 100644
--- a/arch/arm/mach-tegra/devices.h
+++ b/arch/arm/mach-tegra/devices.h
@@ -95,6 +95,9 @@ extern struct platform_device tegra_aes_device;
#if defined(CONFIG_ARCH_TEGRA_2x_SOC)
extern struct platform_device tegra_das_device;
#endif
+#if !defined(CONFIG_ARCH_TEGRA_2x_SOC)
+extern struct platform_device tegra_tsensor_device;
+#endif
extern struct platform_device debug_uarta_device;
extern struct platform_device debug_uartb_device;
diff --git a/arch/arm/mach-tegra/include/mach/iomap.h b/arch/arm/mach-tegra/include/mach/iomap.h
index c4309dd02453..9285cf542e1f 100644
--- a/arch/arm/mach-tegra/include/mach/iomap.h
+++ b/arch/arm/mach-tegra/include/mach/iomap.h
@@ -247,6 +247,9 @@
#elif defined(CONFIG_ARCH_TEGRA_3x_SOC)
+#define TEGRA_TSENSOR_BASE 0x70014000
+#define TEGRA_TSENSOR_SIZE SZ_4K
+
#define TEGRA_HDA_BASE 0x70030000
#define TEGRA_HDA_SIZE SZ_64K