[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