SIL3124 is a PCI (as in old PCI, not PCI express) SATA-II controller which I had to buy because my NAS’ old Gigabyte motherboard supports (downspeeded) SATA-II drives only to 750GB size. Of course I got to know this AFTER buying 1,5TB drive 😉
Anyway, it’s always uphill and even though SIL3124 card sees the drive and I’ve installed Ubuntu Server with no problems to it, I couldn’t boot the card. It kept saying „no valid device”. Turns out it has a RAID-only BIOS by default so if someone – like me – wants to use it as an JBOD (Just a Bunch Of Disks) controller, BIOS upgrade is needed. How user friendly not to mention it in a – Czech-language – manual.
Of course, being mainly a Linux user with no CD- or DVD-drive, I have it even more uphill. BIOS flashing tools are available for Windows and DOS. Soooo the solution is:
- Use HP USB Disk Storage Format Tool to create bootable DOS pendrive, here’s Polish language tutorial: http://forum.purepc.pl/Dyski-twarde-cdromy-dvd-pendrive-inne-pamieci-f55/Boot-Pendrive-t254005.html if You don’t speak Polish, just google „boot pendrive dos”, in the tutorial is a link to Win98 boot files You might use.
- Download UPDFLASH and the newest BIOS zip from http://www.siliconimage.com/support
- The zip file has more than one BIOS inside, read the README and see which one is „IDE” BIOS or „non-RAID” BIOS. Copy the file together with UPDFLASH to the pendrive.
- Boot the PC with the PCI SATA Controller from the pendrive.
- Run „updflash biosfile.bin”
- If you don’t have a UPS, pray to Atheist’s God(TM) that there’s no blackout during flashing process.
- Use motherboard’s (not SATA controller’s) BIOS to set Hard Drive as first boot priority, make sure there’s „Bootable Add-In Cards” enabled somewhere.
- Reset and enjoy bootable large drives.
Note: Drive’s UUIDs change because of that so it’s best to do it BEFORE installing Ubuntu, otherwise You get a maintanance console.
Dude! YOU ARE THE MAN!! I was having exactly the same issue on a Windows Server 2003 system. The existing SATA card was dying (Sil3512) and we bought a new Sil3124 controller card to replace it. When we replaced the 3512 with the 3124, we got the same error („no valid device”).
Following your advice, we flashed the BIOS on the new controller (sil3124) with a newer version and used the BASE bios update file (b6409.bin). We went from SATARaid BIOS 6.3.18 to SATALink BIOS 6.4.09. We also installed the BASE driver on the Windows boot partition and updated to the latest driver version. Once the drive was connected to the new controller and booted, the drive was immediately seen and bootable and Windows Server 2003 came right up. No other issues.
Thanks very much for this jewel of information. This issue is nowhere in the tiny documentation sheet. No indication that the BIOS EITHER RAID or Non-RAID and not BOTH. Thank you, thank you, thank you!! Saved much time and aggravation!
No worries, that’s whole point in teaching Google such things 😉
Excellent way of explaining, and pleasant paragraph to take information about my presentation focus, which i am going to present in college.