Difference between revisions of "Build coreboot using LBdistro"

From coreboot
Jump to: navigation, search
 
(10 intermediate revisions by 3 users not shown)
Line 2: Line 2:
  
 
LBdistro is an improvement on buildrom to let user customize what binaries will be at final ROM. The original name was [[biosdistro]] but Uwe suggest me change it to LBdistro.
 
LBdistro is an improvement on buildrom to let user customize what binaries will be at final ROM. The original name was [[biosdistro]] but Uwe suggest me change it to LBdistro.
In the LBdistro the user can just select through menus what applications, kernel features and LinuxBIOS will be added to ROM. So the system will compile everything and the user will just need write it this firmware in you BIOS flash.
+
In the LBdistro the user can just select through menus what applications, kernel features and coreboot will be added to ROM. So the system will compile everything and the user needs just write this firmware into BIOS flash memory.
  
 
=== How to getting started? ===
 
=== How to getting started? ===
Line 12: Line 12:
 
Extract it to /usr/local:
 
Extract it to /usr/local:
  
<pre>
+
sudo tar jxvf toolchain.tar.bz2 -C /usr/local
sudo tar jxvf toolchain.tar.bz2 -C /usr/local
+
</pre>
+
  
 
Get last LBdistro from SVN repository:
 
Get last LBdistro from SVN repository:
Line 25: Line 23:
 
  make menuconfig
 
  make menuconfig
 
  make
 
  make
 +
 +
Move the create file (deploy/emulation-qemu-i386.rom) to your HOME renaming its name to bios.bin
 +
 +
Compile QEMU and apply [http://www.coreboot.org/QEMU_Build_Tutorial patches] to support 2MB BIOS
 +
 +
Execute QEMU using the argument -L pointing to directory where bios.bin is located (we use ~ to refer to HOME)
 +
 +
qemu -L ~ -hda /dev/null
  
 
For now only QEMU compilation is generating ROM, but other boards will be added after Kdrive and application works.
 
For now only QEMU compilation is generating ROM, but other boards will be added after Kdrive and application works.
Line 30: Line 36:
 
=== Known problems ===
 
=== Known problems ===
  
Fixed.
+
The final coreboot ROM created is not starting correctly in Qemu.
  
 
=== TODO ===
 
=== TODO ===
  
 
Remove the needs of external toolchain, the build system needs create the toolchains too.
 
Remove the needs of external toolchain, the build system needs create the toolchains too.
 +
 +
Add Gigabyte M57SLI-S4 to real tests.

Latest revision as of 14:59, 15 January 2008

What is LBdistro?

LBdistro is an improvement on buildrom to let user customize what binaries will be at final ROM. The original name was biosdistro but Uwe suggest me change it to LBdistro. In the LBdistro the user can just select through menus what applications, kernel features and coreboot will be added to ROM. So the system will compile everything and the user needs just write this firmware into BIOS flash memory.

How to getting started?

First you need download the toolchain used to compile some LBdistro packages:

wget http://lbdistro.sourceforge.net/tools/toolchain.tar.bz2

Extract it to /usr/local:

sudo tar jxvf toolchain.tar.bz2 -C /usr/local

Get last LBdistro from SVN repository:

svn co https://lbdistro.svn.sourceforge.net/svnroot/lbdistro/trunk LBdistro

After that issue:

cd LBdistro
make menuconfig
make

Move the create file (deploy/emulation-qemu-i386.rom) to your HOME renaming its name to bios.bin

Compile QEMU and apply patches to support 2MB BIOS

Execute QEMU using the argument -L pointing to directory where bios.bin is located (we use ~ to refer to HOME)

qemu -L ~ -hda /dev/null

For now only QEMU compilation is generating ROM, but other boards will be added after Kdrive and application works.

Known problems

The final coreboot ROM created is not starting correctly in Qemu.

TODO

Remove the needs of external toolchain, the build system needs create the toolchains too.

Add Gigabyte M57SLI-S4 to real tests.