[RFC v2 PATCH 11/23] ARM: sleep: allow it to be build for R-class
Vladimir Murzin
vladimir.murzin at arm.com
Wed Nov 30 01:54:21 PST 2016
On 29/11/16 17:11, Russell King - ARM Linux wrote:
> On Tue, Nov 29, 2016 at 12:39:53PM +0000, Vladimir Murzin wrote:
>> Dependency on MMU is quite strict and prevent R-class from being built -
>> relax this condition and guard against M-class only
>
> I thought I'd already commented on some of this change, but it seems
> not.
>
>> diff --git a/arch/arm/kernel/sleep.S b/arch/arm/kernel/sleep.S
>> index 0f6c100..0e7fddf 100644
>> --- a/arch/arm/kernel/sleep.S
>> +++ b/arch/arm/kernel/sleep.S
>> @@ -119,14 +119,12 @@ ENDPROC(cpu_resume_after_mmu)
>> .text
>> .align
>>
>> -#ifdef CONFIG_MMU
>> .arm
>> ENTRY(cpu_resume_arm)
>> THUMB( badr r9, 1f ) @ Kernel is entered in ARM.
>> THUMB( bx r9 ) @ If this is a Thumb-2 kernel,
>> THUMB( .thumb ) @ switch to Thumb now.
>> THUMB(1: )
>> -#endif
>>
>> ENTRY(cpu_resume)
>> ARM_BE8(setend be) @ ensure we are in BE mode
>> @@ -160,9 +158,7 @@ THUMB( mov sp, r2 )
>> THUMB( bx r3 )
>> ENDPROC(cpu_resume)
>>
>> -#ifdef CONFIG_MMU
>> ENDPROC(cpu_resume_arm)
>> -#endif
>
> These ifdefs were introduced to fix EFM32. The commit description needs
> to state why it's safe to remove them now (presumably because of the
> dependency on !CPU_V7M). However, it also needs to explain why it's
> not going to cause a regression for EFM32 - EFM32 _was_ capable of
> building this code.
>
After looking at 2678bb9f ("ARM: fix EFM32 build breakage caused by
cpu_resume_arm") I think the right fix should be based on CONFIG_CPU_THUMBONLY
rather than disallowing this code to be build for CPU_V7M.
Indeed, I've just tried that it it works fine, so I'll update the patch to
reflect that.
Thanks for your valuable comment!
Cheers
Vladimir
More information about the linux-arm-kernel
mailing list