
#######################################################################
#         Silicon Image SiI SATA controller                           #
#               RedHat Linux  Driver     	                      #
#######################################################################


1. OVERVIEW

   This driver disk adds support for the SiI 3124 SATA controller and overrides the Open Source Driver if it is contained in the CD-ROM.

   Supported RedHat Linux versions:

      * RedHat Enterprise Linux 4 Update 2, Kernel revision 2.6.9-22.
      * This driver rev. 1.0.8.3 supports 32-bit AMD/Intel platforms for Sii3124 controller with RAID 5, port multiplier and hot-plug capability.


2. INSTALLATION

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

   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.1 PREPARING DRIVER DISK

   A floppy disk is required to install into a brand new (or blank) disk drive. 

   If you received the driver in an xxx.img format, create a floppy containing the drivers under Linux by 'dd' as follows:

      dd if=file_name.img of=/dev/fd0  (In a Linux System)
      where filename will change with the distribution used.
       
   If you received a zip file, Use Winzip to unzip the [distribution]filename.zip file on to a formatted floppy disk.

   2.2 FRESH INSTALLATION TO A BOOT DRIVE

   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 3 or 4.
     (Non-bootable SATA drives are considered as data drives.)

   The following BIOS BOOT sequence is recommended => CD, Hard Disk, Floppy.
 
   Installing the SiI Driver currently requires some manual intervention.
   Boot from the CD 1.

 When you get to the first screen, type "linux dd" and follow the prompts to load the SiI driver.
   Continue with the installation and follow the system instructions and swap the CDs as directed to complete the installation of the bootable disk.

   Please note, all ATA/ATAPI devices connected to SiI controller will be presented as SCSI devices.


3. ACCESS A SATA DISK AS DATA DRIVE WITHOUT UPGRADING THE KERNEL	
    
     If your system is already up and running, you can add loadable modules to access the SATA drives by the followings:

     . Unload the open source driver for Silicon Image controllers if it was loaded.

     . # mount /mnt/floppy or mount /media/floppy, whichever is appropriate.
          in case of DOS formatted floppy
          . # mount -t vfat /dev/fd0 /mnt/floppy  

     . Type "modules.cgz | gunzip | cpio -ivH crc" to
       unzip the driver tree and select the appropriate driver file for your system.
     
     . Install the driver by adding the following lines at the end of the script in /etc/rc.d/rc.sysinit

       'insmod scsi_mod'
       'insmod si3124r5'

     The SATA data drive would be available at next time when system reboot. At this point you are done with the installation 

     . If you want to permanently have access to your SATA drives we recommend
       you upgrade to kernel as shown below.
   


4. UPGRADE THE KERNEL TO ACCESS SATA AS DATA DRIVES

     If your system is already up and running, you can use shell scripts to modify
     the kernel or add loadable modules to access the SATA drives as followings:

     . Unload the open source driver for Silicon Image controllers if it was loaded.

     . # mount /mnt/floppy or mount /media/floppy, whichever is appropriate.
         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 received a zipped file, unzip the file and copy the modules.cgz
       to a destination directory. Type "modules.cgz | gunzip | cpio -ivH crc" to
       unzip the driver tree and load the appropriate driver file to your system.

     . 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 si3124r5. As an example add the following lines at the end
       of the script in /etc/rc.d/rc.sysinit

       'insmod scsi_mod'
       'insmod si3124r5'

     . # ./mnt/floppy/upgrade_driver.sh
          /etc/lilo.conf and /boot/grub/grub.conf will be saved by the setup
          script. You may back them up as you wish. Visually inspect lilo.conf and 
          grub.conf to make sure the result is what you want.
   
5.   GENERAL INFO

   . If you cat /proc/scsi/Si3124*/* 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.


6. New Features and bug fixes

   1. This revision solve the issue of system deadlock when loading driver with SV2000 BOX connected and configured as RAID sets or five JBODs.
   2. This revision fixed the ATAPI CD/DVD isse that caused system hung if connected to a RAID set and a ATAPI drive. It also fixed the ATAPI CD/DVD issue that caused stack trace dummped during driver load if a SATA ATAPI CD/DVD device was connected to the 3124 controller.

7. Known Restrictions

   1. Non-meta data drive support is only limited to data drives. Boot from non-meta data drive is not supported in 3124 BIOS.
   2. The ATAPI CD/DVD write is not ready. Please also note that ATAPI hot plug is not expected.


Console Keystrokes Contents:

1 [Ctrl]-[Alt]-[F1] installation dialog 
2 [Ctrl]-[Alt]-[F2] shell prompt 
3 [Ctrl]-[Alt]-[F3] install log (messages from installation program) 
4 [Ctrl]-[Alt]-[F4] system-related messages 
5 [Ctrl]-[Alt]-[F5] other messages 
7 [Ctrl]-[Alt]-[F7] X graphical display



8. To run the Raid5 GUI,

	1. Raid5 Driver need to be loaded before running GUI.
	2. Install jre (Java Runtime Environment), the jre revision needs to be 1.5.0 or above.
	3. Run daemon by entering SATARaid5Daemon_RHEL4.2&, or SATARaid5Daemon_xxxx& depending on platforms.
        4. Enter "mkdir logs"
	5. Run Raid5 manager by "<Java JRE Path>/bin/java -jar SATARaid5Manager.jar"

