Board:azza/pt-6ibd

From coreboot
Revision as of 14:05, 16 November 2008 by Uwe (Talk | contribs)

Jump to: navigation, search

This page describes how to use coreboot on the AZZA PT-6IBD board.

After noticing that my motherboard is not fully supported I found much appreciated help on IRC. I submitted some of my data to the guys there and with some patching things finally booted ;)

Manual: UM-IBD-E5.PDF

Status

Device/functionality Status Comments
CPU
CPU works OK
L1 cache enabled OK
L2 cache enabled WIP
L3 cache enabled N/A
Multiple CPU support N/A
Multi-core support N/A
Hardware virtualization N/A
RAM
EDO N/A
SDRAM WIP Currently the RAM init is hard-coded to a single 64MB DIMM with certain settings. This will be fixed soon.
SO-DIMM N/A
DDR N/A
DDR2 N/A
DDR3 N/A
Dual channel support N/A
ECC support WIP Not yet supported by the coreboot 440BX code. This board supports ECC according to the manual.
On-board Hardware
On-board IDE 3.5" OK
On-board IDE 2.5" N/A
On-board SATA N/A
On-board SCSI Unknown
On-board USB OK Tested: USB keyboard.
On-board VGA N/A
On-board ethernet N/A
On-board audio N/A
On-board modem N/A
On-board FireWire N/A
On-board smartcard reader N/A
On-board CompactFlash N/A
On-board PCMCIA N/A
Add-on slots/cards
ISA add-on cards Untested
Audio/Modem-Riser (AMR/CNR) cards N/A
PCI add-on cards OK
Mini-PCI add-on cards Unknown
PCI-X add-on cards Unknown
AGP graphics cards OK Tested: 3DFX Voodoo3.
PCI Express x1 add-on cards N/A
PCI Express x2 add-on cards N/A
PCI Express x4 add-on cards N/A
PCI Express x8 add-on cards N/A
PCI Express x16 add-on cards N/A
PCI Express x32 add-on cards N/A
HTX add-on cards N/A
Legacy / Super I/O
Floppy Untested
Serial port 1 (COM1) Untested
Serial port 2 (COM2) OK
Parallel port OK Doing modprobe ppdev works, but further tests were not performed.
PS/2 keyboard OK
PS/2 mouse OK
Game port N/A
Infrared Untested
PC speaker WIP Doing modprobe pcspkr works and device shows in /dev — I hear no sound, though (probably my configuration).
DiskOnChip N/A
Miscellaneous
Sensors / fan control Untested
Hardware watchdog Untested
SMBus Unknown
CAN bus N/A
CPU frequency scaling N/A
Other powersaving features Untested
ACPI No
Reboot OK
Poweroff No Probably needs ACPI to work.
Suspend Unknown
Nonstandard LEDs N/A
High precision event timers (HPET) N/A
Random number generator (RNG) N/A
Wake on modem ring Untested
Wake on LAN Untested
Wake on keyboard Untested
Wake on mouse Untested
Flashrom OK

Hardware

  • Northbridge: Intel 440BX
  • Southbridge: Intel 82371EB
  • Super I/O: Winbond W83977EF

To check the hardware the way coreboot sees it, I used already made programs that coreboot offers. As I use Gentoo, I hacked up a few ebuilds that install the latest svn versions of these programs. You can find them on this Gentoo Forums thread.

# superiotool -dV

Superiotool showed me which (if any) Super I/O chip is on the motherboard.

# flashrom -V

This tool showed me which ROM chip is used in the mainboard, and whether Flashrom supports it.

Build process

Checkout and Patching

After you get all the data from your computer by looking with eyes on the motherboard and checking the same things with the above programs, you need to do the following.

Make yourself a directory and checkout the svn repository for coreboot v2:

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

If you want to use the patch with Gentoo ebuilds, add it as specified here.

FILO

Then get FILO from svn:

# cd ..
# svn co svn://coreboot.org/filo/trunk/filo-0.5

First:

# cd filo-0.5
# make

Now edit the Config file with your favorite editor as you wish.

# nano Config

Here is what I ended up with:

USE_GRUB = 1
MENULST_FILE = "hda1:/boot/grub/menu.lst"
MENULST_TIMEOUT = 6
IDE_DISK = 1
VGA_CONSOLE = 1
PC_KEYBOARD = 1
SERIAL_CONSOLE = 1
SERIAL_IOBASE = 0x3f8
FSYS_EXT2FS = 1
SUPPORT_PCI = 1
PCI_BRUTE_SCAN = 1
LINUX_LOADER = 1

After you're satisfied do make again and copy filo.elf to /tmp:

# make
# cp filo.elf /tmp

Building coreboot

Lets create the coreboot.rom file for the motherboard:

# cd ../coreboot-v2/targets
# ./buildtarget azza/pt-6ibd && cd azza/pt-6ibd/pt-6ibd && make

We ended in the motherboard's directory, where the coreboot.rom file resides now.

Flashing coreboot

Let's put the newly made coreboot.rom file on the ROM chip. Be sure you have the right ROM chip in the board, so you don't accidentaly ruin your original chip.

Then do

# flashrom -wv coreboot.rom

Reboot

Now reboot the machine and see if it boots ok.

When I did the above procedure my coreboot made use of only 64 MB of RAM. Some additional patches are still needed (this is being worked on).

But the result is fantastic anyway. Usual time for boot was long, 10-15s at least, now its close to 0s.

GNU head 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.