[U-Boot] [PATCH] arm64: optimize smp_kick_all_cpus

gic_kick_secondary_cpus can directly return to the caller of smp_kick_all_cpus. We do not have to use x29 register here.
Signed-off-by: Masahiro Yamada yamada.masahiro@socionext.com ---
arch/arm/cpu/armv8/start.S | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/arch/arm/cpu/armv8/start.S b/arch/arm/cpu/armv8/start.S index c1a2f45..670e323 100644 --- a/arch/arm/cpu/armv8/start.S +++ b/arch/arm/cpu/armv8/start.S @@ -258,12 +258,10 @@ ENDPROC(lowlevel_init)
WEAK(smp_kick_all_cpus) /* Kick secondary cpus up by SGI 0 interrupt */ - mov x29, lr /* Save LR */ #if defined(CONFIG_GICV2) || defined(CONFIG_GICV3) ldr x0, =GICD_BASE - bl gic_kick_secondary_cpus + b gic_kick_secondary_cpus #endif - mov lr, x29 /* Restore LR */ ret ENDPROC(smp_kick_all_cpus)

On 06/17/2016 02:32 AM, Masahiro Yamada wrote:
gic_kick_secondary_cpus can directly return to the caller of smp_kick_all_cpus. We do not have to use x29 register here.
Signed-off-by: Masahiro Yamada yamada.masahiro@socionext.com
arch/arm/cpu/armv8/start.S | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/arch/arm/cpu/armv8/start.S b/arch/arm/cpu/armv8/start.S index c1a2f45..670e323 100644 --- a/arch/arm/cpu/armv8/start.S +++ b/arch/arm/cpu/armv8/start.S @@ -258,12 +258,10 @@ ENDPROC(lowlevel_init)
WEAK(smp_kick_all_cpus) /* Kick secondary cpus up by SGI 0 interrupt */
- mov x29, lr /* Save LR */ #if defined(CONFIG_GICV2) || defined(CONFIG_GICV3) ldr x0, =GICD_BASE
- bl gic_kick_secondary_cpus
- b gic_kick_secondary_cpus #endif
- mov lr, x29 /* Restore LR */ ret ENDPROC(smp_kick_all_cpus)
Reviewed-by: York Sun york.sun@nxp.com

On Fri, Jun 17, 2016 at 06:32:47PM +0900, Masahiro Yamada wrote:
gic_kick_secondary_cpus can directly return to the caller of smp_kick_all_cpus. We do not have to use x29 register here.
Signed-off-by: Masahiro Yamada yamada.masahiro@socionext.com Reviewed-by: York Sun york.sun@nxp.com
Applied to u-boot/master, thanks!
participants (3)
-
Masahiro Yamada
-
Tom Rini
-
york sun