Difference between revisions of "Board:gigabyte/m57sli"

From coreboot
Jump to navigation Jump to search
(Name changed to coreboot)
Line 37: Line 37:
|IDE_25_status = N/A
|IDE_25_status = N/A
|IDE_CF_status = OK
|IDE_CF_status = OK
|IDE_CF_comments = Tested with an CF-IDE adapter without DMA support. Booting with LinuxBIOS is no problem. Booting with propritary BIOS didn't work.
|IDE_CF_comments = Tested with an CF-IDE adapter without DMA support. Booting with coreboot is no problem. Booting with propritary BIOS didn't work.
|CDROM_DVD_status = OK
|CDROM_DVD_status = OK
|SATA_status = OK
|SATA_status = OK
|SATA_comments = A FILO patch is needed (see below) as LinuxBIOS is too fast and the disks have not spun up yet when LinuxBIOS is done.
|SATA_comments = A FILO patch is needed (see below) as coreboot is too fast and the disks have not spun up yet when coreboot is done.
|USB_status = OK
|USB_status = OK
|USB_comments = Tested: mounting USB storage devices and accessing files on them. USB MIDI-keyboard works, too (keyboard == the music instrument, in this case).
|USB_comments = Tested: mounting USB storage devices and accessing files on them. USB MIDI-keyboard works, too (keyboard == the music instrument, in this case).
Line 71: Line 71:
|Floppy_comments = Should work, but doesn't.
|Floppy_comments = Should work, but doesn't.
|COM1_status = OK
|COM1_status = OK
|COM1_comments = Serial console for LinuxBIOS and Linux is fully operational.
|COM1_comments = Serial console for coreboot and Linux is fully operational.
|COM2_status = N/A
|COM2_status = N/A
|PP_status = OK
|PP_status = OK
|PP_comments = Doing '''modprobe parport parport_pc''' works, but no further tests were done.
|PP_comments = Doing '''modprobe parport parport_pc''' works, but no further tests were done.
|PS2_keyboard_status = OK
|PS2_keyboard_status = OK
|PS2_keyboard_comments = Validated when booting with a PCIe VGA card under FILO and Linux; LinuxBIOS logs an error ("keyboard init failed") but this is not critical.
|PS2_keyboard_comments = Validated when booting with a PCIe VGA card under FILO and Linux; coreboot logs an error ("keyboard init failed") but this is not critical.
|PS2_mouse_status = OK
|PS2_mouse_status = OK
|Game_port_status = Untested
|Game_port_status = Untested
Line 85: Line 85:


|Sensors_status = OK
|Sensors_status = OK
|Sensors_comments = Sensors and fans work, see [http://linuxbios.org/pipermail/linuxbios/2007-April/020230.html instructions]. Some sensor readouts are off, and the pwm polarity seems to be inverted, but fan speed can be set.
|Sensors_comments = Sensors and fans work, see [http://coreboot.org/pipermail/linuxbios/2007-April/020230.html instructions]. Some sensor readouts are off, and the pwm polarity seems to be inverted, but fan speed can be set.
|Watchdog_status = Untested
|Watchdog_status = Untested
|CAN_bus_status = N/A
|CAN_bus_status = N/A
Line 103: Line 103:
|WakeOnMouse_status = Untested
|WakeOnMouse_status = Untested
|Flashrom_status = OK
|Flashrom_status = OK
|Flashrom_comments = As of revision 2958, [[Flashrom]] now works under LinuxBIOS if you have a PLCC version of this board. Flashrom works fine under the proprietary BIOS. SPI flashing support is on its way, but not 100% there yet.
|Flashrom_comments = As of revision 2958, [[Flashrom]] now works under coreboot if you have a PLCC version of this board. Flashrom works fine under the proprietary BIOS. SPI flashing support is on its way, but not 100% there yet.


}}
}}
Line 124: Line 124:
shops, they do this sort of thing (and more advanced things) all day and should be able to help you for around $50 if you bring the needed components (PLCC socket, resistor, wire and switch). Possibly a friendly TV or radio repair shop could help too, but they may not have suitable soldering equipment for the surface mount parts.
shops, they do this sort of thing (and more advanced things) all day and should be able to help you for around $50 if you bring the needed components (PLCC socket, resistor, wire and switch). Possibly a friendly TV or radio repair shop could help too, but they may not have suitable soldering equipment for the surface mount parts.


Once you put a socket on the board, you will also discover that the [http://www.ioss.com.tw/web/English/RD1BIOSSavior/SelectionChart/PLCCTYPE/RD1PMC4.html RD1-PMC4 BiosSavior] does not work with this motherboard: the RD1's built-in chip seems to be incompatible with the mainboard. This means you will need to hot-swap BIOS chips until you have a working LinuxBIOS chip. Plugging your BIOS chip into the RD1 and switching it to 'ORG' does work though. I have used the BiosSavior to ease hot swapping; it's a lot easier to pull out the BiosSavior and replace the chip plugged into it than to replace the ROM chip on the board.
Once you put a socket on the board, you will also discover that the [http://www.ioss.com.tw/web/English/RD1BIOSSavior/SelectionChart/PLCCTYPE/RD1PMC4.html RD1-PMC4 BiosSavior] does not work with this motherboard: the RD1's built-in chip seems to be incompatible with the mainboard. This means you will need to hot-swap BIOS chips until you have a working coreboot chip. Plugging your BIOS chip into the RD1 and switching it to 'ORG' does work though. I have used the BiosSavior to ease hot swapping; it's a lot easier to pull out the BiosSavior and replace the chip plugged into it than to replace the ROM chip on the board.


This is the list of BiosSavior resellers: [http://www.ioss.com.tw/web/English/WheretoBuy.html IOSS].
This is the list of BiosSavior resellers: [http://www.ioss.com.tw/web/English/WheretoBuy.html IOSS].
Line 131: Line 131:
=== SOIC hardware hack ===
=== SOIC hardware hack ===


If you have an SOIC revision, you can add a second SOIC chip in the unpopulated position, and use a switch to toggle between both chips. Instructions can be found here [http://linuxbios.org/pipermail/linuxbios/2007-September/024395.html here], and here are [http://stuge.se/lb/m57sli/ some photos]. These instructions have been [http://www.linuxbios.org/pipermail/linuxbios/2007-October/025827.html confirmed to work], with more photos [http://illmeyer.com/hg87/ here].
If you have an SOIC revision, you can add a second SOIC chip in the unpopulated position, and use a switch to toggle between both chips. Instructions can be found here [http://coreboot.org/pipermail/linuxbios/2007-September/024395.html here], and here are [http://stuge.se/lb/m57sli/ some photos]. These instructions have been [http://www.coreboot.org/pipermail/linuxbios/2007-October/025827.html confirmed to work], with more photos [http://illmeyer.com/hg87/ here].


=== Flashrom ===
=== Flashrom ===


Flashrom works fine under the proprietary BIOS (PLCC32 version). There seem to be some issues under LinuxBIOS (PLCC32 version), see this  [http://tracker.linuxbios.org/trac/LinuxBIOS/ticket/87 this issue tracker ticket].  
Flashrom works fine under the proprietary BIOS (PLCC32 version). There seem to be some issues under coreboot (PLCC32 version), see this  [http://tracker.coreboot.org/trac/LinuxBIOS/ticket/87 this issue tracker ticket].  


Flashrom does not yet work on the SOIC version of the board, but that is being worked on. It will detect the SOIC chip, but the read and write functions are not implemented yet (as of 2007-10-13).
Flashrom does not yet work on the SOIC version of the board, but that is being worked on. It will detect the SOIC chip, but the read and write functions are not implemented yet (as of 2007-10-13).
Line 143: Line 143:
== Payload ==
== Payload ==


LinuxBIOS requires a [[Payloads|payload]] to boot an operating system.
Coreboot requires a [[Payloads|payload]] to boot an operating system.


If you want to boot from the network, you will need to use [http://www.etherboot.org Etherboot].  
If you want to boot from the network, you will need to use [http://www.etherboot.org Etherboot].  
Line 153: Line 153:
== Buildrom vs. manual build ==
== Buildrom vs. manual build ==


You can build a LinuxBIOS image with a kconfig-style configuration tool (buildrom) if you want to use FILO or LAB. This is by far the easiest way to build a ROM image. Continue to the [[#Buildrom|Buildrom section]].
You can build a coreboot image with a kconfig-style configuration tool (buildrom) if you want to use FILO or LAB. This is by far the easiest way to build a ROM image. Continue to the [[#Buildrom|Buildrom section]].


If you want another payload or would like to get closer to the metal, you can use the manual build method outlined below under [[#Manual build|Manual build]].
If you want another payload or would like to get closer to the metal, you can use the manual build method outlined below under [[#Manual build|Manual build]].
Line 163: Line 163:
Check out buildrom:
Check out buildrom:


   svn co svn://linuxbios.org/buildrom
   svn co svn://coreboot.org/buildrom


Now configure buildrom:
Now configure buildrom:
Line 252: Line 252:
== Manual build ==
== Manual build ==


Skip this section if you used buildrom; in that case jump to [[#Burning LinuxBIOS|Burning LinuxBIOS]] below.
Skip this section if you used buildrom; in that case jump to [[#Burning coreboot|Burning coreboot]] below.


=== Building the payload ===
=== Building the payload ===
Line 319: Line 319:
   terminal --timeout=15 serial console
   terminal --timeout=15 serial console


Now execute 'make', which will generate a filo.elf file that will be your payload. You will need to refer to this file to build LinuxBIOS as explained below, because it gets included in the LinuxBIOS ROM image.
Now execute 'make', which will generate a filo.elf file that will be your payload. You will need to refer to this file to build coreboot as explained below, because it gets included in the coreboot ROM image.


=== Your menu.lst entry ===
=== Your menu.lst entry ===
Line 337: Line 337:
Also, the GA-M57SLI-S4 will not boot unless you add acpi_use_timer_override as a kernel option - and use a modern kernel (tested on 2.6.20.1 and up). Hopefully this will be fixed in newer kernels. If you have a somewhat older kernel (tested with 2.6.16 and up), add these options: apic=debug acpi_dbg_level=0xffffffff pci=noacpi,routeirq snd-hda-intel.enable_msi=1.
Also, the GA-M57SLI-S4 will not boot unless you add acpi_use_timer_override as a kernel option - and use a modern kernel (tested on 2.6.20.1 and up). Hopefully this will be fixed in newer kernels. If you have a somewhat older kernel (tested with 2.6.16 and up), add these options: apic=debug acpi_dbg_level=0xffffffff pci=noacpi,routeirq snd-hda-intel.enable_msi=1.


=== Current status of the LinuxBIOSv2 tree ===
=== Current status of the coreboot v2 tree ===


Use revision 2619 or higher.
Use revision 2619 or higher.


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


Make sure that the path to your payload is correct, by editing  
Make sure that the path to your payload is correct, by editing  
Line 361: Line 361:
   make
   make


This will generate a linuxbios.rom image, which is 512KB large. That's the file that should be burned into your BIOS chip.
This will generate a coreboot.rom image, which is 512KB large. That's the file that should be burned into your BIOS chip.


== Burning LinuxBIOS ==
== Burning coreboot ==


Make SURE that you have a fallback position: a ROM chip with backup copy of your factory ROM image (you can make one with [[flashrom]]), and either a socket on the board to plug the backup chip into, or the tools and skills to remove a 'bricked' BIOS chip from the board and replace it with a socket for the backup chip.  
Make SURE that you have a fallback position: a ROM chip with backup copy of your factory ROM image (you can make one with [[flashrom]]), and either a socket on the board to plug the backup chip into, or the tools and skills to remove a 'bricked' BIOS chip from the board and replace it with a socket for the backup chip.  
Line 369: Line 369:
If you do not prepare properly, you are likely to brick your motherboard. You have been warned!
If you do not prepare properly, you are likely to brick your motherboard. You have been warned!


You can use flashrom from the LinuxBIOS v2 tree to burn the image:
You can use flashrom from the coreboot v2 tree to burn the image:


   util/flashrom/flashrom -v -w linuxbios.rom
   util/flashrom/flashrom -v -w coreboot.rom


(that's assuming the image is called linuxbios.rom; if you used buildrom it would be called gigabyte-m57sli.rom and live in the 'deploy' subdirectory).
(that's assuming the image is called coreboot.rom; if you used buildrom it would be called gigabyte-m57sli.rom and live in the 'deploy' subdirectory).


== TODO ==
== TODO ==

Revision as of 02:22, 12 January 2008