diff options
author | Simon Horman <horms+renesas@verge.net.au> | 2014-09-08 22:50:00 -0400 |
---|---|---|
committer | Simon Horman <horms+renesas@verge.net.au> | 2014-09-08 22:50:00 -0400 |
commit | dcc683aba83cd8db964a9a1d4582d4829d6efcb2 (patch) | |
tree | 98ebfb852f62b125ab69b9aff477bd1f0f04d89b /arch/arm/mach-shmobile | |
parent | 9dddfcfacaadb5491b62233b893b510fa00da4e0 (diff) | |
parent | 433306747791845677ba662435a9bbbafaa21df3 (diff) |
Merge tag 'renesas-r8a7740-ccf-and-timers-for-v3.18' into dt-timers-for-v3.18
Renesas ARM Based SoC R8a7740 CCF and Timers Updates for v3.18
When booting using the r8a7740/armadillo800eva using dt-reference:
* Use CCF to initialise clocks via DT
* Initialise timers via DT
Diffstat (limited to 'arch/arm/mach-shmobile')
-rw-r--r-- | arch/arm/mach-shmobile/board-armadillo800eva-reference.c | 3 | ||||
-rw-r--r-- | arch/arm/mach-shmobile/r8a7740.h | 1 | ||||
-rw-r--r-- | arch/arm/mach-shmobile/setup-r8a7740.c | 18 |
3 files changed, 4 insertions, 18 deletions
diff --git a/arch/arm/mach-shmobile/board-armadillo800eva-reference.c b/arch/arm/mach-shmobile/board-armadillo800eva-reference.c index 84bc6cb6d5aa..f06e1f336dfb 100644 --- a/arch/arm/mach-shmobile/board-armadillo800eva-reference.c +++ b/arch/arm/mach-shmobile/board-armadillo800eva-reference.c | |||
@@ -24,6 +24,7 @@ | |||
24 | #include <linux/kernel.h> | 24 | #include <linux/kernel.h> |
25 | #include <linux/gpio.h> | 25 | #include <linux/gpio.h> |
26 | #include <linux/io.h> | 26 | #include <linux/io.h> |
27 | #include <linux/of_platform.h> | ||
27 | 28 | ||
28 | #include <asm/mach/arch.h> | 29 | #include <asm/mach/arch.h> |
29 | #include <asm/hardware/cache-l2x0.h> | 30 | #include <asm/hardware/cache-l2x0.h> |
@@ -170,7 +171,7 @@ static void __init eva_init(void) | |||
170 | l2x0_init(IOMEM(0xf0002000), 0x00400000, 0xc20f0fff); | 171 | l2x0_init(IOMEM(0xf0002000), 0x00400000, 0xc20f0fff); |
171 | #endif | 172 | #endif |
172 | 173 | ||
173 | r8a7740_add_standard_devices_dt(); | 174 | of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); |
174 | 175 | ||
175 | r8a7740_pm_init(); | 176 | r8a7740_pm_init(); |
176 | } | 177 | } |
diff --git a/arch/arm/mach-shmobile/r8a7740.h b/arch/arm/mach-shmobile/r8a7740.h index 1d1a5fd78b6b..3352fb8650ba 100644 --- a/arch/arm/mach-shmobile/r8a7740.h +++ b/arch/arm/mach-shmobile/r8a7740.h | |||
@@ -49,7 +49,6 @@ extern void r8a7740_init_irq_of(void); | |||
49 | extern void r8a7740_map_io(void); | 49 | extern void r8a7740_map_io(void); |
50 | extern void r8a7740_add_early_devices(void); | 50 | extern void r8a7740_add_early_devices(void); |
51 | extern void r8a7740_add_standard_devices(void); | 51 | extern void r8a7740_add_standard_devices(void); |
52 | extern void r8a7740_add_standard_devices_dt(void); | ||
53 | extern void r8a7740_clock_init(u8 md_ck); | 52 | extern void r8a7740_clock_init(u8 md_ck); |
54 | extern void r8a7740_pinmux_init(void); | 53 | extern void r8a7740_pinmux_init(void); |
55 | extern void r8a7740_pm_init(void); | 54 | extern void r8a7740_pm_init(void); |
diff --git a/arch/arm/mach-shmobile/setup-r8a7740.c b/arch/arm/mach-shmobile/setup-r8a7740.c index 3d5eacaba3e6..8fe270d874c2 100644 --- a/arch/arm/mach-shmobile/setup-r8a7740.c +++ b/arch/arm/mach-shmobile/setup-r8a7740.c | |||
@@ -311,10 +311,6 @@ static struct platform_device ipmmu_device = { | |||
311 | .num_resources = ARRAY_SIZE(ipmmu_resources), | 311 | .num_resources = ARRAY_SIZE(ipmmu_resources), |
312 | }; | 312 | }; |
313 | 313 | ||
314 | static struct platform_device *r8a7740_devices_dt[] __initdata = { | ||
315 | &cmt1_device, | ||
316 | }; | ||
317 | |||
318 | static struct platform_device *r8a7740_early_devices[] __initdata = { | 314 | static struct platform_device *r8a7740_early_devices[] __initdata = { |
319 | &scif0_device, | 315 | &scif0_device, |
320 | &scif1_device, | 316 | &scif1_device, |
@@ -331,6 +327,7 @@ static struct platform_device *r8a7740_early_devices[] __initdata = { | |||
331 | &irqpin3_device, | 327 | &irqpin3_device, |
332 | &tmu0_device, | 328 | &tmu0_device, |
333 | &ipmmu_device, | 329 | &ipmmu_device, |
330 | &cmt1_device, | ||
334 | }; | 331 | }; |
335 | 332 | ||
336 | /* DMA */ | 333 | /* DMA */ |
@@ -756,8 +753,6 @@ void __init r8a7740_add_standard_devices(void) | |||
756 | /* add devices */ | 753 | /* add devices */ |
757 | platform_add_devices(r8a7740_early_devices, | 754 | platform_add_devices(r8a7740_early_devices, |
758 | ARRAY_SIZE(r8a7740_early_devices)); | 755 | ARRAY_SIZE(r8a7740_early_devices)); |
759 | platform_add_devices(r8a7740_devices_dt, | ||
760 | ARRAY_SIZE(r8a7740_devices_dt)); | ||
761 | platform_add_devices(r8a7740_late_devices, | 756 | platform_add_devices(r8a7740_late_devices, |
762 | ARRAY_SIZE(r8a7740_late_devices)); | 757 | ARRAY_SIZE(r8a7740_late_devices)); |
763 | 758 | ||
@@ -779,8 +774,6 @@ void __init r8a7740_add_early_devices(void) | |||
779 | { | 774 | { |
780 | early_platform_add_devices(r8a7740_early_devices, | 775 | early_platform_add_devices(r8a7740_early_devices, |
781 | ARRAY_SIZE(r8a7740_early_devices)); | 776 | ARRAY_SIZE(r8a7740_early_devices)); |
782 | early_platform_add_devices(r8a7740_devices_dt, | ||
783 | ARRAY_SIZE(r8a7740_devices_dt)); | ||
784 | 777 | ||
785 | /* setup early console here as well */ | 778 | /* setup early console here as well */ |
786 | shmobile_setup_console(); | 779 | shmobile_setup_console(); |
@@ -788,13 +781,6 @@ void __init r8a7740_add_early_devices(void) | |||
788 | 781 | ||
789 | #ifdef CONFIG_USE_OF | 782 | #ifdef CONFIG_USE_OF |
790 | 783 | ||
791 | void __init r8a7740_add_standard_devices_dt(void) | ||
792 | { | ||
793 | platform_add_devices(r8a7740_devices_dt, | ||
794 | ARRAY_SIZE(r8a7740_devices_dt)); | ||
795 | of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); | ||
796 | } | ||
797 | |||
798 | void __init r8a7740_init_irq_of(void) | 784 | void __init r8a7740_init_irq_of(void) |
799 | { | 785 | { |
800 | void __iomem *intc_prio_base = ioremap_nocache(0xe6900010, 0x10); | 786 | void __iomem *intc_prio_base = ioremap_nocache(0xe6900010, 0x10); |
@@ -828,7 +814,7 @@ void __init r8a7740_init_irq_of(void) | |||
828 | static void __init r8a7740_generic_init(void) | 814 | static void __init r8a7740_generic_init(void) |
829 | { | 815 | { |
830 | r8a7740_clock_init(0); | 816 | r8a7740_clock_init(0); |
831 | r8a7740_add_standard_devices_dt(); | 817 | of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); |
832 | } | 818 | } |
833 | 819 | ||
834 | static const char *r8a7740_boards_compat_dt[] __initdata = { | 820 | static const char *r8a7740_boards_compat_dt[] __initdata = { |