> This handler can be activated on multi-processor systems to boot only
> the master CPU. All slave CPUs are halted by executing the WAIT
> instruction. This is also useful to reduce the power consumption at
> boot time.
> 
> Signed-off-by: Daniel Schwierzeck <daniel.schwierz...@googlemail.com>
> ---
>  arch/mips/cpu/mips32/start.S |   16 ++++++++++++++++
>  1 files changed, 16 insertions(+), 0 deletions(-)
> 
> diff --git a/arch/mips/cpu/mips32/start.S b/arch/mips/cpu/mips32/start.S
> index 9c1b2f7..b6cb4be 100644
> --- a/arch/mips/cpu/mips32/start.S
> +++ b/arch/mips/cpu/mips32/start.S
> @@ -224,6 +224,14 @@ reset:
> 
>       setup_c0_status_reset
> 
> +     /* Set all slave CPUs in sleep mode */
> +#ifdef CONFIG_SYS_MPS_SLAVE_CPU_SLEEP
> +     mfc0    k0, CP0_EBASE
> +     and     k0, EBASEF_CPUNUM
> +     bne     k0, zero, slave_cpu_sleep
> +      nop
> +#endif
> +
>       /* Init Timer */
>       mtc0    zero, CP0_COUNT
>       mtc0    zero, CP0_COMPARE
> @@ -383,3 +391,11 @@ romReserved:
> 
>  romExcHandle:
>       b       romExcHandle
> +
> +     /* Additional handlers */
> +#ifdef CONFIG_SYS_MPS_SLAVE_CPU_SLEEP
> +slave_cpu_sleep:
> +     wait
> +     b       slave_cpu_sleep
> +      nop
> +#endif

Can't you stall the CPU instead of letting it run in an empty loop? If not:

Acked-by: Marek Vasut <marek.va...@gmail.com>
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to