[PATCH v4] FIT: Parse `load` and `entry` addresses.
Christian Mauderer
christian.mauderer at embedded-brains.de
Wed Jul 15 05:30:52 EDT 2020
Hello Sascha,
thanks for the review. It was a bit more effort and especially the
extra fit_get_image_address (I used one instead of separate ones for
load and entry) moved quite some code around. But I posted a v5 that
should fulfill the asked changes. The output for the four cases (load,
entry set or not set) now looks like the following:
barebox at sometarget:/mnt/mmc bootm -v -d fallback.itb
FIT: Opened FIT image: Some Image
FIT: No match found. Trying default.
FIT: configuration 'conf-1': Boot Application with FDT blob
FIT: image 'kernel': 'RTEMS Application'
FIT: /images/kernel/hash-1: hash OK
FIT: /images/kernel/load: 0x80500000
FIT: /images/kernel/entry: 0x80500000
Loading open firmware Device Tree flattened Binary 'fallback.itb'
OS image not yet relocated
Passing control to FIT image handler
no initrd load address, defaulting to 0x82abb000
FIT: image 'fdt-1': 'Flattened Device Tree blob'
FIT: /images/fdt-1/hash-1: hash OK
commandline: console=ttymxc0,115200n8
Starting kernel at 0x80500000, oftree at 0x82abb000...
Starting kernel in secure mode
Dryrun. Aborted
barebox at sometarget:/mnt/mmc bootm -v -d -e 0x10 fallback.itb
FIT: Opened FIT image: Some Image
FIT: No match found. Trying default.
FIT: configuration 'conf-1': Boot Application with FDT blob
FIT: image 'kernel': 'RTEMS Application'
FIT: /images/kernel/hash-1: hash OK
FIT: /images/kernel/load: 0x80500000
Loading open firmware Device Tree flattened Binary 'fallback.itb'
OS image not yet relocated
Passing control to FIT image handler
no initrd load address, defaulting to 0x82abb000
FIT: image 'fdt-1': 'Flattened Device Tree blob'
FIT: /images/fdt-1/hash-1: hash OK
commandline: console=ttymxc0,115200n8
Starting kernel at 0x80500010, oftree at 0x82abb000...
Starting kernel in secure mode
Dryrun. Aborted
barebox at sometarget:/mnt/mmc bootm -v -d -a 0x10 fallback.itb
FIT: Opened FIT image: Some Image
FIT: No match found. Trying default.
FIT: configuration 'conf-1': Boot Application with FDT blob
FIT: image 'kernel': 'RTEMS Application'
FIT: /images/kernel/hash-1: hash OK
FIT: /images/kernel/entry: 0x80500000
Loading open firmware Device Tree flattened Binary 'fallback.itb'
OS image not yet relocated
Passing control to FIT image handler
Dryrun. Aborted
handler failed with: Out of memory
barebox at sometarget:/mnt/mmc bootm -v -d -a 0x10 -e 0x10 fallback.itb
FIT: Opened FIT image: Some Image
FIT: No match found. Trying default.
FIT: configuration 'conf-1': Boot Application with FDT blob
FIT: image 'kernel': 'RTEMS Application'
FIT: /images/kernel/hash-1: hash OK
Loading open firmware Device Tree flattened Binary 'fallback.itb'
OS image not yet relocated
Passing control to FIT image handler
Dryrun. Aborted
handler failed with: Out of memory
barebox at sometarget:/mnt/mmc
Best regards
Christian
On 14/07/2020 20:09, Sascha Hauer wrote:
> Hi Christian,
>
> On Tue, Jul 14, 2020 at 11:11:39AM +0200, Christian Mauderer wrote:
>> @@ -622,7 +622,8 @@ int bootm_boot(struct bootm_data *bootm_data)
>> }
>>
>> ret = fit_open_image(data->os_fit, data->fit_config, "kernel",
>> - &data->fit_kernel, &data->fit_kernel_size);
>> + &data->fit_kernel, &data->fit_kernel_size,
>> + &data->os_address, &data->os_entry);
>
> bootm has -a and -e options to specify the load address and the entry
> point. If given, these should take precedence over the addresses given
> in the FIT image.
>
>> int fit_open_image(struct fit_handle *handle, void *configuration,
>> const char *name, const void **outdata,
>> - unsigned long *outsize)
>> + unsigned long *outsize, unsigned long *load,
>> + unsigned long *entry)
>> {
>
> fit_open_image() has many parameters already and the two new ones are
> not always needed or used. I think it's better to make getting the
> addresses a separate function, fit_get_load_address() and
> fit_get_entry() maybe?
>
> Regards,
> Sascha
>
--
--------------------------------------------
embedded brains GmbH
Herr Christian Mauderer
Dornierstr. 4
D-82178 Puchheim
Germany
email: christian.mauderer at embedded-brains.de
Phone: +49-89-18 94 741 - 18
Fax: +49-89-18 94 741 - 08
PGP: Public key available on request.
Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.
More information about the barebox
mailing list