Difference between revisions of "Board:gigabyte/m57sli"

From coreboot
Jump to navigation Jump to search
Line 26: Line 26:
   [http://www.openbios.org/pipermail/linuxbios/2007-January/017994.html Patch 2]
   [http://www.openbios.org/pipermail/linuxbios/2007-January/017994.html Patch 2]
   [http://www.openbios.org/pipermail/linuxbios/2007-January/017995.html Patch 3]
   [http://www.openbios.org/pipermail/linuxbios/2007-January/017995.html Patch 3]
The code comes with a script called 'nsf', which, out of the box, is quite dangerous. NEVER run this script as root without any arguments - it will wipe out half of your system. I suggest you replace it with this version instead:
<pre>
#!/bin/bash
MBVENDOR=$1
MBMODEL=$2
LBROOT=/home/yhlu/xx/xx/xx/
if [ "$MBVENDOR" = "" ] || [ "$MBMODEL" = "" ]; then
        cat ./readme_mcp55.txt
        echo
        echo "ERROR: Not enough command line arguments"
        exit 1
fi
echo $MBVENDOR/$MBMODEL
date
cd "$LBROOT/freebios2/targets"
rm -rf "$MBVENDOR/$MBMODEL/$MBMODEL"
./buildtarget "$MBVENDOR/$MBMODEL" &> "$LBROOT/x_b.txt"
cd "$MBVENDOR/$MBMODEL/$MBMODEL"
#make clean
eval make &> "$LBROOT/x_m.txt"
        if [ $? -eq 0 ]; then
                echo "ok."
        else
                echo "FAILED! Log excerpt:"
                tail -n 20 "$LBROOT/x_m.txt"
                exit
        fi
cat ./normal/linuxbios.rom ./fallback/linuxbios.rom ./failover/linuxbios.rom > "$LBROOT/rom/"$MBMODEL"_linuxbios.rom"
ls -l "$LBROOT/"$MBMODEL"_linuxbios.rom"
date
</pre>


===This is Work-In-Progress!===
===This is Work-In-Progress!===

Revision as of 19:14, 19 March 2007

Before you begin

The Gigabyte M57SLI-S4 seems to exist in at least 2 versions: one with a PLCC socket for the BIOS chip (socketed BIOS), and one with the PLCC BIOS chip soldered onto the board (soldered BIOS). The former might be a pre-production board since nobody has so far (2007/03) confirmed the purchase of a M57SLI-S4 board with socketed BIOS.

The fact that the BIOS is soldered onto the board complicates matters considerably, because it means that one flash of a faulty BIOS will 'brick' your board.

It is possible to desolder the BIOS chip, and replace it with a PLCC socket. You will need some good tools (heat gun/pencil, good soldering iron, etc) and soldering experience to do that. There has also been some speculation about the paths that are visible on the board for a second PLCC chip, and whether it would be possible to put a PLCC socket on there and switch between the on-board BIOS and the socketed BIOS.

If you're going to work on this board, I suggest you put a socket on it, or ask a friend to do so. It's just too risky otherwise.

Once you put a socket on the board, you will also discover that the 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.

Finding a BiosSavior can be a little tricky - most resellers seem to be out of stock, and the rumor is that IOSS has stopped producing them. This is the list of resellers:

 http://www.ioss.com.tw/web/English/WheretoBuy.html

I was able to purchase a couple (2007/03) from Eksitdata in Sweden.

This wiki page is maintained by Ward Vandewege (ward at gnu dot org).

Current status of the LBv2 tree

As of 2007-03-19, the v2 tree does not yet have all the necessary patches to build a working LinuxBIOS for the M57SLI-S4. For now, we have to work from the patches that Yinghai Lu sent to the LinuxBIOS list on January 18. Download all three archives and extract them into a directory on your system:

 Patch 1
 Patch 2
 Patch 3

The code comes with a script called 'nsf', which, out of the box, is quite dangerous. NEVER run this script as root without any arguments - it will wipe out half of your system. I suggest you replace it with this version instead:

#!/bin/bash
MBVENDOR=$1
MBMODEL=$2
LBROOT=/home/yhlu/xx/xx/xx/
if [ "$MBVENDOR" = "" ] || [ "$MBMODEL" = "" ]; then
        cat ./readme_mcp55.txt
        echo
        echo "ERROR: Not enough command line arguments"
        exit 1
fi
echo $MBVENDOR/$MBMODEL
date

cd "$LBROOT/freebios2/targets"
rm -rf "$MBVENDOR/$MBMODEL/$MBMODEL"
./buildtarget "$MBVENDOR/$MBMODEL" &> "$LBROOT/x_b.txt"
cd "$MBVENDOR/$MBMODEL/$MBMODEL"
#make clean
eval make &> "$LBROOT/x_m.txt"
        if [ $? -eq 0 ]; then
                echo "ok."
        else
                echo "FAILED! Log excerpt:"
                tail -n 20 "$LBROOT/x_m.txt"
                exit
        fi
cat ./normal/linuxbios.rom ./fallback/linuxbios.rom ./failover/linuxbios.rom > "$LBROOT/rom/"$MBMODEL"_linuxbios.rom"
ls -l "$LBROOT/"$MBMODEL"_linuxbios.rom"
date

This is Work-In-Progress!