[fedora-arm] F19: uImage load addresses with unified kernel

Graeme Russ graeme.russ at gmail.com
Wed Mar 27 00:26:12 UTC 2013


Hi Brendan,

On Wed, Mar 27, 2013 at 11:20 AM, Brendan Conoboy <blc at redhat.com> wrote:
> On 03/26/2013 05:04 PM, Graeme Russ wrote:
>>
>> Hi Brendan,
>>
>> On Wed, Mar 27, 2013 at 10:54 AM, Brendan Conoboy <blc at redhat.com> wrote:
>>>
>>> On 03/26/2013 04:49 PM, Graeme Russ wrote:
>>>>
>>>>
>>>> 4. Relocatable kernel (like x86)
>>>
>>>
>>> If I understand correctly it already is relocatable.  This is simply the
>>> address that uboot is instructed to load the kernel into memory at.
>>
>>
>> So why worry? Just have the load address in the U-Boot environment.
>
>
> Because uboot's bootm does not handling the relocation?

Ah, I think I get it now. The x86 relocatable kernel is truly
relocatable - the kernel itself figures out where is has been loaded
and performs some adjustments

>> Not 100% sure the mechanics of U-Boot loading an ARM kernel but I
>> think it just loads it blindly where it is told to (i.e. does not
>> analyse the header)

I just realised I got this a bit wrong - mkimage make a U-Boot image
with a header which contains the kernel load address. Not sure what
mkimage does to the Linux kernel binary itself

> That would make more sense (This was my understanding as well, actually),
> but we're still having an issue: The uImage header, stored in RAM, has a
> load address that is wrong for some platforms.  Unless we're going to change
> that with an in-uboot memory editor, bootm will honor the address in that
> header and the boot will fail.

I think this is worth raising on the U-Boot ML

Regards,

Graeme


More information about the arm mailing list