[LinuxBIOS] Patch file for Fedora 8 compile problems
Uwe Hermann
uwe at hermann-uwe.de
Fri Dec 7 22:08:27 CET 2007
On Fri, Dec 07, 2007 at 12:39:36PM -0800, Ed Swierk wrote:
> Here is another attempt that does not rely on the --build-id option,
> incorporating Marc's workaround in src/arch/i386/lib/id.lds for the
> .id allocation issue.
The patch is missing the original Signed-off-by from Marc, and your
Signed-off-by.
> Index: LinuxBIOSv2-2571/src/config/linuxbios_ram.ld
> ===================================================================
> --- LinuxBIOSv2-2571.orig/src/config/linuxbios_ram.ld
> +++ LinuxBIOSv2-2571/src/config/linuxbios_ram.ld
> @@ -62,6 +62,10 @@ SECTIONS
> . = ALIGN(4);
>
> _erodata = .;
> + }
> + /* ld segfaults if we give it --build-id and then discard this section */
> + .note.gnu.build-id : {
> + *(.note.gnu.build-id)
> }
> /*
> * After the code we place initialized data (typically initialized
> Index: LinuxBIOSv2-2571/src/arch/i386/lib/id.lds
> ===================================================================
> --- LinuxBIOSv2-2571.orig/src/arch/i386/lib/id.lds
> +++ LinuxBIOSv2-2571/src/arch/i386/lib/id.lds
> @@ -1,5 +1,10 @@
> SECTIONS {
> - . = (_ROMBASE + ROM_IMAGE_SIZE - 0x10) - (__id_end - __id_start);
> + /*
> + * . = (_ROMBASE + ROM_IMAGE_SIZE - 0x10) - (__id_end - __id_start);
> + * This is a temporary fix. Under Fedora 8 ld does not like it if the .id section is above address 0xFFFF_EF00
> + */
> + _ROMTEMP = 0xffffef00;
> + . = _ROMTEMP;
This part breaks the majority of all boards in v2 (checked with abuild).
E.g. on asus/p2b:
./buildrom linuxbios.strip linuxbios.rom payload 0x10000 0x20000
linuxbios image is 192277 bytes; only 65536 allowed
Linuxbios input file larger than allowed size!
: Success
make[1]: *** [linuxbios.rom] Error 2
make[1]: Leaving directory `/tmp/v2/targets/asus/p2b/p2b/normal'
make: *** [normal/linuxbios.rom] Error 1
There must be some other way to fix this.
> .id (.): {
> *(.id)
> }
> Index: LinuxBIOSv2-2571/src/arch/i386/init/ldscript.lb
> ===================================================================
> --- LinuxBIOSv2-2571.orig/src/arch/i386/init/ldscript.lb
> +++ LinuxBIOSv2-2571/src/arch/i386/init/ldscript.lb
> @@ -53,6 +53,10 @@ SECTIONS
> _erom = .;
> }
>
> + .note.gnu.build-id : {
> + *(.note.gnu.build-id)
> + }
> +
> _lrom = LOADADDR(.rom);
> _elrom = LOADADDR(.rom) + SIZEOF(.rom);
> _iseg = _RAMBASE;
> @@ -63,5 +67,6 @@ SECTIONS
> /DISCARD/ : {
> *(.comment)
> *(.note)
> + *(.note.*)
> }
> }
Uwe.
--
http://www.hermann-uwe.de | http://www.holsham-traders.de
http://www.crazy-hacks.org | http://www.unmaintained-free-software.org
More information about the coreboot
mailing list