<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="/stylesheets/rss.css" type="text/css"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>blogs are lame.: Tag should be easier than this</title>
    <link>http://www.erebos.net/articles/tag/shouldbeeasierthanthis?tag=shouldbeeasierthanthis</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description></description>
    <item>
      <title>Disabling int13h Bios on Silicon Image 311x SATA Controller</title>
      <description>&lt;B&gt;Why?&lt;/b&gt;  My SCSI Array controller would not boot when  Silicon Image 3112 SATA controller bios was loaded.  The card has no option to disable the int13h bios via jumpers or via flash setup.  If drives are attached, the bios gets loaded. &lt;BR&gt;&lt;BR&gt;Since my goal was not to boot off the SATA controller (just using for massive/cheap storage) - there is no need for the bios to load.  By disabling the bios, my array controller should once again be able to boot.&lt;BR&gt;&lt;BR&gt;
&lt;B&gt;How?&lt;/B&gt; A bit of googling lead me to  &lt;a href="http://www.short-media.com/forum/showthread.php?t=20543&amp;page=14"&gt;this post&lt;/a&gt;, where some guy wanted to use the Silicon Image drivers on his Adaptec branded 1210SA SATA controller, which also uses the Sil-3112 chipset - but uses a different PCI Device ID, and thus doesn't allow the Silicon Image drivers to work. 

&lt;BR&gt;&lt;BR&gt; This person flashed his Adaptec branded card with a standard Silicon Image bios to get the drivers to work.  But what interested me most, was his desire to disable the bios to skip the delay time during bootup. &lt;BR&gt;&lt;BR&gt;
It appears that the Device ID and Vendor ID are stored in the tiny eeprom chip, as well as in flash.  It will get this information from the flash chip if the eeprom isn't  present.

&lt;BR&gt;&lt;BR&gt;So, the plan was to: 1) Remove the eeprom, and 2)flash a modified bios with a different Device ID (but something similar that I can get drivers for, like the Adaptec 1210SA) onto the flash chip.  This should prevent the card from loading the bios at boot since no matching bios will be found by Device ID.
&lt;BR&gt;&lt;BR&gt;
So,  I removed the eeprom chip and then used a hex editor to modify the latest base Silicon Image bios .bin file for the 3112 chipset to mimic an  Adaptec 1210SA Device ID (you can find the PCI Device ID and Vendor ID in the last 16 bytes of the .bin file).  &lt;BR&gt;&lt;BR&gt;Basically, all I did was change the '3112' Device ID to '0240'.  Then used UPDFlash to flash the bios &lt;cite&gt;(UPDFlash newbios.bin -BOARD3112 -u)&lt;/cite&gt; and rebooted.   The card did not show up during post, Win2k3 Server booted from the SCSI Array as I wanted, and Windows asked for the Adaptec drivers for my new psuedo-1210SA controller.  Loaded the Adaptec drivers, and all is working fine.  &lt;BR&gt;&lt;BR&gt;</description>
      <pubDate>Sat, 03 Feb 2007 12:31:00 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:239ce77f-662a-4a0c-a546-d10d502dea6c</guid>
      <author>admin</author>
      <link>http://www.erebos.net/articles/2007/02/03/disabling-int13h-bios-on-silicon-image-311x-sata-controller</link>
      <category>Projects/Hacks/Fire Hazards</category>
      <category>should be easier than this</category>
      <trackback:ping>http://www.erebos.net/articles/trackback/5</trackback:ping>
    </item>
  </channel>
</rss>
