On Friday, June 14, 2019 12:06:48 PM CEST Christophe Leroy wrote: > > Le 13/06/2019 à 13:42, Michael Ellerman a écrit : > > Daniel Axtens <d...@axtens.net> writes: > >> Pawel Dembicki <paweldembi...@gmail.com> writes: > >> > >>> Enable kernel XZ compression option on PPC_85xx. Tested with > >>> simpleImage on TP-Link TL-WDR4900 (Freescale P1014 processor). > >>> > >>> Suggested-by: Christian Lamparter <chunk...@gmail.com> > >>> Signed-off-by: Pawel Dembicki <paweldembi...@gmail.com> > >>> --- > >>> arch/powerpc/Kconfig | 2 +- > >>> 1 file changed, 1 insertion(+), 1 deletion(-) > >>> > >>> diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig > >>> index 8c1c636308c8..daf4cb968922 100644 > >>> --- a/arch/powerpc/Kconfig > >>> +++ b/arch/powerpc/Kconfig > >>> @@ -196,7 +196,7 @@ config PPC > >>> select HAVE_IOREMAP_PROT > >>> select HAVE_IRQ_EXIT_ON_IRQ_STACK > >>> select HAVE_KERNEL_GZIP > >>> - select HAVE_KERNEL_XZ if PPC_BOOK3S || 44x > >>> + select HAVE_KERNEL_XZ if PPC_BOOK3S || 44x || PPC_85xx > >> > >> (I'm not super well versed in the compression stuff, so apologies if > >> this is a dumb question.) If it's this simple, is there any reason we > >> can't turn it on generally, or convert it to a blacklist of platforms > >> known not to work? > > > > For some platforms enabling XZ requires that your u-boot has XZ support, > > and I'm not very clear on when that support landed in u-boot and what > > boards have it. And there are boards out there with old/custom u-boots > > that effectively can't be updated. > > I don't think that it has anything to do with u-boot. > AFAIK, today's mainline U-boot only supports GZIP (by default) and the > following optional ones: LZO, LZMA, LZ4. > > If we want to set additional compression types for u-boot, it is not > enough to select HAVE_KERNEL_XXXX, we also have to update uImage > generation scripts. > > See the series I sent some time ago: > https://patchwork.ozlabs.org/project/linuxppc-dev/list/?series=104153 > I'll resent it without bzip2 as today's uboot doesn't support bzip2 anymore. > > > > > But as a server guy I don't really know the details of all that very > > well. So if someone tells me that we should enable XZ for everything, or > > as you say just black list some platforms, then that's fine by me. > > > > I guess we first need to understand how this is used. >
to add to the confusion: The powerpc arch is sort of special since it has the various targets have different arch/powerpc/boot/wrapper for everyone unfamiliar (people from ARM or other targets,) please look at: https://www.kernel.org/doc/Documentation/powerpc/bootwrapper.txt and see that this is very different from ARM, MIPS, x86, etc. I think the cuImage*, dtbImage*, simpleImage, etc... wouldn't be affected if the kernel is compressed by XZ, as in they should still boot fine, altough XZ takes a bit longer to unpack of course. However, for the uImage this could spell a problem, however "HAVE_KERNEL_XZ" does not automatically entail that the wrapper script from above compresses the generated uimage with LZMAd/xz. Instead this is controlled by init/Kconfig and the "Kernel compression mode" setting there. And currently that defaults to CONFIG_KERNEL_GZIP. So the wrapper script currently gzipped uImages unless the target config overwrites it to something else (and the target has the right HAVE_KERNEL_XZ/BZIP2/LZMA/LZO/LZ4/... as well). Regards, Christian