summaryrefslogtreecommitdiff
path: root/arch/arm/mach-tegra
diff options
context:
space:
mode:
authorPrashant Gaikwad <pgaikwad@nvidia.com>2012-09-15 10:28:41 +0530
committerDan Willemsen <dwillemsen@nvidia.com>2013-09-14 12:34:39 -0700
commit70c3336c9750a0e5a8b3840a9a8c00c38675b119 (patch)
tree97d79ababf9cdb6da0f11cd9cc2c55c893223116 /arch/arm/mach-tegra
parent72dc63bb957c7b8402fcc149ec1a575ddfd1c206 (diff)
arm: tegra: add device tree support
Enable device tree support for kai, dalmore, pluto and curacao by adding board compatible tables. Also add dts/dtsi files for kai, dalmore, pluto and curacao. Bug 973078 Bug 1037657 Change-Id: I24fdcde555f4bf840ad839cad25c8d0d43ced7cc Signed-off-by: Nitin Kumbhar <nkumbhar@nvidia.com> Signed-off-by: Prashant Gaikwad <pgaikwad@nvidia.com> Reviewed-on: http://git-master/r/130634 Reviewed-by: Simone Willett <swillett@nvidia.com> Tested-by: Simone Willett <swillett@nvidia.com> Rebase-Id: R35f1359a8ff83cfc6ed92b57761a76e6feb44a5c
Diffstat (limited to 'arch/arm/mach-tegra')
-rw-r--r--arch/arm/mach-tegra/board-curacao.c17
-rw-r--r--arch/arm/mach-tegra/board-dalmore.c17
-rw-r--r--arch/arm/mach-tegra/board-pluto.c17
3 files changed, 48 insertions, 3 deletions
diff --git a/arch/arm/mach-tegra/board-curacao.c b/arch/arm/mach-tegra/board-curacao.c
index ec71bd177d14..a82ae362be65 100644
--- a/arch/arm/mach-tegra/board-curacao.c
+++ b/arch/arm/mach-tegra/board-curacao.c
@@ -35,6 +35,7 @@
#include <linux/gpio_keys.h>
#include <linux/input.h>
#include <linux/platform_data/tegra_usb.h>
+#include <linux/of_platform.h>
#include <mach/clk.h>
#include <mach/gpio-tegra.h>
@@ -606,6 +607,14 @@ static void __init tegra_curacao_init(void)
curacao_soctherm_init();
}
+static void __init tegra_curacao_dt_init(void)
+{
+ tegra_curacao_init();
+
+ of_platform_populate(NULL,
+ of_default_bus_match_table, NULL, NULL);
+}
+
static void __init tegra_curacao_reserve(void)
{
#if defined(CONFIG_NVMAP_CONVERT_CARVEOUT_TO_IOVMM)
@@ -615,6 +624,11 @@ static void __init tegra_curacao_reserve(void)
#endif
}
+static const char * const curacao_dt_board_compat[] = {
+ "nvidia,curacao",
+ NULL
+};
+
MACHINE_START(CURACAO, CURACAO_BOARD_NAME)
.atag_offset = 0x80000100,
.soc = &tegra_soc_desc,
@@ -624,5 +638,6 @@ MACHINE_START(CURACAO, CURACAO_BOARD_NAME)
.init_irq = tegra_init_irq,
.handle_irq = gic_handle_irq,
.timer = &tegra_timer,
- .init_machine = tegra_curacao_init,
+ .init_machine = tegra_curacao_dt_init,
+ .dt_compat = curacao_dt_board_compat,
MACHINE_END
diff --git a/arch/arm/mach-tegra/board-dalmore.c b/arch/arm/mach-tegra/board-dalmore.c
index 063f222cf297..ca26c8fb45ea 100644
--- a/arch/arm/mach-tegra/board-dalmore.c
+++ b/arch/arm/mach-tegra/board-dalmore.c
@@ -43,6 +43,7 @@
#include <linux/max17048_battery.h>
#include <linux/leds.h>
#include <linux/i2c/at24.h>
+#include <linux/of_platform.h>
#include <asm/hardware/gic.h>
@@ -570,6 +571,14 @@ static void __init dalmore_ramconsole_reserve(unsigned long size)
tegra_ram_console_debug_reserve(SZ_1M);
}
+static void __init tegra_dalmore_dt_init(void)
+{
+ tegra_dalmore_init();
+
+ of_platform_populate(NULL,
+ of_default_bus_match_table, NULL, NULL);
+}
+
static void __init tegra_dalmore_reserve(void)
{
#if defined(CONFIG_NVMAP_CONVERT_CARVEOUT_TO_IOVMM)
@@ -581,6 +590,11 @@ static void __init tegra_dalmore_reserve(void)
dalmore_ramconsole_reserve(SZ_1M);
}
+static const char * const dalmore_dt_board_compat[] = {
+ "nvidia,dalmore",
+ NULL
+};
+
MACHINE_START(DALMORE, "dalmore")
.atag_offset = 0x100,
.smp = smp_ops(tegra_smp_ops),
@@ -594,6 +608,7 @@ MACHINE_START(DALMORE, "dalmore")
.init_irq = tegra_init_irq,
.handle_irq = gic_handle_irq,
.timer = &tegra_timer,
- .init_machine = tegra_dalmore_init,
+ .init_machine = tegra_dalmore_dt_init,
.restart = tegra_assert_system_reset,
+ .dt_compat = dalmore_dt_board_compat,
MACHINE_END
diff --git a/arch/arm/mach-tegra/board-pluto.c b/arch/arm/mach-tegra/board-pluto.c
index 786988e5e1fb..37e39d609a3b 100644
--- a/arch/arm/mach-tegra/board-pluto.c
+++ b/arch/arm/mach-tegra/board-pluto.c
@@ -45,6 +45,7 @@
#include <linux/leds.h>
#include <linux/i2c/at24.h>
#include <linux/mfd/max8831.h>
+#include <linux/of_platform.h>
#include <asm/hardware/gic.h>
@@ -636,6 +637,14 @@ static void __init pluto_ramconsole_reserve(unsigned long size)
tegra_ram_console_debug_reserve(SZ_1M);
}
+static void __init tegra_pluto_dt_init(void)
+{
+ tegra_pluto_init();
+
+ of_platform_populate(NULL,
+ of_default_bus_match_table, NULL, NULL);
+}
+
static void __init tegra_pluto_reserve(void)
{
#if defined(CONFIG_NVMAP_CONVERT_CARVEOUT_TO_IOVMM)
@@ -647,6 +656,11 @@ static void __init tegra_pluto_reserve(void)
pluto_ramconsole_reserve(SZ_1M);
}
+static const char * const pluto_dt_board_compat[] = {
+ "nvidia,pluto",
+ NULL
+};
+
MACHINE_START(TEGRA_PLUTO, "tegra_pluto")
.atag_offset = 0x100,
.smp = smp_ops(tegra_smp_ops),
@@ -660,6 +674,7 @@ MACHINE_START(TEGRA_PLUTO, "tegra_pluto")
.init_irq = tegra_init_irq,
.handle_irq = gic_handle_irq,
.timer = &tegra_timer,
- .init_machine = tegra_pluto_init,
+ .init_machine = tegra_pluto_dt_init,
.restart = tegra_assert_system_reset,
+ .dt_compat = pluto_dt_board_compat,
MACHINE_END