I spoke with carldani in #coreboot about running coreboot on my MSI K9AGM3-F. Details below. The first problem is that the BIOS is soldered to the board. However, there is SPI access[1][2]. I understand the code is not perfect, but should be usable. I'm no expert, but where I can I'd like to help.
Page [2] builds an external programmer using a parallel port. Unfortunately, I do not have such a port sitting around. I do have a serial port. I'd be very pleased if someone could help me build a programmer for it. I can't make schematics, but I can solder.
At the end of the day, my board needs to be usable. It's not doing anything mission-critical, but I can't make this an eternal project, either. I am willing to invest time and effort, perform tests where I can, provide feedback, that sort of thing.
Board details: CPU: AMD Athlon(tm) X2 Dual Core Processor BE-2300 NB: AMD 960V SB: ATI SB600 MB: MSI K9AGM3-F lspci: 00:00.0 Host bridge: ATI Technologies Inc RS690 Host Bridge 00:01.0 PCI bridge: ATI Technologies Inc RS690 PCI to PCI Bridge (Internal gfx) 00:07.0 PCI bridge: ATI Technologies Inc RS690 PCI to PCI Bridge (PCI Express Port 3) 00:12.0 SATA controller: ATI Technologies Inc SB600 Non-Raid-5 SATA 00:13.0 USB Controller: ATI Technologies Inc SB600 USB (OHCI0) 00:13.1 USB Controller: ATI Technologies Inc SB600 USB (OHCI1) 00:13.2 USB Controller: ATI Technologies Inc SB600 USB (OHCI2) 00:13.3 USB Controller: ATI Technologies Inc SB600 USB (OHCI3) 00:13.4 USB Controller: ATI Technologies Inc SB600 USB (OHCI4) 00:13.5 USB Controller: ATI Technologies Inc SB600 USB Controller (EHCI) 00:14.0 SMBus: ATI Technologies Inc SBx00 SMBus Controller (rev 14) 00:14.1 IDE interface: ATI Technologies Inc SB600 IDE 00:14.2 Audio device: ATI Technologies Inc SBx00 Azalia 00:14.3 ISA bridge: ATI Technologies Inc SB600 PCI to LPC Bridge 00:14.4 PCI bridge: ATI Technologies Inc SBx00 PCI to PCI Bridge 00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] HyperTransport Technology Configuration 00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Address Map 00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM Controller 00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Miscellaneous Control 01:05.0 VGA compatible controller: ATI Technologies Inc RS690 [Radeon X1200 Series] 02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 01) 03:02.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10) end lspci Super IO: Fintek F71882FG BIOS chip type: SOIC8 (also see [1]) URL: http://global.msi.com.tw/index.php?func=proddesc&prod_no=1346&mainca...
[1] http://img48.imageshack.us/img48/9302/dsc00351lo.jpg [2] http://www.fccps.cz/download/adv/frr/spi/msi_spi.html
Wouter de Groot wrote:
SPI access[1][2]
..
I'd be very pleased if someone could help me build a programmer for it. I can't make schematics, but I can solder.
At the end of the day, my board needs to be usable.
Suggest that you buy/make a USB->SPI bridge. FTDI modules can do this. They can then be programmed from Linux or Windows.
See thread at http://www.coreboot.org/pipermail/coreboot/2008-December/043511.html
When someone has/makes their own programmer we will support it in flashrom through a simple plugin scheme yet TBD. But it will be fleshed out quickly because it is very simple.
//Peter
On 06.03.2009 21:08, Peter Stuge wrote:
Wouter de Groot wrote:
SPI access[1][2]
..
I'd be very pleased if someone could help me build a programmer for it. I can't make schematics, but I can solder.
At the end of the day, my board needs to be usable.
Suggest that you buy/make a USB->SPI bridge. FTDI modules can do this. They can then be programmed from Linux or Windows.
See thread at http://www.coreboot.org/pipermail/coreboot/2008-December/043511.html
When someone has/makes their own programmer we will support it in flashrom through a simple plugin scheme yet TBD. But it will be fleshed out quickly because it is very simple.
Actually, the first half of plugin support in flashrom has already been merged. SPI is already completely plugin-ready. A plugin for an external flasher simply registers as SPI chipset driver. No further changes needed. LPC/FWH/Parallel is mostly done. The mmap operations need to be abstracted out, the driver for the external flasher has to register its own version of chip_readb/chip_writeb and you're done except for cosmetic changes.
Regards, Carl-Daniel
Carl-Daniel Hailfinger wrote:
..
While some changes were made in the plugin direction, there is still work to do. As I wrote, it will be finished quickly when there is motivation, but there is still work to be done.
//Peter