On Tue, Dec 18, 2018 at 05:05:18PM +0000, Patrice CHOTARD wrote: > Hi Russell > > On 12/18/18 4:52 PM, Russell King - ARM Linux wrote: > > On Tue, Dec 18, 2018 at 03:48:13PM +0100, patrice.chot...@st.com wrote: > >> From: Patrice Chotard <patrice.chot...@st.com> > >> > >> Due to pen_release and boot_lock removal, secondary CPU's bringup > >> was broken. Restore CPU's bringup by reworking properly > >> .smp_prepare_cpus and .smp_boot_secondary STi callbacks. > > > > Sorry, maybe I don't understand your commit message, but you seem to be > > saying that removal of the pen_release and boot_lock broke STi's secondary > > CPU bring up? Please clarify, and explain how that happened. > > Correct, CPU1 failed to come online. > > It seems that writing secondary_startup address at cpu-release-addr in > .smp_prepare_cpus callback was too early. > > Doing it in .smp_boot_secondary callback, insures that secondary_data > struct is populated in __cpu_up() (stack, pgdir and swapper_pg_dir fields).
Ah, you're saying that it causes the CPU to jump to secondary_startup while the boot CPU is in smp_prepare_cpus()? What triggers the CPU to jump to the address written to cpu_strt_ptr? What you're saying seems to suggest that it's the write to that address, rather than the IPI that's sent in sti_boot_secondary(). If the IPI in sti_boot_secondary() isn't doing anything, it ought to be removed. It'd also be a good idea to document what's going on as comments in the code for future maintanence. > If you are ok, i will pick up your patch [1] and this one to prepare a > STi pull-request. Yes, although I'll have to delay patch 9 as a result. -- RMK's Patch system: http://www.armlinux.org.uk/developer/patches/ FTTC broadband for 0.8mile line in suburbia: sync at 12.1Mbps down 622kbps up According to speedtest.net: 11.9Mbps down 500kbps up