[PATCH 11/14] ARM: shmobile: Rename to r8a7779_init_early(), use smp_set_ops()
Magnus Damm
magnus.damm at gmail.com
Fri Aug 9 05:49:48 EDT 2013
From: Magnus Damm <damm at opensource.se>
Rename r8a7779_init_delay() into r8a7779_init_early()
to make the function name show that more than just
delay setup will happen.
Also, instead of specifying the smp ops in DT_MACHINE
convert the r8a7779 SoC code to install the smp ops
from r8a7779_init_early().
The r8a7779_add_early_devices() function also gets
updated to call r8a7779_init_early(). This way the
smp ops will be installed in both DT and C cases.
Signed-off-by: Magnus Damm <damm at opensource.se>
---
arch/arm/mach-shmobile/board-marzen-reference.c | 3 +--
arch/arm/mach-shmobile/board-marzen.c | 1 -
arch/arm/mach-shmobile/include/mach/r8a7779.h | 2 +-
arch/arm/mach-shmobile/setup-r8a7779.c | 17 +++++++++++------
4 files changed, 13 insertions(+), 10 deletions(-)
--- 0012/arch/arm/mach-shmobile/board-marzen-reference.c
+++ work/arch/arm/mach-shmobile/board-marzen-reference.c 2013-08-08 16:25:43.000000000 +0900
@@ -41,9 +41,8 @@ static const char *marzen_boards_compat_
};
DT_MACHINE_START(MARZEN, "marzen")
- .smp = smp_ops(r8a7779_smp_ops),
.map_io = r8a7779_map_io,
- .init_early = r8a7779_init_delay,
+ .init_early = r8a7779_init_early,
.init_irq = r8a7779_init_irq_dt,
.init_machine = marzen_init,
.dt_compat = marzen_boards_compat_dt,
--- 0001/arch/arm/mach-shmobile/board-marzen.c
+++ work/arch/arm/mach-shmobile/board-marzen.c 2013-08-08 16:25:53.000000000 +0900
@@ -263,7 +263,6 @@ static const char *marzen_boards_compat_
};
DT_MACHINE_START(MARZEN, "marzen")
- .smp = smp_ops(r8a7779_smp_ops),
.map_io = r8a7779_map_io,
.init_early = r8a7779_add_early_devices,
.init_irq = r8a7779_init_irq_dt,
--- 0004/arch/arm/mach-shmobile/include/mach/r8a7779.h
+++ work/arch/arm/mach-shmobile/include/mach/r8a7779.h 2013-08-08 16:26:58.000000000 +0900
@@ -23,7 +23,7 @@ static inline struct r8a7779_pm_ch *to_r
return &container_of(d, struct r8a7779_pm_domain, genpd)->ch;
}
-extern void r8a7779_init_delay(void);
+extern void r8a7779_init_early(void);
extern void r8a7779_init_irq_extpin(int irlm);
extern void r8a7779_init_irq_dt(void);
extern void r8a7779_map_io(void);
--- 0012/arch/arm/mach-shmobile/setup-r8a7779.c
+++ work/arch/arm/mach-shmobile/setup-r8a7779.c 2013-08-08 16:29:06.000000000 +0900
@@ -663,8 +663,18 @@ void __init r8a7779_earlytimer_init(void
r8a7779_register_twd();
}
+void __init r8a7779_init_early(void)
+{
+ shmobile_setup_delay(1000, 2, 4); /* Cortex-A9 @ 1000MHz */
+#ifdef CONFIG_SMP
+ smp_set_ops(&r8a7779_smp_ops);
+#endif
+}
+
void __init r8a7779_add_early_devices(void)
{
+ r8a7779_init_early();
+
early_platform_add_devices(r8a7779_devices_dt,
ARRAY_SIZE(r8a7779_devices_dt));
@@ -726,11 +736,6 @@ void __init r8a7779_init_irq_dt(void)
__raw_writel(0x003fee3f, INT2SMSKCR4);
}
-void __init r8a7779_init_delay(void)
-{
- shmobile_setup_delay(1000, 2, 4); /* Cortex-A9 @ 1000MHz */
-}
-
static const char *r8a7779_compat_dt[] __initdata = {
"renesas,r8a7779",
NULL,
@@ -738,7 +743,7 @@ static const char *r8a7779_compat_dt[] _
DT_MACHINE_START(R8A7779_DT, "Generic R8A7779 (Flattened Device Tree)")
.map_io = r8a7779_map_io,
- .init_early = r8a7779_init_delay,
+ .init_early = r8a7779_init_early,
.init_irq = r8a7779_init_irq_dt,
.init_late = r8a7779_init_late,
.dt_compat = r8a7779_compat_dt,
More information about the linux-arm-kernel
mailing list