Board:azza/pt-6ibd: Difference between revisions

From coreboot
Jump to navigation Jump to search
m (Phcoder moved page AZZA PT-6IBD to Board:azza/pt-6ibd)
 
(7 intermediate revisions by 2 users not shown)
Line 1: Line 1:
This page describes how to use LinuxBIOS on the '''[http://web.tiscali.it/acorp/mobo_spec/azza/pt-6ibd/pt-6ibd.htm AZZA PT-6IBD]'''.
This page describes how to use coreboot on the '''[http://web.tiscali.it/acorp/mobo_spec/azza/pt-6ibd/pt-6ibd.htm AZZA PT-6IBD]''' board.
   
   
After noticing that my motherboard is not fully supported I found much appreciated help on [[IRC]]. I submited some of my data to the guys there and with some patching things finally booted. ;)
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:''' [http://www.elhvb.com/mobokive/Archive/Azza/manual/UM-IBD-E5.PDF UM-IBD-E5.PDF]
'''Manual:''' [http://www.elhvb.com/mobokive/Archive/Azza/manual/UM-IBD-E5.PDF UM-IBD-E5.PDF]
Line 12: Line 12:
|CPU_L1_status = OK
|CPU_L1_status = OK
|CPU_L2_status = WIP
|CPU_L2_status = WIP
|CPU_L3_status = N/A
|CPU_multiple_status = N/A
|CPU_multiple_status = N/A
|CPU_multicore_status = N/A
|CPU_multicore_status = N/A
Line 22: Line 23:
|RAM_DDR_status = N/A
|RAM_DDR_status = N/A
|RAM_DDR2_status = N/A
|RAM_DDR2_status = N/A
|RAM_DDR3_status = N/A
|RAM_dualchannel_status = N/A
|RAM_dualchannel_status = N/A
|RAM_ecc_status = WIP
|RAM_ecc_status = WIP
|RAM_ecc_comments = Not yet supported by the LinuxBIOS 440BX code. This board supports ECC according to the manual.
|RAM_ecc_comments = Not yet supported by the coreboot 440BX code. This board supports ECC according to the manual.


|IDE_status = OK
|IDE_status = OK
Line 45: Line 47:


|ISA_cards_status = Untested
|ISA_cards_status = Untested
|AMR_cards_status = N/A
|AGP_cards_status = OK
|AGP_cards_status = OK
|AGP_cards_comments = Tested: 3DFX Voodoo3.
|AGP_cards_comments = Tested: 3DFX Voodoo3.
|PCI_cards_status = OK
|PCI_cards_status = OK
|PCIE_cards_status = N/A
|PCIE_x1_status = N/A
|PCIE_x1_status = N/A
|PCIE_x2_status = N/A
|PCIE_x2_status = N/A
Line 62: Line 64:
|PP_status = OK
|PP_status = OK
|PP_comments = Doing '''modprobe ppdev''' works, but further tests were not performed.
|PP_comments = Doing '''modprobe ppdev''' works, but further tests were not performed.
|PS2_keyboard_status = Untested
|PS2_keyboard_status = OK
|PS2_mouse_status = Untested
|PS2_mouse_status = OK
|Game_port_status = N/A
|Game_port_status = N/A
|IR_status = Untested
|IR_status = Untested
Line 81: Line 83:
|LEDs_status = N/A
|LEDs_status = N/A
|HPET_status = N/A
|HPET_status = N/A
|RNG_status = N/A
|WakeOnModem_status = Untested
|WakeOnModem_status = Untested
|WakeOnLAN_status = Untested
|WakeOnLAN_status = Untested
Line 96: Line 99:
* '''Super I/O:''' Winbond W83977EF
* '''Super I/O:''' Winbond W83977EF


To check the hardware the way LinuxBIOS sees it, I used already made programs that LinuxBIOS 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 [http://forums.gentoo.org/viewtopic-t-604607.html this Gentoo Forums thread].
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 [http://forums.gentoo.org/viewtopic-t-604607.html this Gentoo Forums thread].


  # superiotool -dV
  # superiotool -dV
Line 112: Line 115:
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.
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 LinuxBIOSv2:
Make yourself a directory and checkout the svn repository for coreboot:


  # svn co svn://linuxbios.org/repos/trunk/LinuxBIOSv2
  # svn co svn://coreboot.org/coreboot/trunk coreboot


If you want to use the patch with Gentoo ebuilds, add it as specified [http://forums.gentoo.org/viewtopic-p-4428215.html#4428215 here].
If you want to use the patch with Gentoo ebuilds, add it as specified [http://forums.gentoo.org/viewtopic-p-4428215.html#4428215 here].
 
=== FILO ===
=== FILO ===


Line 123: Line 126:


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


First:
First:
Line 154: Line 157:
  # cp filo.elf /tmp
  # cp filo.elf /tmp


=== Building LinuxBIOS ===
=== Building coreboot ===


Lets create the '''linuxbios.rom''' file for the motherboard:
Lets create the '''coreboot.rom''' file for the motherboard:
   
   
  # cd ../LinuxBIOSv2/targets
  # cd ../coreboot/targets
  # ./buildtarget azza/pt-6ibd && cd azza/pt-6ibd/pt-6ibd && make
  # ./buildtarget azza/pt-6ibd && cd azza/pt-6ibd/pt-6ibd && make


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


== Flashing LinuxBIOS ==
== Flashing coreboot ==
   
   
Let's put the newly made '''linuxbios.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.
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
Then do


  # flashrom -wv linuxbios.rom
  # flashrom -wv coreboot.rom


== Reboot ==
== Reboot ==
Line 175: Line 178:
Now reboot the machine and see if it boots ok.
Now reboot the machine and see if it boots ok.


When I did the above procedure my LinuxBIOS made use of only 64 MB of RAM. Some additional patches are still needed (this is being worked on).
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.
But the result is fantastic anyway. Usual time for boot was long, 10-15s at least, now its close to 0s.


{{GPL}}
{{GPL}}

Latest revision as of 23:21, 18 January 2014

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=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
L1 cache enabled OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
L2 cache enabled OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | WIP
L3 cache enabled OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Multiple CPU support OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Multi-core support OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Hardware virtualization OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
RAM
EDO OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
SDRAM OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | WIP Currently the RAM init is hard-coded to a single 64MB DIMM with certain settings. This will be fixed soon.
SO-DIMM OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
DDR OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
DDR2 OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
DDR3 OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Dual channel support OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
ECC support OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | 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=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
On-board IDE 2.5" OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
On-board SATA OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
On-board SCSI OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Unknown
On-board USB OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK Tested: USB keyboard.
On-board VGA OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
On-board Ethernet OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
On-board Audio OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
On-board Modem OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
On-board FireWire OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
On-board Smartcard reader OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
On-board CompactFlash OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
On-board PCMCIA OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
On-board Wifi OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
On-board Bluetooth OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
On-board SD card reader OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Add-on slots/cards
ISA add-on cards OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Untested
Audio/Modem-Riser (AMR/CNR) cards OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
PCI add-on cards OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
Mini-PCI add-on cards OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Unknown
Mini-PCI-Express add-on cards OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Unknown
PCI-X add-on cards OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Unknown
AGP graphics cards OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK Tested: 3DFX Voodoo3.
PCI Express x1 add-on cards OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
PCI Express x2 add-on cards OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
PCI Express x4 add-on cards OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
PCI Express x8 add-on cards OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
PCI Express x16 add-on cards OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
PCI Express x32 add-on cards OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
HTX add-on cards OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Legacy / Super I/O
Floppy OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Untested
Serial port 1 (COM1) OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Untested
Serial port 2 (COM2) OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
Parallel port OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK Doing modprobe ppdev works, but further tests were not performed.
PS/2 keyboard OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
PS/2 mouse OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
Game port OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Infrared OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Untested
PC speaker OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | WIP Doing modprobe pcspkr works and device shows in /dev — I hear no sound, though (probably my configuration).
DiskOnChip OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Input
Trackpoint OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Touchpad OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Fn Hotkeys OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Fingerprint Reader OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Laptop
Docking VGA OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Docking LAN OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Docking USB OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Docking Audio OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Docking Displayport OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Thinklight OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Webcam OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Miscellaneous
Sensors / fan control OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Untested
Hardware watchdog OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Untested
SMBus OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Unknown
CAN bus OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
CPU frequency scaling OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Other powersaving features OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Untested
ACPI OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | No
Reboot OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
Poweroff OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | No Probably needs ACPI to work.
Suspend OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Unknown
Nonstandard LEDs OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
High precision event timers (HPET) OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Random number generator (RNG) OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Wake on modem ring OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Untested
Wake on LAN OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Untested
Wake on keyboard OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Untested
Wake on mouse OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Untested
TPM OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Unknown
Flashrom OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | 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:

# svn co svn://coreboot.org/coreboot/trunk coreboot

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/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.