From coreboot
Revision as of 20:14, 21 September 2010 by Juhe (talk | contribs) (Known issues)
Jump to: navigation, search

The wiki is being retired!

Documentation is now handled by the same processes we use for code: Add something to the Documentation/ directory in the coreboot repo, and it will be rendered to Contributions welcome!

This HOWTO explains how to use coreboot on the ASUS M4A785-M board.


Device/functionality Status Comments
CPU works OK Tested: AMD Athlon64 X2 240e.
L1 cache enabled OK -
L2 cache enabled OK -
L3 cache enabled N/A
Multiple CPU support N/A
Multi-core support OK
Hardware virtualization OK
DDR2 OK 2G works, 4G or more does not.
Dual channel support Untested
ECC support Untested
On-board Hardware
On-board IDE 3.5" OK
On-board IDE 2.5" N/A
On-board SATA OK SATA ports 5-6 untested
On-board SCSI Unknown
On-board USB
On-board VGA OK
On-board Ethernet OK
On-board Audio No Linux driver crashes.
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
On-board Wifi N/A
On-board Bluetooth N/A
On-board SD card reader N/A
Add-on slots/cards
ISA add-on cards N/A
Audio/Modem-Riser (AMR/CNR) cards N/A
PCI add-on cards OK See known issues.
Mini-PCI add-on cards N/A
Mini-PCI-Express add-on cards Unknown
PCI-X add-on cards N/A
AGP graphics cards N/A
PCI Express x1 add-on cards
PCI Express x2 add-on cards N/A
PCI Express x4 add-on cards Untested
PCI Express x8 add-on cards N/A
PCI Express x16 add-on cards Untested
PCI Express x32 add-on cards N/A
HTX add-on cards N/A
Legacy / Super I/O
Floppy N/A
Serial port 1 (COM1) OK No DB-9 connector, pins on board only
Serial port 2 (COM2) N/A
Parallel port Untested No connector, pins on board only
PS/2 keyboard OK
PS/2 mouse Untested
Game port N/A
Infrared N/A
PC speaker Untested
DiskOnChip N/A
Trackpoint N/A
Touchpad N/A
Fn Hotkeys N/A
Fingerprint Reader N/A
Docking VGA N/A
Docking LAN N/A
Docking USB N/A
Docking Audio N/A
Docking Displayport N/A
Thinklight N/A
Webcam N/A
Sensors / fan control Untested
Hardware watchdog N/A
SMBus Unknown
CAN bus N/A
CPU frequency scaling Untested
Other powersaving features Untested
ACPI Partial
Suspend Unknown
Nonstandard LEDs
High precision event timers (HPET)
Random number generator (RNG) Untested
Wake on modem ring Untested
Wake on LAN
Wake on keyboard Untested
Wake on mouse Untested
TPM Unknown
Flashrom OK

Building coreboot

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

Here are two alternative build methods. When the second one is tested to work, the first one should be removed from this page.

Method 1: Apply patches

This is a more complicated method, but it is tested to work on revision 5795 and 5792. Find patches from the mailing list.

1. Check out Coreboot from SVN

2. chdir to coreboot

svn cp src/mainboard/amd/tilapia_fam10 src/mainboard/asus/m4a785-m

4. Apply patches

 % patch -p1 < ../patches/asus-m4a785m-small-patch.patch
 % patch -p1 < ../patches/multiboot-table-after-cb-table-r5756-v2.patch
 % patch -p1 < ../patches/generic-code-patches-for-m4a785m.patch
make menuconfig
  • Select mainboard vendor Asus and model M4A785-M
  • Select ROM chip size 1 MByte
  • Select Use VGA console once initialized
  • Select Use onboard VGA as primary video device (if you are using it)
  • Add payload (grub2 and coreinfo tested to work)
  • Add VGA BIOS, if you are going to use the onboard VGA.

The BIOS for the on-board ATI Radeon HD 4200 can be extracted with dd from /dev/mem as shown in VGA_support . The bios_extract utility can extract some other option ROMs, but it crashes before it gets the VGA ROM.

  • If on-board VGA BIOS is added, set VGA device PCI IDs to "1002,9710"

6. make

  • The result should be a working coreboot.rom.

Method 2: Use trunk code

The patches used above are integrated to the Coreboot trunk in revision 5809 and later. However, revision 5796 introduced some changes that cause the SATA and USB controllers to not work anymore.

This will likely be corrected in some later revision, but it is not tested.

Trunk version can be built using the above instructions, but obviously skipping the svn copy and patching steps.

Known issues

  • The on-board "Azalia" audio codec does not work. Linux probes and finds it, but the driver in Linux 2.6.32 either crashes or causes a flood of interupts. The solution is to configure Linux to not load the driver snd-hda-intel module on boot.
  • After flashing Coreboot, soft reboot to Coreboot usually fails. Hard reset button results in a successful boot.


  • 2 GB RAM (1x2GB) - Boots
  • 4 GB RAM (2x2GB) - Payload crashes
  • 6 GB RAM (3x2GB) - Payload crashes

Public domain I, the copyright holder of this work, hereby release it into the public domain. This applies worldwide.

In case this is not legally possible:
I grant anyone the right to use this work for any purpose, without any conditions, unless such conditions are required by law.