[coreboot] First coreboot build for Tyan s2895 K8WE mobo with seabios payload, computer starts, but graphical ubuntu 64bits is crashing

STEMMELIN, FREDERIC (FREDERIC)** CTR ** frederic.stemmelin at alcatel-lucent.com
Thu Sep 16 22:18:32 CEST 2010


Hello,

this was my first try to build a coreboot bios ever, for my tyan s2895 mobo.
I get managed to build and burn the bios into a RD1 512KB bios savior chip.
The computer is booting, and then crashing on Ubuntu logo (10.04 64bits version), so far so nice.

Here is what i have done:

My rom build computer is installed with Ubuntu 10.04 64bits version, with build-essential and some other packages (flex bison git-core g++ gdb libncurses5-dev doxygen iasl build-essential lzma-dev liblzma-dev)
I downloaded latest available verszion of payload seabios, with command "git clone git://git.linuxtogo.org/home/kevin/seabios.git seabios".
Then i have adapted the config.h file as follow:

#define CONFIG_COREBOOT 1
#define CONFIG_DEBUG_SERIAL 1
#define CONFIG_VGAHOOKS 1

The make command has build the file => out/bios.bin.elf 1048716 bytes

Now i downloaded latest coreboot files, with a "svn co svn://coreboot.org/coreboot/trunk coreboot"
But, on first "make", i run into troubles:

build/coreboot_ram.o: In function `__wrap___umoddi3':
(.text+0x1223f): undefined reference to `__umoddi3'
build/coreboot_ram.o: In function `__wrap___moddi3':
(.text+0x1224a): undefined reference to `__moddi3'
build/coreboot_ram.o: In function `__wrap___udivdi3':
(.text+0x12255): undefined reference to `__udivdi3'
build/coreboot_ram.o: In function `__wrap___divdi3':
(.text+0x12260): undefined reference to `__divdi3'
collect2: ld returned 1 exit status
make: *** [build/coreboot_ram] Erreur 1

Then i find out (in some mailing list archive) that there is a integrated compiling toolchain in the coreboot files, under "coreboot/util/crossgcc".
The command "./buildgcc" was succesfull even if it tooks some time, enought to drink a coffee.

On second "make" try, same compile errors. After some researches i find out that i need to do a "rm -rf build" and a new "make menuconfig", but it didnt solved my problem, same compilation errors :(
I finnaly found out that i need to also delete the .xcompile file.
So after the "rm -rf build", "rm .config", "rm .xcompile" and finally a "make menuconfig", the "make" was working (i am not a programmer), yes.

I burned the coreboot.rom into the RD1 chip, and restared the computer. I then saw briefly a message about pressing F12 for some configuration.
After some other quick messages, which i coulnd read, i saw Ubuntu starting and then crashing on the graphical logo. This is not really a problem so far, as i was able to switch back to the original bios to get computer up and running.


Now i have a 3 questions for you:

Is the coreboot.rom 32bits only and is there any advantage to build a 64bits version of the coreboot bios, as i intend to run a 64bits OS ?
I build the seabios with Ubuntu gcc 64bits version, it is compatible, can i mix it, with the coreboot.rom build with i386-elf coreboot toolchain ?
The build seabios (bios.bin.elf) is about 1MB in size, how it is possible to put it into a smaller 512KB chip inside coreboot.rom ?

I didnt put VGA bios so far into the coreboot.rom.

In my opinion, it would be a good idea to mention, somewhere in the build howto, that there is a integrated toolchain in coreboot, and may be also mention not to forget to delete the .xcompile file after the toolchain was built.

What are your advice for the next steps ? Put VGA bios into coreboot.rom, change Ubuntu default start to non-graphical one ?
I have attached the .config file for coreboot (btw i used lzma compression for payload).

Thank you very much, i really appreciate your help.
Frédéric Stemmelin
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: Kconfig.txt
URL: <http://www.coreboot.org/pipermail/coreboot/attachments/20100916/e3e44d0a/attachment.txt>


More information about the coreboot mailing list