diff mbox

SoCFPGA with CONFIG_THUMB2_KERNEL boot error

Message ID CAKv+Gu9rzxtw2i1QJAU0C-y4Lmh6KDWH0p+TYNHsndr-6c11zw@mail.gmail.com
State New
Headers show

Commit Message

Ard Biesheuvel April 20, 2016, 9:43 a.m. UTC
(replying to self)

On 20 April 2016 at 11:39, Ard Biesheuvel <ard.biesheuvel@linaro.org> wrote:
> (+ Arnd)

>

> On 20 April 2016 at 11:25, Dave Martin <Dave.Martin@arm.com> 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?


                flush_cache_all();

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
diff mbox

Patch

diff --git a/arch/arm/mach-socfpga/platsmp.c b/arch/arm/mach-socfpga/platsmp.c
index 07945748b571..b56c81340a85 100644
--- a/arch/arm/mach-socfpga/platsmp.c
+++ b/arch/arm/mach-socfpga/platsmp.c
@@ -40,7 +40,7 @@  static int socfpga_boot_secondary(unsigned int cpu,
struct task_struct *idle)

                memcpy(phys_to_virt(0), &secondary_trampoline, trampoline_size);

-               writel(virt_to_phys(secondary_startup),
+               writel(virt_to_phys(secondary_startup_arm),
                       sys_manager_base_addr + (socfpga_cpu1start_addr
& 0x000000ff));