Re: [PATCH] socfpga_a10: reset CPU1 in socfpga_cpu_kill()

From: Dinh Nguyen
Date: Fri May 12 2017 - 10:26:20 EST




On 05/10/2017 12:13 AM, yanjiang.jin@xxxxxxxxxxxxx wrote:
> From: Yanjiang Jin <yanjiang.jin@xxxxxxxxxxxxx>
>
> Kexec's second kernel would hang if CPU1 isn't reset.
>

Can you please be a bit more descriptive on the commit log? Is it
because when kexec starts, the SMP on the kexec's kernel try to run on CPU1?


> Signed-off-by: Yanjiang Jin <yanjiang.jin@xxxxxxxxxxxxx>
> ---
> arch/arm/mach-socfpga/platsmp.c | 12 +++++++++++-
> 1 file changed, 11 insertions(+), 1 deletion(-)
>
> diff --git a/arch/arm/mach-socfpga/platsmp.c b/arch/arm/mach-socfpga/platsmp.c
> index 0ee7677..db3940e 100644
> --- a/arch/arm/mach-socfpga/platsmp.c
> +++ b/arch/arm/mach-socfpga/platsmp.c
> @@ -117,6 +117,16 @@ static int socfpga_cpu_kill(unsigned int cpu)
> {
> return 1;
> }
> +
> +static int socfpga_a10_cpu_kill(unsigned int cpu)
> +{
> + /* This will put CPU #1 into reset. */
> + if (socfpga_cpu1start_addr)

Do you need to check for socfpga_cpu1start_addr?

Dinh