[OLPC-devel] Re: Not so good news (Was: good news)

Carl-Daniel U. Hailfinger c-d.hailfinger.devel.2006 at gmx.net
Wed Aug 2 12:11:01 EDT 2006


Ronald Minnich wrote:
> Jordan Crouse wrote:
> >> I noticed that switching to nrv2b compression alone will save >20 kb.
> >> And nrv2b is already supported by LinuxBIOS.
> >> If you apply the attached patch and change line 7 in
> >> work/linuxbios/LinuxBIOSv2/targets/olpc/rev_a/Config.1M.lb to
> >>
> >> option CONFIG_COMPRESSED_ROM_STREAM=1
> >>
> >> you _should_ get a working ROM.
> > 
> > 
> > Sorry - didn't work.  I'm probably going to check in the infrastructure,
> > because its a good start, but for now we're stuck with the old ROM.
> 
> 
> Uh, please hold off on this, until I try to understand what you guys are 
> up to.

Let me explain it in more understandable terms:

We currently build an ELF image from bzImage (internal gzip compression) and initrd (gzip compressed). The bzImage contains ~15k decompession code and the mkelfImage adds the same code for decompression again. That means at least 15k are completely wasted. Additionally, the bzImage also contains lots of 16bit code (unused in our case). All this ends up in the final ELF image.

Since the ELF image (and mkelfImage) make handling of the payload easier, I created a solution which still uses mkelfImage and saves >20k. How?
The new ELF image is built from vmlinux (uncompressed) and initrd (uncompressed). That saves us ~25k decompression code and ~5k 16bit code. However, the resulting ELF image is *big*. To solve that problem, the complete ELF image as a whole is compressed with nrv2b (and nrv2b decompression is already supported in LinuxBIOS). While nrv2b compression is less efficient than gzip compression, the loss due to worse compression is only ~10k. The net effect of this change is to save 20k.


What we need from you is a way to use nrv2b compressed ELF images as payload. Please don't say that is impossible.


If any questions remain, I'll try to participate in the confcall (which has a very unfortunate timing for me: 3:00am). However, if you want to have a conversation with me while I'm still fully awake, try joining #olpc on irc. I'll be there from 13:00PDT/14:00MDT/15:00CDT/16:00EDT (5 hours before the start of the teleconference) until shortly before the teleconference.

Regards,
Carl-Daniel
-- 


Echte DSL-Flatrate dauerhaft für 0,- Euro*. Nur noch kurze Zeit!
"Feel free" mit GMX DSL: http://www.gmx.net/de/go/dsl



More information about the Devel mailing list