[LinuxBIOS] M57SLI Revision 2 SPI
peter at stuge.se
Sat Sep 8 20:38:25 CEST 2007
On Fri, Sep 07, 2007 at 06:46:17PM +0100, Chris Lingard wrote:
> Gigabyte have told me that the BIOS chip is made by SST, and the
> model name is SST25LF040A BIOS ROM which is PLCC32 type.
Nonsense, I'm afraid.
SST25LF040A is only available in 8-contact packages. (SOIC and WSON)
Whoever you had contact with at Gigabyte didn't know about the
different revisions of the board and their differences.
> I am now very confused because I have PLCC32 sockets and these are
> nothing like the BIOS chip which has 8 connections.
> (I have two PLCC32 sockets and four unused flash chips to give away,
> if they are no use to this version of the motherboard).
Correct, since you don't have PLCC chips you have the revision with
> I will probably try to source some of these chips, just in case the
> rest of the problems can be solved.
The hardware part is solved, but there's no support for flashing
in flashrom yet, you would have to reboot into another OS (DOS or
Windows) and use the Gigabyte-supplied flashing utility.
For the hardware mod you would need:
1x SST25LF040A or MX25L4005A
2x 100k resistors (0.125W ones are good size-wise)
1x SPDT (single pole dual throw) switch (break-before-make or
make-before-break doesn't matter much - neither will reliably allow
the switch to be flipped while the flash chip is being accessed.)
See http://stuge.se/m57sli_soic_detail_labels.jpg for contact names.
1. Lift the U5-CS# pin from the board.
2. Solder 1x 100k resistor between U5-VCC and the lifted U5-CS# pin.
3. Solder the center contact on the switch to the U5-CS# pad on the
4. Solder one outer contact on the switch to the U5-CS# pin, where
one end of the resistor in step 2 is also soldered.
5. Solder the new flash chip to the U9 pads. Note pin 1! There should
be a marking on the flash chip near one corner pin, that's pin 1,
6. Lift U9-CS# from the board. (Or just don't solder it in step 5.)
7. Solder 1x 100k resistor between U9-VCC and the lifted U9-CS# pin.
8. Solder the second outer contact on the switch to the U9-CS# pin,
where one end of the resistor in step 7 is also soldered.
Done! Now the switch controls which of U5 and U9 is actually
selected when the super io wants to access the flash chip.
You could get a biased (spring-loaded) switch in order to help
avoiding accidentally leaving the system running with the factory
BIOS chip selected when you're doing LB work - so that the next
flashing operation does not overwrite the wrong chip. You would need
to hold the switch while booting the factory BIOS, but that may be
worthwhile if you can't easily redo the soldering work if both flash
chips contain junk.
More information about the coreboot