the first thing to remember, is that coreboot has multiple [[Payloads]] used for the boot process ([[SeaBIOS]], [[FILO]], [[GRUB2]], etc), and you must build a payload first, so that coreboot can build it into itsself.

+

First, before thinking of using coreboot, make sure you have a backup of your current BIOS image(see [[Flashrom]]), and the correct facilities to replace that image, if it becomes corrupt. Assuming you have a backup and restore procedure, continue with the following(which may destroy your board anyways! you have been warned!)

−

after your payload is compiled, copy the resulting file to /tmp/filo.elf, then

+

It is recommended that you have a known good PCI video card, a known good single sided PC100 non-ecc dimm, and a known good null modem cable before you proceed, for error recovery. At this point, it is recommended that you have many dimms, as the timings are compiled into the bios, and theres no good way to know your dimm is going to work after flashing.

−

$ svn co svn://coreboot.org/repos/trunk/coreboot-v2

+

CoreBoot has multiple [[Payloads]] used for the boot process ([[SeaBIOS]], [[FILO]], [[GRUB2]], etc), and you must build a payload first, so that CoreBoot can build it into itsself.

−

$ cd coreboot-v2/targets

+

−

$ ./buildtarget asus/p2b-f

+

−

$ cd asus/p2b-f/p2b-f

+

−

$ make -s

+

−

The resulting '''coreboot.rom''' is your coreboot ROM image you can flash using [[flashrom]].

+

after your payload is compiled(assuming you compiled the [[FILO]] payload), copy the resulting file to /tmp/filo.elf, then:

+

+

See the [[Build HOWTO]] for information on how to build coreboot for this board.

+

+

== Troubleshooting ==

+

+

So, you installed coreboot, and now your board doesn't boot?

+

+

First, check the serial port, and see what sort of output you're getting.

+

+

The following is what the section of coreboot on the P2B-F shows when enabling ram:

+

+

RAM Enable 1: Apply NOP

+

RAM Enable 2: Precharge all

+

RAM Enable 3: CBR

+

RAM Enable 4: Mode register set

+

RAM Enable 5: Normal operation

+

RAM Enable 6: Enable refresh

+

Enabling refresh (DRAMC = 0x09) for DIMM 00

+

+

If in your output, you do not see the 'Enabling refresh' line, your ram chip is not being detected, or refreshed. try a different dimm, and make sure you're placing it in slot 1 (the slot closest to the CPU).

+

+

If this doesn't solve your problem, remove all the PCI or ISA components. then remove your IDE and floppy devices, and try again. If that still does not give you output on the serial port, you likely have a bad flash or bad cable (you did test it, right?). if you get partial output from the serial, but do not get to the point where you see your payload booting your system, then its time to upload the serial output you're getting after simplifying your hardware configuration to a paste website, and drop by IRC or the mailing list, and ask for help.

Build tutorial

First, before thinking of using coreboot, make sure you have a backup of your current BIOS image(see Flashrom), and the correct facilities to replace that image, if it becomes corrupt. Assuming you have a backup and restore procedure, continue with the following(which may destroy your board anyways! you have been warned!)

It is recommended that you have a known good PCI video card, a known good single sided PC100 non-ecc dimm, and a known good null modem cable before you proceed, for error recovery. At this point, it is recommended that you have many dimms, as the timings are compiled into the bios, and theres no good way to know your dimm is going to work after flashing.

CoreBoot has multiple Payloads used for the boot process (SeaBIOS, FILO, GRUB2, etc), and you must build a payload first, so that CoreBoot can build it into itsself.

after your payload is compiled(assuming you compiled the FILO payload), copy the resulting file to /tmp/filo.elf, then:

See the Build HOWTO for information on how to build coreboot for this board.

Troubleshooting

So, you installed coreboot, and now your board doesn't boot?

First, check the serial port, and see what sort of output you're getting.

The following is what the section of coreboot on the P2B-F shows when enabling ram:

If in your output, you do not see the 'Enabling refresh' line, your ram chip is not being detected, or refreshed. try a different dimm, and make sure you're placing it in slot 1 (the slot closest to the CPU).

If this doesn't solve your problem, remove all the PCI or ISA components. then remove your IDE and floppy devices, and try again. If that still does not give you output on the serial port, you likely have a bad flash or bad cable (you did test it, right?). if you get partial output from the serial, but do not get to the point where you see your payload booting your system, then its time to upload the serial output you're getting after simplifying your hardware configuration to a paste website, and drop by IRC or the mailing list, and ask for help.

Known Working Revisions

This work is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or any later version. This work is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.