Now I am one step closer to the end, thanks for your patience and help! Probably not the last, but my actual problem: :-)
...dd if=linuxbios.strip of=linuxbios.rom bs=1 seek=`expr 65536 - $size` 65536 65536+0 Records ein 65536+0 Records aus objcopy -O binary -R .note -R .comment -S /boot/vmlinux linux.bin objcopy: /boot/vmlinux: File format not recognized make: *** [linux.bin] Error 1
I got a linuxbios.rom and a linuxbios.strip, both 64kB. But somehow, I think, the other 192kB of the Bios have to be filled with some kernel-sources. I read something about kernel 2.4.10 and a patch, but I can't find these instructions again. Then, if done, I think I have to put the linuxbios.rom & the linux.bin together with the tool nrv2b. Am I right?
Thanks again,
Tom
P.S. @Richard: I added this to the config-file (didn't know it should be there): option SERIAL_SUPERIO_BASEADDRESS=0x3f0
Richard Smith wrote:
Thomas Leidenfrost wrote:
..cp linuxbios_payload.nrv2b linuxbios_payload echo "INCLUDE ldoptions" > ldscript.ld ; for file in /home/thomasle/freebios/src/arch/i386/config/ldscript.base /home/thomasle/freebios/src/cpu/i386/entry16.lds /home/thomasle/freebios/src/cpu/i386/entry32.lds /home/thomasle/freebios/src/cpu/i386/reset16.lds ; do echo "INCLUDE $file" >> ldscript.ld ; done gcc -nostdlib -nostartfiles -static -o linuxbios -T ldscript.ld crt0.o crt0.o(.rom.text+0x7e): In function `__protected_start': : undefined reference to `SERIAL_SUPERIO_BASEADDRESS' crt0.o(.rom.text+0x8f): In function `__protected_start': : undefined reference to `SERIAL_SUPERIO_BASEADDRESS' crt0.o(.rom.text+0xa0): In function `__protected_start': : undefined reference to `SERIAL_SUPERIO_BASEADDRESS' crt0.o(.rom.text+0xb1): In function `__protected_start': : undefined reference to `SERIAL_SUPERIO_BASEADDRESS' crt0.o(.rom.text+0xc2): In function `__protected_start': : undefined reference to `SERIAL_SUPERIO_BASEADDRESS' crt0.o(.rom.text+0xd3): more undefined references to `SERIAL_SUPERIO_BASEADDRESS' follow
Looks like the boot up serial_setup is not right. crt0.s is built from files specified in your ./mainboard/Avantech/pcm-5823/Config
the serial boot output stuff is built from this line.
mainboardinit superio/SMC/fdc37b72x/setup_serial.inc
Looking at the .inc for the advantech stuff and the config and some grepping I see that the superio base address is set with SMC_BASE in the pcm-5823 but set with SERIAL_SUPERIO_BASEADDRESS in the pcm-9574.
What did you change this like to?
Go look at whatever seteup_serial.inc you have and see what option it needs set for the serial base address.
It may be as simple as adding a
option SERIAL_SUPERIO_BASEADDRESS 0x<base>
to your mainboard config file or you may have to make some setup_serial.inc mods for whatever superio you changed to.