[coreboot] Compressed (lzma/nrv2b) elf payload booting

Carl-Daniel Hailfinger c-d.hailfinger.devel.2006 at gmx.net
Mon Jan 21 01:17:23 CET 2008


On 21.01.2008 01:03, Ronald Hoogenboom wrote:
> Hi,
>
> I'm investigating booting from ROM where the rom is larger than the LPC
> mmapped area of the superio. In the 'stream' methods used by elfboot,
> there is an option to use compressed payloads, where the stream takes
> care of the decompression. But what I've seen is that the payload used
> when booting linux kernel directly (Kernel/LAB), the elf payload itself
> (kernel-payload.elf as created by buildrom) is already a compressed
> image, so the kernel-payload.elf.lzma is not smaller, but bigger than
> the non .lzma one.
>
> So my conclusion is that the original kernel decompression is still used
> in coreboot, and choosing lzma compression for the elf payload is only a
> superfluous extra copy step.

That would be a bug. For early OLPC models, I made sure that the LAB
payload was created by compiling a normal uncompressed ELF kernel image,
which was then compressed by buildrom with lzma.
However, OLPC was never good at feeding code changes back upstream, so I
don't know the current state.

>  Is this correct? Or is this specific to a
> 64bit kernel, as the elf file holding the 64 bit kernel seems to be a 32
> bit elf file.
>   

ELF files holding 64bit Linux kernels are strange beasts for backward
compatibility reasons.


Regards,
Carl-Daniel




More information about the coreboot mailing list