Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ad09cb83 authored by Magnus Damm's avatar Magnus Damm Committed by Simon Horman
Browse files

ARM: shmobile: Add r8a7790 SMP support using APMU code



Add r8a7790 SMP support using the shared APMU code. To enable
SMP the r8a7790 specific DTS needs to be updated to include
CPU cores, and this is happening in a separate patch.

Signed-off-by: default avatarMagnus Damm <damm@opensource.se>
Signed-off-by: default avatarSimon Horman <horms+renesas@verge.net.au>
parent a112de8c
Loading
Loading
Loading
Loading
+1 −0
Original line number Original line Diff line number Diff line
@@ -34,6 +34,7 @@ endif
smp-y				:= platsmp.o headsmp.o
smp-y				:= platsmp.o headsmp.o
smp-$(CONFIG_ARCH_SH73A0)	+= smp-sh73a0.o headsmp-scu.o platsmp-scu.o
smp-$(CONFIG_ARCH_SH73A0)	+= smp-sh73a0.o headsmp-scu.o platsmp-scu.o
smp-$(CONFIG_ARCH_R8A7779)	+= smp-r8a7779.o headsmp-scu.o platsmp-scu.o
smp-$(CONFIG_ARCH_R8A7779)	+= smp-r8a7779.o headsmp-scu.o platsmp-scu.o
smp-$(CONFIG_ARCH_R8A7790)	+= smp-r8a7790.o platsmp-apmu.o
smp-$(CONFIG_ARCH_EMEV2)	+= smp-emev2.o headsmp-scu.o platsmp-scu.o
smp-$(CONFIG_ARCH_EMEV2)	+= smp-emev2.o headsmp-scu.o platsmp-scu.o


# IRQ objects
# IRQ objects
+1 −0
Original line number Original line Diff line number Diff line
@@ -38,6 +38,7 @@ static const char *lager_boards_compat_dt[] __initdata = {
};
};


DT_MACHINE_START(LAGER_DT, "lager")
DT_MACHINE_START(LAGER_DT, "lager")
	.smp		= smp_ops(r8a7790_smp_ops),
	.init_early	= r8a7790_init_early,
	.init_early	= r8a7790_init_early,
	.init_machine	= lager_add_standard_devices,
	.init_machine	= lager_add_standard_devices,
	.init_time	= r8a7790_timer_init,
	.init_time	= r8a7790_timer_init,
+1 −0
Original line number Original line Diff line number Diff line
@@ -161,6 +161,7 @@ static const char *lager_boards_compat_dt[] __initdata = {
};
};


DT_MACHINE_START(LAGER_DT, "lager")
DT_MACHINE_START(LAGER_DT, "lager")
	.smp		= smp_ops(r8a7790_smp_ops),
	.init_early	= r8a7790_init_early,
	.init_early	= r8a7790_init_early,
	.init_time	= r8a7790_timer_init,
	.init_time	= r8a7790_timer_init,
	.init_machine	= lager_add_standard_devices,
	.init_machine	= lager_add_standard_devices,
+1 −0
Original line number Original line Diff line number Diff line
@@ -7,6 +7,7 @@ void r8a7790_clock_init(void);
void r8a7790_pinmux_init(void);
void r8a7790_pinmux_init(void);
void r8a7790_init_early(void);
void r8a7790_init_early(void);
void r8a7790_timer_init(void);
void r8a7790_timer_init(void);
extern struct smp_operations r8a7790_smp_ops;


#define MD(nr) BIT(nr)
#define MD(nr) BIT(nr)
u32 r8a7790_read_mode_pins(void);
u32 r8a7790_read_mode_pins(void);
+1 −0
Original line number Original line Diff line number Diff line
@@ -283,6 +283,7 @@ static const char * const r8a7790_boards_compat_dt[] __initconst = {
};
};


DT_MACHINE_START(R8A7790_DT, "Generic R8A7790 (Flattened Device Tree)")
DT_MACHINE_START(R8A7790_DT, "Generic R8A7790 (Flattened Device Tree)")
	.smp		= smp_ops(r8a7790_smp_ops),
	.init_early	= r8a7790_init_early,
	.init_early	= r8a7790_init_early,
	.init_time	= r8a7790_timer_init,
	.init_time	= r8a7790_timer_init,
	.dt_compat	= r8a7790_boards_compat_dt,
	.dt_compat	= r8a7790_boards_compat_dt,
Loading