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

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

ARM: shmobile: Add SMP boot function and argument



Add code for mach-shmobile to allow specifying boot function
and argument. Will initially be used for SMP together with SCU
but may in the future also be used for deep sleep resume. This
patch removes one inline virtual to physical address conversion.

Signed-off-by: default avatarMagnus Damm <damm@opensource.se>
Signed-off-by: default avatarSimon Horman <horms+renesas@verge.net.au>
parent e26f4067
Loading
Loading
Loading
Loading
+10 −3
Original line number Original line Diff line number Diff line
@@ -27,7 +27,14 @@ ENDPROC(shmobile_invalidate_start)
 * We need _long_ jump to the physical address.
 * We need _long_ jump to the physical address.
 */
 */
	.align  12
	.align  12
ENTRY(shmobile_secondary_vector)
ENTRY(shmobile_boot_vector)
	ldr     r0, 2f
	ldr     pc, 1f
	ldr     pc, 1f
1:	.long   shmobile_invalidate_start - PAGE_OFFSET + PLAT_PHYS_OFFSET
ENDPROC(shmobile_boot_vector)
ENDPROC(shmobile_secondary_vector)

	.globl	shmobile_boot_fn
shmobile_boot_fn:
1:	.space	4
	.globl	shmobile_boot_arg
shmobile_boot_arg:
2:	.space	4
+3 −1
Original line number Original line Diff line number Diff line
@@ -7,7 +7,9 @@ extern void shmobile_setup_delay(unsigned int max_cpu_core_mhz,
			 unsigned int mult, unsigned int div);
			 unsigned int mult, unsigned int div);
struct twd_local_timer;
struct twd_local_timer;
extern void shmobile_setup_console(void);
extern void shmobile_setup_console(void);
extern void shmobile_secondary_vector(void);
extern void shmobile_boot_vector(void);
extern unsigned long shmobile_boot_fn;
extern unsigned long shmobile_boot_arg;
extern void shmobile_secondary_vector_scu(void);
extern void shmobile_secondary_vector_scu(void);
struct clk;
struct clk;
extern int shmobile_clk_init(void);
extern int shmobile_clk_init(void);