aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-shmobile
diff options
context:
space:
mode:
authorSimon Horman <horms+renesas@verge.net.au>2014-09-08 22:50:00 -0400
committerSimon Horman <horms+renesas@verge.net.au>2014-09-08 22:50:00 -0400
commitdcc683aba83cd8db964a9a1d4582d4829d6efcb2 (patch)
tree98ebfb852f62b125ab69b9aff477bd1f0f04d89b /arch/arm/mach-shmobile
parent9dddfcfacaadb5491b62233b893b510fa00da4e0 (diff)
parent433306747791845677ba662435a9bbbafaa21df3 (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.c3
-rw-r--r--arch/arm/mach-shmobile/r8a7740.h1
-rw-r--r--arch/arm/mach-shmobile/setup-r8a7740.c18
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);
49extern void r8a7740_map_io(void); 49extern void r8a7740_map_io(void);
50extern void r8a7740_add_early_devices(void); 50extern void r8a7740_add_early_devices(void);
51extern void r8a7740_add_standard_devices(void); 51extern void r8a7740_add_standard_devices(void);
52extern void r8a7740_add_standard_devices_dt(void);
53extern void r8a7740_clock_init(u8 md_ck); 52extern void r8a7740_clock_init(u8 md_ck);
54extern void r8a7740_pinmux_init(void); 53extern void r8a7740_pinmux_init(void);
55extern void r8a7740_pm_init(void); 54extern 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
314static struct platform_device *r8a7740_devices_dt[] __initdata = {
315 &cmt1_device,
316};
317
318static struct platform_device *r8a7740_early_devices[] __initdata = { 314static 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
791void __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
798void __init r8a7740_init_irq_of(void) 784void __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)
828static void __init r8a7740_generic_init(void) 814static 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
834static const char *r8a7740_boards_compat_dt[] __initdata = { 820static const char *r8a7740_boards_compat_dt[] __initdata = {