[PATCH 01/16] ARM: b.L: secondary kernel entry code
santosh.shilimkar at ti.com
Fri Jan 11 13:30:08 EST 2013
On Friday 11 January 2013 11:40 PM, Nicolas Pitre wrote:
> On Fri, 11 Jan 2013, Santosh Shilimkar wrote:
>> On Thursday 10 January 2013 05:50 AM, Nicolas Pitre wrote:
>>> + THUMB( adr r12, BSYM(1f) )
>>> + THUMB( bx r12 )
>>> + THUMB( .thumb )
>>> + mrc p15, 0, r0, c0, c0, 5
>>> + ubfx r9, r0, #0, #4 @ r9 = cpu
>>> + ubfx r10, r0, #8, #4 @ r10 = cluster
>>> + mov r3, #BL_CPUS_PER_CLUSTER
>>> + mla r4, r3, r10, r9 @ r4 = canonical CPU index
>>> + cmp r4, #(BL_CPUS_PER_CLUSTER * BL_NR_CLUSTERS)
>>> + blo 2f
>>> + /* We didn't expect this CPU. Try to make it quiet. */
>>> +1: wfi
>>> + wfe
>> Why do you need a wfe followed by wif ?
>> Just curious.
> If the WFI doesn't work because an interrupt is pending then the WFE
> might work better. But as I mentioned before, this is not intended to
> be used for other purposes than "we're really screwed so at least let's
> try to cheaply quieten this CPU" case.
Thanks for clarification.
More information about the linux-arm-kernel