diff options
author | Prashant Gaikwad <pgaikwad@nvidia.com> | 2012-09-15 10:28:41 +0530 |
---|---|---|
committer | Dan Willemsen <dwillemsen@nvidia.com> | 2013-09-14 12:34:39 -0700 |
commit | 70c3336c9750a0e5a8b3840a9a8c00c38675b119 (patch) | |
tree | 97d79ababf9cdb6da0f11cd9cc2c55c893223116 /arch/arm/mach-tegra | |
parent | 72dc63bb957c7b8402fcc149ec1a575ddfd1c206 (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.c | 17 | ||||
-rw-r--r-- | arch/arm/mach-tegra/board-dalmore.c | 17 | ||||
-rw-r--r-- | arch/arm/mach-tegra/board-pluto.c | 17 |
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 |