On Sat, 2013-11-09 at 14:43 +0800, Kevin Hao wrote:
> On Fri, Nov 08, 2013 at 03:16:12PM -0600, Scott Wood wrote:
> > OK...  Why are you splitting out smp_85xx_basic_setup()?
> 
> In the current implementation of smp_85xx_setup_cpu(), we only invoke
> the function mpic_setup_this_cpu() when the smp_85xx_ops.probe is set 
> to smp_mpic_probe(). So if we set smp_85xx_ops.probe to NULL when doorbell
> is available, we must make sure that the mpic_setup_this_cpu() is also invoked
> when there does have a mpic. The smp_85xx_basic_setup() is for the board which
> has no mpic.
> 
>   static void smp_85xx_setup_cpu(int cpu_nr)
>   {
>       if (smp_85xx_ops.probe == smp_mpic_probe)
>               mpic_setup_this_cpu();
>   
>       if (cpu_has_feature(CPU_FTR_DBELL))
>               doorbell_setup_this_cpu();
>   }
> 
> >  Where do you
> > call it other than from smp_85xx_setup_cpu()?
> 
> We would set the .setup_cpu() to smp_85xx_basic_setup() if it is a
> non-mpic board. The following is quoted form the patch:
>       np = of_find_node_by_type(NULL, "open-pic");
>       if (np) {
>               smp_85xx_ops.probe = smp_mpic_probe;
>   +           smp_85xx_ops.setup_cpu = smp_85xx_setup_cpu;
>               smp_85xx_ops.message_pass = smp_mpic_message_pass;
>   -   }
>   +   } else
>   +           smp_85xx_ops.setup_cpu = smp_85xx_basic_setup;

OK, somehow I missed the change to .setup_cpu before. :-P

-Scott



_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev

Reply via email to