Difference between revisions of "Board:asus/a8v-e deluxe"

From coreboot
Jump to navigation Jump to search
(Various updates.)
m
Line 83: Line 83:
|CPUfreq_comments = Doesn't work, yet.
|CPUfreq_comments = Doesn't work, yet.
|Powersave_status = N/A
|Powersave_status = N/A
|ACPI_status = WIP
|ACPI_status = Untested
|ACPI_comments = Exact status unknown/untested. Originally implemented for ASUS A8V-E SE, might need some changes. Reboot and poweroff do work ok, though.
|ACPI_comments = Exact status unknown/untested. Originally implemented for ASUS A8V-E SE, might need some changes. Reboot and poweroff do work ok, though.
|Reboot_status = OK
|Reboot_status = OK
Line 162: Line 162:
</pre>
</pre>


Then, place your payload (usually [[FILO]]) into '''/tmp/filo.elf''' and build coreboot as usual:
Then, place your [[Payloads|payload]] (usually [[FILO]]) into '''/tmp/filo.elf''' and build coreboot as usual:


  $ cd target
  $ cd target
Line 168: Line 168:


The resulting '''coreboot.rom''' (512 KB) can now be flashed on a ROM chip.
The resulting '''coreboot.rom''' (512 KB) can now be flashed on a ROM chip.
It's possible to use a 1 MB ROM chip on this board. You'll have to change '''ROM_SIZE''' in '''targets/asus/a8v-e_se/Config.lb''' to make '''coreboot.rom''' bigger for that.


== Booting coreboot ==
== Booting coreboot ==

Revision as of 01:53, 13 March 2008

This page describes how to use coreboot on the ASUS A8V-E Deluxe mainboard. It is maintained by Uwe Hermann.

Status

Device/functionality Status Comments
CPU
CPU works OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK I'm using: CPU model AMD Sempron(tm) Processor 3200+
L1 cache enabled OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK CPU: L1 I Cache: 64K (64 bytes/line), D cache 64K (64 bytes/line)
L2 cache enabled OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK CPU: L2 Cache: 256K (64 bytes/line)
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 }}" | Untested I don't have a multicore CPU to test with.
Hardware virtualization OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Untested
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 }}" | N/A
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 }}" | OK Tested: one 256 MB DIMM in slot DIMM_B1 (see manual).
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 }}" | Untested
ECC support OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Untested
On-board Hardware
On-board IDE 3.5" OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | WIP Doesn't seem to work, yet.
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 }}" | OK Tested: SATA port 1 (hda in FILO). SATA port 2 doesn't seem to work, yet.
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 all 8 USB ports.
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 }}" | OK
On-board Audio OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
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 }}" | Untested
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 }}" | N/A
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 Tested: PCI VGA card in all 3 PCI slots.
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 }}" | N/A
PCI Express x1 add-on cards OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK Tested: PCI Express x1 network card in the first slot (nearer to CPU). Not sure if the other slot works ok.
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 }}" | OK Tested: PCI Express x16 VGA card. Works using the ati X11 driver.
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 }}" | WIP Doesn't seem to work, yet. Might be a Super I/O problem.
Serial port 1 (COM1) OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
Serial port 2 (COM2) OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Parallel port OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK Tested: Parallel-port JTAG adapter using openocd, works fine after modprobe ppdev.
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 }}" | OK Works fine after modprobe analog and modprobe ns558. Tested using jscalibrator.
Infrared OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" |
PC speaker OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
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 }}" | OK The k8temp module loads fine, the sensors tool outputs the CPU temperature correctly. The w83627ehf module (for various temperatures and fan speeds) works fine. Also, the eeprom and i2c-viapro / i2c-dev modules load fine.
Hardware watchdog OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Untested The VT8237R seems to have a watchdog timer, but it's 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 }}" | WIP Doesn't work, yet.
Other powersaving features OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
ACPI OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Untested Exact status unknown/untested. Originally implemented for ASUS A8V-E SE, might need some changes. Reboot and poweroff do work ok, though.
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 }}" | OK
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 }}" | OK There's a power-on LED on the board PCB, it lights up when the board is powered up.
High precision event timers (HPET) OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK The dmesg output has ACPI: HPET id: 0x102282a0 base: 0xfed00000, and hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0, and hpet0: 3 32-bit timers, 14318180 Hz. Powertop reports a very good value of 9 wake-ups-from-idle per second, which indicates that HPET support might work ok.
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 Works fine with coreboot and with the proprietary BIOS. The board/chipset/flashrom can decode 1MB chips fine.

Hardware

  • AMD K8
  • VIA K8T890
  • VIA VT8237R
  • Winbond W83627EHF

lspci -tvnn

-[0000:00]-+-00.0  VIA Technologies, Inc. K8T890 Host Bridge [1106:0238]
           +-00.1  VIA Technologies, Inc. K8T890 Host Bridge [1106:1238]
           +-00.2  VIA Technologies, Inc. K8T890 Host Bridge [1106:2238]
           +-00.3  VIA Technologies, Inc. K8T890 Host Bridge [1106:3238]
           +-00.4  VIA Technologies, Inc. K8T890 Host Bridge [1106:4238]
           +-00.5  VIA Technologies, Inc. K8T890 I/O APIC Interrupt Controller [1106:5238]
           +-00.7  VIA Technologies, Inc. K8T890 Host Bridge [1106:7238]
           +-01.0-[0000:01]--
           +-02.0-[0000:02]--
           +-03.0-[0000:03]--
           +-03.1-[0000:04]--
           +-03.2-[0000:05]----00.0  Marvell Technology Group Ltd. 88E8053 PCI-E Gigabit Ethernet Controller [11ab:4362]
           +-03.3-[0000:06]--
           +-07.0 Marvell Technology Group Ltd. 88W8310 and 88W8000G [Libertas] 802.11g client chipset [11ab:1fa7]
           +-08.0 Texas Instruments TSB43AB22/A IEEE-1394a-2000 Controller (PHY/Link) [104c:8023]
           +-0f.0  VIA Technologies, Inc. VIA VT6420 SATA RAID Controller [1106:3149]
           +-0f.1  VIA Technologies, Inc. VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE [1106:0571]
           +-10.0  VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller [1106:3038]
           +-10.1  VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller [1106:3038]
           +-10.2  VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller [1106:3038]
           +-10.3  VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller [1106:3038]
           +-10.4  VIA Technologies, Inc. USB 2.0 [1106:3104]
           +-11.0  VIA Technologies, Inc. VT8237 ISA bridge [KT600/K8T800/K8T890 South] [1106:3227]
           +-11.5  VIA Technologies, Inc. VT8233/A/8235/8237 AC97 Audio Controller [1106:3059]
           +-11.6  VIA Technologies, Inc. AC'97 Modem Controller [1106:3068]
           +-18.0  Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] HyperTransport Technology Configuration [1022:1100]
           +-18.1  Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Address Map [1022:1101]
           +-18.2  Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM Controller [1022:1102]
           \-18.3  Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Miscellaneous Control [1022:1103]

Building coreboot

Currently there is no special target for the ASUS A8V-E Deluxe in coreboot. Instead, we use the ASUS A8V-E SE target.

You have to apply the following patch to svn so the board boots (at least when using a Sempron CPU which doesn't seem to support an LDT frequency of 1000MHz):

Index: src/mainboard/asus/a8v-e_se/cache_as_ram_auto.c
===================================================================
--- src/mainboard/asus/a8v-e_se/cache_as_ram_auto.c     (revision 3127)
+++ src/mainboard/asus/a8v-e_se/cache_as_ram_auto.c     (working copy)
@@ -308,7 +308,7 @@
        needs_reset |= optimize_link_incoherent_ht(sysinfo);

        /* Fixme it assumes that 1000MHz LDT is selected. */
-       needs_reset |= k8t890_early_setup_car(16, 0x6);
+       needs_reset |= k8t890_early_setup_car(16, 0x5);

        if (needs_reset) {
                print_debug("ht reset -\r\n");

Then, place your payload (usually FILO) into /tmp/filo.elf and build coreboot as usual:

$ cd target
$ ./buildtarget asus/a8v-e_se && cd asus/a8v-e_se/asus_a8v-e_se && make

The resulting coreboot.rom (512 KB) can now be flashed on a ROM chip.

It's possible to use a 1 MB ROM chip on this board. You'll have to change ROM_SIZE in targets/asus/a8v-e_se/Config.lb to make coreboot.rom bigger for that.

Booting coreboot

  • Booting from SATA port 1 works using FILO and this config (I have my root filesystem on /dev/sda2 as viewed from Linux):
 kernel=hda2:/vmlinuz initrd=/initrd.img root=/dev/sda2 console=tty0 console=ttyS0,115200
  • Booting from SATA port 2 doesn't yet work, I'll investigate.
  • Booting from IDE doesn't yet work, I'll investigate.

Comparing boot time

TODO.

BIOS Power up — OS loader OS loader — Linux Linux — shell Summary
Vendor BIOS (boot from SATA disk) ? ? ? ?
coreboot (boot from SATA disk) ? ? ? ?
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.