[LinuxBIOS] [FEATURE] payload compression

Stefan Reinauer stepan at coresystems.de
Sat Apr 29 23:56:49 CEST 2006


* yhlu <yinghailu at gmail.com> [060429 23:33]:
> sounds good.
> you need to notice one thing...
> check if it could cross the [0xa0000, 0xd0000)...

ah right, I did not think of that. 

I originally rewrote the nrv2b decompressor so that it delivers 1 byte
per function call while not needing an additional decompression space.
But unfortunately this only seems to be possible with recursive calls
and it makes some 30000 recursive calls for decompressing a simple 
200byte makefile. So I figured the buffer is the better solution..

> To make it easier, You may just set CONFIG_TOP_MEM_K to 4096, and
> _RAM_START to 1M...

Why would I need to change CONFIG_LB_MEM_TOPK? It's 2048 by default, and
if it's kbytes and I put _RAM_START to 1M I'd still have a whole MByte
for the decompressed payload, or do I miss something?

Hm, trying to follow your suggestion while reading the code..

_RAMSTART vs _RAMBASE - What's the difference?

_RAMSTART is defined here, but never used anywhere in the whole source
code... Can we kill it, or is there some code in some queue who will
start using it?

src/config/Options.lb:define _RAMSTART
src/mainboard/totalimpact/briq/Options.lb:default _RAMSTART=0x00100000
src/mainboard/motorola/sandpoint/Options.lb:default _RAMSTART=0x00100000
src/mainboard/motorola/sandpointx3_altimus_mpc7410/Options.lb:default _RAMSTART=0x00100000

_RAMBASE is used in many places. I assume it is supposed to be the same
as _RAMSTART, but I am not sure.

Stefan

-- 
coresystems GmbH • Brahmsstr. 16 • D-79104 Freiburg i. Br.
      Tel.: +49 761 7668825 • Fax: +49 761 7664613
Email: info at coresystems.dehttp://www.coresystems.de/




More information about the coreboot mailing list