Board:asus/m4a78-em: Difference between revisions

From coreboot
Jump to navigation Jump to search
m (FILO tested)
(Add build instructions after support added to trunk.)
Line 29: Line 29:
|RAM_ecc_comments =  
|RAM_ecc_comments =  


|IDE_status = Ok
|IDE_status = OK
|IDE_comments = Tested: CD/DVD-RW  
|IDE_comments = Tested: CD/DVD-RW  
|IDE_25_status = N/A
|IDE_25_status = N/A
|IDE_CF_status = Untested  
|IDE_CF_status = Untested  
|IDE_CF_comments =  
|IDE_CF_comments =  
|CDROM_DVD_status = Ok
|CDROM_DVD_status = OK
|CDROM_DVD_comments =  
|CDROM_DVD_comments =  
|SATA_status = OK
|SATA_status = OK
|SATA_comments = Tested: SATA port 1.
|SATA_comments = Tested: SATA port 1.
|USB_status = Untested
|SCSI_status = N/A
|USB_comments =  
|USB_status = OK
|USB_comments = Mouse attached crashes SeaBIOS
|Onboard_VGA_status = OK
|Onboard_VGA_status = OK
|Onboard_VGA_comments = Tested: DVI. Untested: HDMI, analog VGA.
|Onboard_VGA_comments = Tested: DVI and analog VGA. Untested: HDMI.
|Onboard_ethernet_status = OK
|Onboard_ethernet_status = OK
|Onboard_audio_status = Untested
|Onboard_audio_status = Untested
Line 84: Line 85:
|DiskOnChip_status = N/A
|DiskOnChip_status = N/A


|Sensors_status = Untested
|Sensors_status = OK
|Sensors_comments =  
|Sensors_comments = Single temperature reported.
|Watchdog_status = Untested
|Watchdog_status = Untested
|CAN_bus_status = N/A
|CAN_bus_status = N/A
|CPUfreq_status = Untested
|CPUfreq_status = OK
|CPUfreq_comments =  
|CPUfreq_comments = Powernow-K8 works.
|Powersave_status = Untested
|Powersave_status = Untested
|ACPI_status = Untested
|ACPI_status = Untested
Line 95: Line 96:
|Reboot_status = No
|Reboot_status = No
|Poweroff_status = No
|Poweroff_status = No
|LEDs_status =  
|LEDs_status = N/A
|LEDs_comments =  
|LEDs_comments =  
|HPET_status =  
|HPET_status = No
|HPET_comments =  
|HPET_comments = Linux detects, but disables HPET.
|RNG_status = Untested
|RNG_status = Untested
|WakeOnModem_status = Untested
|WakeOnModem_status = Untested
Line 119: Line 120:
* One of the six SATA ports is eSATA.
* One of the six SATA ports is eSATA.


Configuring and building Coreboot for the M4A785-M seemed to work quite well. (Tested on Coreboot SVN revision 6128.)
There is now (tested on revision 6151) support for M4A78-EM in Coreboot.
 
Get the Coreboot sources and build tools. Download or build a SeaBIOS binary.
 
VGA BIOS for the onboard ATI Radeon can be extracted from the original BIOS with the bios_extract utility.
 
Invoke menuconfig.
 
* Select Mainboard to be Asus M4A78-EM, ROM chip size 1 MB.
* From "Console options" select "Use onboard VGA as primary video device" if you use the onboard ATI Radeon.
* Add the extracted VGA BIOS, set PCI ids to 1002,9610.
* Add SeaBIOS payload.
 
Compile with make and flash.
 
 
==ROM Chip==


Up-to-date [[Flashrom]] should be able to detect, read, and write the BIOS ROM. The chip is 8 Mbit cFeon EN25F80. It is in DIP-8 package and installed in a socket, so it can be changed without soldering. The ROM is accessed via the SPI protocol. I also tested a Macronix MX25L8005 chip as a substitute, and it worked fine.
Up-to-date [[Flashrom]] should be able to detect, read, and write the BIOS ROM. The chip is 8 Mbit cFeon EN25F80. It is in DIP-8 package and installed in a socket, so it can be changed without soldering. The ROM is accessed via the SPI protocol. I also tested a Macronix MX25L8005 chip as a substitute, and it worked fine.


== Known issues ==
== Known issues ==


* Only FreeDOS has been successfully booted.
*  


=== RAM ===
=== RAM ===
Line 135: Line 151:
== [[Payloads]] ==
== [[Payloads]] ==


* [[SeaBIOS]] version 0.6.1 works  
* [[SeaBIOS]] version 0.6.1 works
** SeaBIOS loads Grub2 bootloader from SATA disk, but then Grub2 crashes and shuts down power.
** Can boot Debian Linux from SATA drive via Grub2.
** SeaBIOS recognizes IDE CDROM and can boot from it:
*** Debian "Squeeze" install CD results in freeze and blank screen
*** FreeDOS LiveCD boots ok.
* [[Coreinfo]] works.
* [[Coreinfo]] works.
** Both as standalone payload or loaded from SeaBIOS
** Both as standalone payload or loaded from SeaBIOS
** Both serial port and VGA+PS2 keyboard work.
** Both serial port and VGA+PS2 keyboard work.
* [[FILO]] works ok.
* [[FILO]] works ok.
** Booting Linux from SATA still fails with "Decompressing Linux ... Out of memory while allocating output buffer."

Revision as of 17:28, 8 December 2010

This HOWTO explains how to use coreboot on the ASUS M4A78-EM board.

Status

Device/functionality Status Comments
CPU
CPU works OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK Tested: AMD Sempron 140.
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 }}" | OK -
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
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 }}" | N/A N/A
DDR2 OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK 1G tested
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 }}" | OK Tested: CD/DVD-RW
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.
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 Mouse attached crashes SeaBIOS
On-board VGA OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK Tested: DVI and analog VGA. Untested: HDMI.
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 }}" | Untested -
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 }}" | 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 }}" | Untested -
Mini-PCI add-on cards OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
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 }}" | N/A
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 }}" | Untested
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 }}" | Untested
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 }}" | N/A There is no floppy connector at all.
Serial port 1 (COM1) OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK COM1 is only pin header on board. DB-9 serial connector is available, but not included with board.
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 }}" | Untested No connector, pin header on board only.
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 }}" | N/A
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 }}" | N/A
PC speaker OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Untested
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 Single temperature reported.
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 }}" | OK Powernow-K8 works.
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 }}" | Untested -
Reboot OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | No
Poweroff OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | No
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 }}" | No Linux detects, but disables HPET.
Random number generator (RNG) OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Untested
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 }}" |
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

Building coreboot

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

This board is very similar to ASUS M4A785-M. The major differences are

  • Chipset is AMD 780G and SB700 (instead of 785G and SB710).
  • On-board VGA is ATI Radeon HD3200 (instead of HD4200), PCI id 1002:9610 (instead of 1002:9710), and
  • One of the six SATA ports is eSATA.

There is now (tested on revision 6151) support for M4A78-EM in Coreboot.

Get the Coreboot sources and build tools. Download or build a SeaBIOS binary.

VGA BIOS for the onboard ATI Radeon can be extracted from the original BIOS with the bios_extract utility.

Invoke menuconfig.

  • Select Mainboard to be Asus M4A78-EM, ROM chip size 1 MB.
  • From "Console options" select "Use onboard VGA as primary video device" if you use the onboard ATI Radeon.
  • Add the extracted VGA BIOS, set PCI ids to 1002,9610.
  • Add SeaBIOS payload.

Compile with make and flash.


ROM Chip

Up-to-date Flashrom should be able to detect, read, and write the BIOS ROM. The chip is 8 Mbit cFeon EN25F80. It is in DIP-8 package and installed in a socket, so it can be changed without soldering. The ROM is accessed via the SPI protocol. I also tested a Macronix MX25L8005 chip as a substitute, and it worked fine.

Known issues

RAM

  • 1 GB RAM (1 x Kingston KVR800D2N5/1G) - Boots


Payloads

  • SeaBIOS version 0.6.1 works
    • Can boot Debian Linux from SATA drive via Grub2.
  • Coreinfo works.
    • Both as standalone payload or loaded from SeaBIOS
    • Both serial port and VGA+PS2 keyboard work.
  • FILO works ok.