From mboxrd@z Thu Jan 1 00:00:00 1970 From: s.hauer@pengutronix.de (Sascha Hauer) Date: Wed, 20 Apr 2016 13:00:21 +0200 Subject: SoCFPGA with CONFIG_THUMB2_KERNEL boot error In-Reply-To: References: <20160419140220.GA9503@pengutronix.de> <20160420092516.GA21732@e103592.cambridge.arm.com> <20160420095541.GG31470@pengutronix.de> Message-ID: <20160420110021.GH31470@pengutronix.de> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org On Wed, Apr 20, 2016 at 12:26:22PM +0200, Ard Biesheuvel wrote: > On 20 April 2016 at 11:55, Sascha Hauer wrote: > > On Wed, Apr 20, 2016 at 11:43:30AM +0200, Ard Biesheuvel wrote: > >> (replying to self) > >> > >> On 20 April 2016 at 11:39, Ard Biesheuvel wrote: > >> > (+ Arnd) > >> > > >> > On 20 April 2016 at 11:25, Dave Martin wrote: > >> >> On Tue, Apr 19, 2016 at 04:02:20PM +0200, Steffen Trumtrar wrote: > >> >>> Hi! > >> >>> > >> >>> According to kernelci.org (and validating on my own hardware), the current > >> >>> socfpga mainline kernel has an issue with CONFIG_THUMB2_KERNEL enabled. > >> >>> > >> >>> https://storage.kernelci.org/mainline/v4.6-rc4-11-g12566cc35d0e/arm-multi_v7_defconfig/lab-khilman/boot-socfpga_cyclone5_de0_sockit.html > >> >>> > >> >>> vs > >> >>> > >> >>> https://storage.kernelci.org/mainline/v4.6-rc4-11-g12566cc35d0e/arm-multi_v7_defconfig+CONFIG_THUMB2_KERNEL=y/lab-khilman/boot-socfpga_cyclone5_de0_sockit.html > >> >>> > >> >>> Both boot successfully, but notice that the board fails to bring up CPU1 if > >> >>> thumb2 support is enabled. > >> >>> > >> >>> Any ideas why this might be happening? > >> >> > >> > >> Actually, this looks like a problem with the secondary entry point to > >> me. Could you try this? > > > > Been there, done that. Unfortunately this does not solve the problem. > > > > How about if you put this on top? > > diff --git a/arch/arm/mach-socfpga/headsmp.S b/arch/arm/mach-socfpga/headsmp.S > index 5d94b7a2fb10..c160fa3007e9 100644 > --- a/arch/arm/mach-socfpga/headsmp.S > +++ b/arch/arm/mach-socfpga/headsmp.S > @@ -13,6 +13,7 @@ > #include > > .arch armv7-a > + .arm \o/ This did the trick, it now boots with two cpus up. Thanks for looking into this issue. I'll create a patch for this. Sascha -- Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |