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.

−

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.

+

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.

* Boot succeeds with Intel e100 network card or Tekram TR-822 SATA card, and Linux loads card drivers, but operation was not confirmed. Network card did not manage to transfer data, although link was established. SATA card was tested only for booting. SeaBIOS recognized the controller and drive, but GRUB failed to load completely.

=== RAM ===

=== RAM ===

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

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

−

== [[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."

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

Boot succeeds with Intel e100 network card or Tekram TR-822 SATA card, and Linux loads card drivers, but operation was not confirmed. Network card did not manage to transfer data, although link was established. SATA card was tested only for booting. SeaBIOS recognized the controller and drive, but GRUB failed to load completely.