Copy_and_run is used by CAR and included in cache_as_ram_auto.c and compiled with gcc. That should be changed to use lzma easily.
CONFIG_COMPRESSED_ROM_STREAM is used for pay load. --- stream_init will do the uncompressed. ( stream_init is in ram)
CONFIG_COMPRESS is for linuxbios_ram.rom --- copy_and_run will do the uncompress. ( copy_and_run is ROM, and used ram as stack and local variable)
You may create one file only that is corresponding to lib/nrv2b.c...
YH
-----Original Message----- From: linuxbios-bounces@linuxbios.org [mailto:linuxbios-bounces@linuxbios.org] On Behalf Of Carl-Daniel Hailfinger Sent: Monday, May 22, 2006 12:29 PM To: yhlu Cc: Stefan Reinauer; LinuxBIOS Subject: Re: [LinuxBIOS] selection of compression algorithm
On 5/22/06, Stefan Reinauer stepan@coresystems.de wrote:
We never actually compile nrv2b with romcc, do we? At the point we
run
nrv2b ram has to be enabled anyways - we uncompress the code
somewhere.
So our limits are far bigger than that.
yhlu wrote:
in crt0.s, and it is used to uncompress linuxbios_ram when using
romcc.
You mean copy_and_run() is compiled with romcc? Can we change that?
What's the difference between CONFIG_COMPRESSED_ROM_STREAM and CONFIG_COMPRESS? Can we use lzma compression for both?
Regards, Carl-Daniel
Lu, Yinghai wrote:
Copy_and_run is used by CAR and included in cache_as_ram_auto.c and compiled with gcc. That should be changed to use lzma easily.
CONFIG_COMPRESSED_ROM_STREAM is used for pay load. --- stream_init will do the uncompressed. ( stream_init is in ram)
CONFIG_COMPRESS is for linuxbios_ram.rom --- copy_and_run will do the uncompress. ( copy_and_run is ROM, and used ram as stack and local variable)
Patch attached to clear up the naming confusion. Applies on top of my older patch. Please apply.
Regards, Carl-Daniel
Carl-Daniel Hailfinger wrote:
Lu, Yinghai wrote:
Copy_and_run is used by CAR and included in cache_as_ram_auto.c and compiled with gcc. That should be changed to use lzma easily.
CONFIG_COMPRESSED_ROM_STREAM is used for pay load. --- stream_init will do the uncompressed. ( stream_init is in ram)
CONFIG_COMPRESS is for linuxbios_ram.rom --- copy_and_run will do the uncompress. ( copy_and_run is ROM, and used ram as stack and local variable)
Patch attached to clear up the naming confusion. Applies on top of my older patch. Please apply.
this has passed the abuild regression test and works on at least one platform, right?
ron
Ronald G Minnich wrote:
Carl-Daniel Hailfinger wrote:
Lu, Yinghai wrote:
Copy_and_run is used by CAR and included in cache_as_ram_auto.c and compiled with gcc. That should be changed to use lzma easily.
CONFIG_COMPRESSED_ROM_STREAM is used for pay load. --- stream_init will do the uncompressed. ( stream_init is in ram)
CONFIG_COMPRESS is for linuxbios_ram.rom --- copy_and_run will do the uncompress. ( copy_and_run is ROM, and used ram as stack and local variable)
Patch attached to clear up the naming confusion. Applies on top of my older patch. Please apply.
this has passed the abuild regression test and works on at least one platform, right?
I have no platform on which LinuxBIOS runs on, but it caused no regression in abuild. (But a lot of targets do not seem to compile at all, even without my patch. Does this depend on the gcc version? I have gcc 3.3.5)
Regards, Carl-Daniel
Carl-Daniel Hailfinger wrote:
I have no platform on which LinuxBIOS runs on, but it caused no regression in abuild. (But a lot of targets do not seem to compile at all, even without my patch. Does this depend on the gcc version? I have gcc 3.3.5)
don't know, I will try to test your patch via abuild but I don't want to commit until then.
ron
Ronald G Minnich wrote:
Carl-Daniel Hailfinger wrote:
I have no platform on which LinuxBIOS runs on, but it caused no regression in abuild. (But a lot of targets do not seem to compile at all, even without my patch. Does this depend on the gcc version? I have gcc 3.3.5)
don't know, I will try to test your patch via abuild but I don't want to commit until then.
Yes, it was a gcc bug. gcc 4.1.0 has no problems compiling it. I'll continue testing and developing with gcc 4.1.0 from now on.
Regards, Carl-Daniel
* Carl-Daniel Hailfinger c-d.hailfinger.devel.2006@gmx.net [060523 20:09]:
Ronald G Minnich wrote:
Carl-Daniel Hailfinger wrote:
I have no platform on which LinuxBIOS runs on, but it caused no regression in abuild. (But a lot of targets do not seem to compile at all, even without my patch. Does this depend on the gcc version? I have gcc 3.3.5)
don't know, I will try to test your patch via abuild but I don't want to commit until then.
Yes, it was a gcc bug. gcc 4.1.0 has no problems compiling it. I'll continue testing and developing with gcc 4.1.0 from now on.
Can we get it compiling with 3.3.5 as well? What's the bug about? I'm using 4.1 as a reference compiler at the moment, but lots of people out there have older compilers I think...
Stefan
Stefan Reinauer wrote:
- Carl-Daniel Hailfinger c-d.hailfinger.devel.2006@gmx.net [060523 20:09]:
Ronald G Minnich wrote:
Carl-Daniel Hailfinger wrote:
I have no platform on which LinuxBIOS runs on, but it caused no regression in abuild. (But a lot of targets do not seem to compile at all, even without my patch. Does this depend on the gcc version? I have gcc 3.3.5)
don't know, I will try to test your patch via abuild but I don't want to commit until then.
Yes, it was a gcc bug. gcc 4.1.0 has no problems compiling it. I'll continue testing and developing with gcc 4.1.0 from now on.
Can we get it compiling with 3.3.5 as well? What's the bug about? I'm using 4.1 as a reference compiler at the moment, but lots of people out there have older compilers I think...
LinuxBIOSv2-2310/src/cpu/amd/model_gx2/cpubug.c:199:75: missing terminating ' character LinuxBIOSv2-2310/src/cpu/amd/model_gx2/cpubug.c:205:70: missing terminating ' character
I can retest once that is fixed.
Regards, Carl-Daniel
* Carl-Daniel Hailfinger c-d.hailfinger.devel.2006@gmx.net [060524 02:06]:
Stefan Reinauer wrote:
- Carl-Daniel Hailfinger c-d.hailfinger.devel.2006@gmx.net [060523 20:09]:
Ronald G Minnich wrote:
Carl-Daniel Hailfinger wrote:
I have no platform on which LinuxBIOS runs on, but it caused no regression in abuild. (But a lot of targets do not seem to compile at all, even without my patch. Does this depend on the gcc version? I have gcc 3.3.5)
don't know, I will try to test your patch via abuild but I don't want to commit until then.
Yes, it was a gcc bug. gcc 4.1.0 has no problems compiling it. I'll continue testing and developing with gcc 4.1.0 from now on.
Can we get it compiling with 3.3.5 as well? What's the bug about? I'm using 4.1 as a reference compiler at the moment, but lots of people out there have older compilers I think...
LinuxBIOSv2-2310/src/cpu/amd/model_gx2/cpubug.c:199:75: missing terminating ' character LinuxBIOSv2-2310/src/cpu/amd/model_gx2/cpubug.c:205:70: missing terminating ' character
Indeed weird! This is in the middle of #ifdef 0?
Stefan Reinauer wrote:
- Carl-Daniel Hailfinger c-d.hailfinger.devel.2006@gmx.net [060524 02:06]:
Stefan Reinauer wrote:
- Carl-Daniel Hailfinger c-d.hailfinger.devel.2006@gmx.net [060523 20:09]:
Ronald G Minnich wrote:
Carl-Daniel Hailfinger wrote:
I have no platform on which LinuxBIOS runs on, but it caused no regression in abuild. (But a lot of targets do not seem to compile at all, even without my patch. Does this depend on the gcc version? I have gcc 3.3.5)
don't know, I will try to test your patch via abuild but I don't want to commit until then.
Yes, it was a gcc bug. gcc 4.1.0 has no problems compiling it. I'll continue testing and developing with gcc 4.1.0 from now on.
Can we get it compiling with 3.3.5 as well? What's the bug about? I'm using 4.1 as a reference compiler at the moment, but lots of people out there have older compilers I think...
LinuxBIOSv2-2310/src/cpu/amd/model_gx2/cpubug.c:199:75: missing terminating ' character LinuxBIOSv2-2310/src/cpu/amd/model_gx2/cpubug.c:205:70: missing terminating ' character
Indeed weird! This is in the middle of #ifdef 0?
Yes.
Tom Sylla @ AMD just wrote off-list:
You can safely just remove those ticks. They are in comments in an if 0'ed section of reference code.
Regards, Carl-Daniel
well, perhaps not so weird... the #ifdef 0 is weird. Shouldn't it be #if 0 instead to comment out stuff? :-)
Stefan Reinauer wrote:
- Carl-Daniel Hailfinger c-d.hailfinger.devel.2006@gmx.net [060524 02:06]:
Stefan Reinauer wrote:
- Carl-Daniel Hailfinger c-d.hailfinger.devel.2006@gmx.net [060523 20:09]:
Ronald G Minnich wrote:
Carl-Daniel Hailfinger wrote:
I have no platform on which LinuxBIOS runs on, but it caused no regression in abuild. (But a lot of targets do not seem to compile at all, even without my patch. Does this depend on the gcc version? I have gcc 3.3.5)
don't know, I will try to test your patch via abuild but I don't want to commit until then.
Yes, it was a gcc bug. gcc 4.1.0 has no problems compiling it. I'll continue testing and developing with gcc 4.1.0 from now on.
Can we get it compiling with 3.3.5 as well? What's the bug about? I'm using 4.1 as a reference compiler at the moment, but lots of people out there have older compilers I think...
LinuxBIOSv2-2310/src/cpu/amd/model_gx2/cpubug.c:199:75: missing terminating ' character LinuxBIOSv2-2310/src/cpu/amd/model_gx2/cpubug.c:205:70: missing terminating ' character
Indeed weird! This is in the middle of #ifdef 0?
* Per Hallsmark per.hallsmark@t2data.se [060524 16:53]:
well, perhaps not so weird... the #ifdef 0 is weird. Shouldn't it be #if 0 instead to comment out stuff? :-)
heh.. No doubt. But the code says #if 0 indeed. It was just me who messed the mail up.
Stefan
* Carl-Daniel Hailfinger c-d.hailfinger.devel.2006@gmx.net [060523 19:49]:
Ronald G Minnich wrote:
Carl-Daniel Hailfinger wrote:
Lu, Yinghai wrote:
Copy_and_run is used by CAR and included in cache_as_ram_auto.c and compiled with gcc. That should be changed to use lzma easily.
CONFIG_COMPRESSED_ROM_STREAM is used for pay load. --- stream_init will do the uncompressed. ( stream_init is in ram)
CONFIG_COMPRESS is for linuxbios_ram.rom --- copy_and_run will do the uncompress. ( copy_and_run is ROM, and used ram as stack and local variable)
Patch attached to clear up the naming confusion. Applies on top of my older patch. Please apply.
this has passed the abuild regression test and works on at least one platform, right?
I have no platform on which LinuxBIOS runs on, but it caused no regression in abuild. (But a lot of targets do not seem to compile at all, even without my patch. Does this depend on the gcc version? I have gcc 3.3.5)
Is it different from this one?
http://snapshots.linuxbios.org/stats/abuild-LinuxBIOSv2-2310.log
This one seems to occur a couple of times, who's the culprit? crt0.S:(.rom.text+0x350b): undefined reference to `printk_debug'
Stefan