#######################################################################
#         Silicon Image SiI SATA controller                           #
#               RedHatLinux  Driver     	                      #
#######################################################################

1. OVERVIEW
   This driver disk adds support for SiI SATA controller.  this driver overrides the open source driver.

   Supported RedHatLinux versions:

      * RedHat Enterprise Linux 4.0, Kernel revision 2.6.9-5.
      * This driver rev. 1.0.5.8 supports 64-bit AMD platforms for SiI 3112/3512 controller with RAID capability.

2. INSTALLATION

2.0 For detailed information about RedHat installation visit:
    http://www.redhat.com/docs/manuals/

 
2.1 Preparing driver disk 
    
    A floppy disk is required to install into a brand new (or blank) disk drive. 
    
 Several Options:
 
  . If you received a zip file, Use Winzip to unzip the [distribution]filename.zip file on to a formatted floppy disk.
  . If you received a tgz file, extract the contents of the [distribution]_sii____rhdd.tgz file on to a
    formatted floppy disk. (e.g. use tar xzf [distribution]_sii____rdhh.tgz)
    
  . If you received a img file, and you are running windows: use "rawrite.exe sii____.img A:" 
    (you can get rawrite from RedHat installation disk #1 \dosutils directory)
    If you are running linux:  use "dd if=filename.img of=/dev/fd0"
  
    *  Make sure BIOS reports drives as 'current' (if using RAID)

  2.1.1 IMPORTANT NOTE FOR OEM CUSTOMERS
        ADD your PCI ID to the "pcitable" file if OEM VendorId is going to be different 
        from SiI 0x1095 IDs. (End Users should ignore this step) 


2.2 Steps for first-time installation 
   
    Before you start make sure the BIOS sees your adapter card (if applicable) and
    your disk drives.
    
    If just adding Data Drives or upgrading go to sections 2.3 or 2.4
     (non-bootable SATA drives are considered Data Drives)
    
    Step1 Boot from the RedHatLinux CD 1 or a boot diskette that you have created.
          (Refer to "The Official Red Hat Linux x86 Installation Guide" see 2.1)

    *RedHatLinux9.x, RedHatEnterpriseLinux3.x*
    Step2 At the "Welcome to Red Hat Linux ..." installation screen, a
          prompt labeled "boot:" will appear at the bottom of the screen.
          For installation in graphical mode:

          At the prompt type "linux dd " and press the enter key.

          ( 3112 may conflict with the Open Source Driver. One way to eliminate
	    conflicts will be to be specific about the location of the devices:
          
            linux dd ide0=0x1f0 ide1=0x170 hde=noprobe hdg=noprobe hdi=noprobe
                hdk=noprobe will tell Linux where the PATA drives are located
            and not to scan for SATA drives using the Open Source Drivers. )

          For installation in text mode:
          At the prompt type "linux dd " or "text instead of dd" 
          and then press enter key.

	  Sometimes mostly if you have are using drives that have partition information 
          the SATA driver may get confused and report errors at Installation time. After
	  you have installed the driver but before you format the disk(s) you may do the 
          following:  (formatting starts when doing disk partitioning)
	  . get a console window by typing CTL-ALT-F2 
	  . mke2fs /dev/sda (say 'y' to prompt)
          . fsck /dev/sda
	     type '2'
             type 'w'
            This will repartition the disk drives


    *RedHatLinux8.x*
    Step2 At the "Welcome to Red Hat Linux ..." installation screen, a
          prompt labeled "boot:" will appear at the bottom of the screen.
          For installation in graphical mode:
          At the prompt type "linux dd" or "expert" and press the enter key.
          For installation in text mode:
          At the prompt type "linux text dd" or "expert text" and press the
          enter key.


    Step3 Select "Yes" at the "Do you have a driver disk ?" .

    Step4 When the screens prompts for "Insert your driver disk and press OK to
          continue" insert the driver diskette in the floppy drive and select
          "Ok".

    Step5 The installation program will automatically load the SiI driver into
kernel.
          Note, all ATA/ATAPI devices connected to SiI controller will be
          presented as a SCSI devices.

    Follow the system instructions and swap the CDs as directed, continue installing your system until the end.

    * NOTE:  If you get Any Errors or 'hangs' before formatting the Disk Drives, type CTL-ALT-F4 
	 and CTL-ALT-F5 to see errors, CTL-ALT-F1/F7 are main screens/menus.

    At this point you are done with the installation.


2.3  Adding a DATA DRIVE 
    
     If your system is already up and running then you can use execute shell scripts to modify
     the kernel or add loadable modules to access the SATA drives as follows:

     . Modify the loaders to disable the Open Source Driver  (no script yet)
       (add hde=noprobe and hdg=noprobe (3112 chipsets only))  

     . # mount /mnt/floppy
         in case of DOS formatted floppy
         . # mount -t vfat /dev/fd0 /mnt/floppy  
     
     . # 'sh /mnt/floppy/load-driver-from-floppy.sh'  (DATA DRIVES)  
         (or use the the proper script depending on your kernel)

    . if you want to make sure you can see the drives, you may want
       to 'mke2fs /dev/sda' and 'mount /dev/sda /test' the hard disk(s)

     . insmod sii3112. As an example add the following lines at the end
       of the script in /etc/rc.d/rc.sysinit

       'insmod scsi_mod'
       'insmod sii3112'

     . At this point you are done with the installation 
                             
2.4  Upgrading the Kernel

     If your system is already up and running then you can use execute shell scripts to modify
     the kernel or add loadable modules to access the SATA drives.


3.   Special Cases:

     Mixing Drives. 
     
         if you are using LABELS to define partitions, it is recommended that NO drives have duplicate
         labels. Linux gets confused when partitions have the same names. (check lilo or grub 
         configuration files)
         change from =>  append="root=LABEL=/" to  root=/dev/sda2 for example

         
         The way Linux finds disk drives also affect the booting sequence.
  

4.   GENERAL INFO

   . If you cat /proc/scsi/Sii3112/* you should see the Driver as reported by
     the kernel.

   . If you cat /proc/scsi/scsi you should see the your DRIVE TYPE as reported
     by the kernel.

5.   New Features and bug fixes

     a. The driver could support SATA ATAPI devices.
     b. This revision of driver has Java GUI interface that can configure legacy RAID set.


6.   Known Restrictions

     Please note that ATAPI hot plug is not expected.



