Subject: [PATCH 0/2] Fix secondary CPU boot for thumb2 kernels

From: [email-masked] (Stephen Boyd)
Date: Thu, 29 Jan 2015 13:29:53 -0800

On 01/29/15 07:46, Catalin Marinas wrote:
> On Wed, Jan 28, 2015 at 08:22:41PM +0000, Stephen Boyd wrote:
>> On 01/21/15 11:48, Stephen Boyd wrote:
>>> Currently I can't boot up secondary CPUs on qcom platforms when I
>>> compile the kernel for THUMB2 mode. This is because we always enter
>>> the kernel in ARM mode regardless of what mode the kernel is compiled
>>> for. This patchset adds a small wrapper to secondary_startup() called
>>> secondary_startup_arm() that allows us to switch into THUMB2 mode if
>>> we need to. If the kernel is compiled for ARM mode it shouldn't have
>>> any effect.
>>>
>>> Stephen Boyd (2):
>>>   ARM: Add a secondary_startup that assumes ARM mode
>>>   ARM: qcom: Use secondary_startup_arm()
>>>
>>>  arch/arm/kernel/head.S       | 7 +++++++
>>>  arch/arm/mach-qcom/platsmp.c | 4 ++--
>>>  2 files changed, 9 insertions(+), 2 deletions(-)
>> Any comments here? Perhaps I can send this through the patch tracker?
> FWIW, they look fine to me.
>
> Acked-by: Catalin Marinas <[email-masked]>
>
> I guess the reason it works fine on other platforms is because the
> secondary start address we pass to firmware has bit 0 set and this
> causes the jump to the kernel in Thumb-2 mode.
>

Thanks. I tried forcing that and it still didn't work so I guess the
firmware isn't using interworking branches.

-- 
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project