[U-Boot] [PATCH v2 1/2] image: android: allow booting lz4-compressed kernels
Eugeniu Rosca
erosca at de.adit-jv.com
Tue Apr 9 14:08:47 UTC 2019
On Tue, Apr 09, 2019 at 02:38:08PM +0200, Marek Vasut wrote:
> On 4/9/19 2:29 PM, Eugeniu Rosca wrote:
> > On Tue, Apr 09, 2019 at 01:06:31PM +0200, Marek Vasut wrote:
> >> On 4/8/19 5:35 PM, Eugeniu Rosca wrote:
> >>> According to Android image format [1], kernel image resides at 1 page
> >>> offset from the boot image address. Grab the magic number from there
> >>> and allow U-Boot to handle LZ4-compressed KNL binaries instead of
> >>> hardcoding compression type to IH_COMP_NONE. Other compression types,
> >>> if needed, can be added later.
> >>>
> >>> Tested on H3ULCB-KF using the image detailed in [2].
> >>
> >> H3ULCB Kingfisher is not supported in mainline ;-)
> >
> > Well, my H3 ES2.0 ULCB attached to Kingfisher-M06 boots just fine with
> > the recently released v2019.04 U-Boot. I guess U-Boot simply doesn't
> > (need to) care about the fancy peripherals present on the KF extension
> > board (hence no need to spawn another KF defconfig)?
>
> Glad to hear it boots well. Is there anything interesting on the KF
> that'd be worth supporting ? I think it could be handled via DTOs.
My vote goes for having a mainline-grade USB gadget/peripheral
support needed by fastboot :) simply because we currently rely on
a "20 files changed, 6294 insertions(+)" driver from Renesas which
didn't undergo any deep review and is unlikely ready for upstreaming.
FWIW my other wishes for R-Car3 are:
- Add fastboot support, which includes choosing a proper DRAM
address/size for the fastboot buffer (currently we make it
16 MiB and place it at 0x4A000000)
- Add Android boot image support
- Define a flexible unified U-Boot environment which we see on other
platforms (e.g. TI), allowing users to boot Linux and Android from
various boot media without build-time tunables
- [KF-agnostic] Decrease the defconfig maintenance overhead as
discussed in a parallel thread
- [KF-agnostic] Build/boot U-Boot with UBSAN=y (there are issues)
- many others!
>
> >> [...]
> >>
> >>> diff --git a/include/image.h b/include/image.h
> >>> index 765ffecee0a7..889305cbefdb 100644
> >>> --- a/include/image.h
> >>> +++ b/include/image.h
> >>> @@ -306,6 +306,7 @@ enum {
> >>> IH_COMP_COUNT,
> >>> };
> >>>
> >>> +#define LZ4F_MAGIC 0x184D2204 /* LZ4 Magic Number */
> >>> #define IH_MAGIC 0x27051956 /* Image Magic Number */
> >>> #define IH_NMLEN 32 /* Image Name Length */
> >>>
> >>
> >> Keep the list sorted please.
> >
> > I hope below looks better?
> >
> > #define IH_MAGIC 0x27051956 /* Image Magic Number */
> > #define IH_NMLEN 32 /* Image Name Length */
> > +#define LZ4F_MAGIC 0x184D2204 /* LZ4 Magic Number */
> >
> > Please, share any other comments/wishes before I push v3 in the
> > next couple of days. TIA!
>
> I think that's all from my side.
Thanks!
>
> --
> Best regards,
> Marek Vasut
Best regards,
Eugeniu.
More information about the U-Boot
mailing list