Please check the attached zrom fix up. 1. copy_and_run.c double skip length 2. merge zrom_stream.c into rom_stream.c 3. ram position check to skip 0xa0000, and 0xf0000...
YH
-----Original Message----- From: linuxbios-bounces@linuxbios.org [mailto:linuxbios-bounces@linuxbios.org] On Behalf Of yhlu Sent: Saturday, April 29, 2006 3:12 PM To: Stefan Reinauer Cc: linuxbios@linuxbios.org Subject: Re: [LinuxBIOS] [FEATURE] payload compression
Good. lib/unrv2b.c and CAR could include it....
YH
On 4/29/06, Stefan Reinauer stepan@coresystems.de wrote:
- yhlu yinghailu@gmail.com [060429 23:41]:
the copy_and_run already have the same function that from nrv2b.c,
So
we share the function...
Yes. I actually took it from copy_and_run.c.
Should we put it to lib/unrv2b.c or similar and reference it in both places?
I would assume that we have to compile it twice in any case, as the
one
time it is running in CAR/romcc context and the other time we're in "late gcc" context.
Stefan
-- coresystems GmbH * Brahmsstr. 16 * D-79104 Freiburg i. Br. Tel.: +49 761 7668825 * Fax: +49 761 7664613 Email: info@coresystems.de * http://www.coresystems.de/
* Lu, Yinghai yinghai.lu@amd.com [060503 20:40]:
Please check the attached zrom fix up.
- copy_and_run.c double skip length
- merge zrom_stream.c into rom_stream.c
- ram position check to skip 0xa0000, and 0xf0000...
Makes perfect sense!
* Lu, Yinghai yinghai.lu@amd.com [060503 20:40]:
Please check the attached zrom fix up.
- copy_and_run.c double skip length
- merge zrom_stream.c into rom_stream.c
- ram position check to skip 0xa0000, and 0xf0000...
I suggest you drop the following from the patch:
+#if ENDIAN == 0 && BITSIZE == 8 +#define GETBIT(bb, src, ilen) GETBIT_8(bb, src, ilen) +#endif +#if ENDIAN == 0 && BITSIZE == 16 +#define GETBIT(bb, src, ilen) GETBIT_LE16(bb, src, ilen) +#endif +#if ENDIAN == 0 && BITSIZE == 32 +#define GETBIT(bb, src, ilen) GETBIT_LE32(bb, src, ilen) +#endif
The algorithm does not work with anything than 32bit and little endian anyways as it is written down.
Stefan