My home-server’s motherboard is quite old and does not have onboard SATA. Therefore, when I bought a new hard drive for the server, I connected it to a PCI SATA controller card. Performance doesn’t matter much with this server (I am the only user, it mostly only runs cronjobs and the-like). The SATA card had a VIA VT6421 chip on it. From time to time, I had the problem that the computer wouldn’t boot failing with this error message:
Hardware Initiate failed. Please check Device. The BIOS does not be installed. Press g to Continue.
Nice error message 😉
If you google this, you’ll find lots of people with this problem.
When I pressed CTRL+ALT+DEL to reboot the pc, it always detected the drive then. On the internet I found out that the problem is caused by SATA 300 (3Gbit/s) hard drives attached to the VT6421, which only supports SATA 150 (1,5Gbit/s). The Samsung drive I had at this time (a Samsung F2 EcoGreen 1500GB HD154UI 5400/m) didn’t have a jumper to change to SATA 150 (like some drives have), but Samsung provided a bootable tool to change the speed setting of the drive. (Samsung does not produce hard drives any longer, so I couldn’t find the software on the Samsung site anymore. I have it burnt on a CD, though. Contact me in case Samsung doesn’t publish it any longer and you really need it.)
Using the tool with the Samsung drive didn’t really solve the problem for me. But as it only occurred from time to time, I did not invest any more time to solve the problem.
Then one day the Samsung drive died 🙁 and I bought a new drive. This time it was a Seagate drive (Seagate 2000GB Barracuda Green ST2000DL003). With this drive, the problem occurred every time I booted the pc. As before, restarting the computer made it detect the drive, but it was very annoying. This drive has a jumper to set the speed to SATA 150. I inserted the jumper as described on the Seagate website (attention! look at the graphic twice because it is drawn upside-down!). The problem remained unchanged :(.
Finally, I found the solution to my problem while googling forums again. Somebody wrote that he could not make the SATA controller detect the drive since he disconnected the dvd drive (sorry I cannot give the link, I do not remember where I read it. Thanks a lot to the guy who wrote this nevertheless!). So I connected an unused dvd drive to the IDE port of the sata controller board (I did not use the IDE ports of the VT6421 card at all before, only the sata ports). And from now on, the controller detected the drive correctly! 🙂
So the short story is: Connect some additional device like a dvd drive to the IDE port of the controller card to solve the SATA problem!
At lest it worked for me. Maybe you additionally need the jumper as well (I did not remove it).
Kind of weird. I guess detecting the IDE device makes the controller busy for a moment so the drive is ready once the controller tries to detect it. But that’s only guessing.
I hope this helps somebody with the same problem. Please share your experience in the comments if it helped you.
thanks for helping.
the ide thing (cdrom on the ide) really helped me now i’m able to attach 2 hd’s
Comment by wim — 21. May 2015 @ 22:57
Hello there,
Well, I tried your solution here by simply trying to attach a IDE-Device to the IDE port on the card, sadly this did not help at all. I had 2 DVD-Drives attached which were perfectly detected by the card, however once I tried to connect my Samsung Evo 850 SSD to the card it simply, as always, froze up again.
Another SSD worked fine, also a SATA 3 one… Weird.
The SSD is definitely not broken since I tried another, second Evo 850 and it froze again.
I’ve simply decided to stick to my second SSD now and additionally use a second HDD connected to the card.
Comment by EpicLPer — 14. May 2016 @ 18:18