[PATCH v2] ARM: map ATAGs when not in first 1MB of RAM
Rob Herring
robherring2 at gmail.com
Fri Jan 28 10:10:41 EST 2011
Russell,
On 01/28/2011 08:10 AM, Russell King - ARM Linux wrote:
> On Fri, Jan 28, 2011 at 08:00:46AM -0600, Rob Herring wrote:
>> @@ -206,11 +206,17 @@ __create_page_tables:
>> #endif
>>
>> /*
>> - * Then map first 1MB of ram in case it contains our boot params.
>> + * Then map boot params address in r2 or
>> + * the first 1MB of ram if boot params address is not specified.
>> */
>> - add r0, r4, #PAGE_OFFSET>> 18
>> - orr r6, r7, r8
>> - str r6, [r0]
>> + mov r0, r2, lsr #20
>> + movs r0, r0, lsl #20
>> + moveq r0, r8
>> + sub r3, r0, r8
>> + add r3, r3, #PAGE_OFFSET
>> + add r3, r4, r3, lsr #18
>> + orr r6, r7, r0
>> + str r6, [r3]
>
> Wouldn't:
> str r6, [r4, r3, lsr #18]
> work here?
Not on Thumb2:
arch/arm/kernel/head.S:218: Error: Thumb supports only LSL in shifted
register indexing -- `str r6,[r4,r3,lsr#18]'
Rob
More information about the linux-arm-kernel
mailing list