README.TXT Driver File Contents (ARB1663.zip)

******************************************************************************
                                     LINUX.TXT
*******************************************************************************

This file presents general information about the LSI Logic device drivers for
Linux.  It also describes the features and use of the device drivers for the
Linux operating system environment.
 

It is divided into the following sections:

   Introduction
   Features
   Symbios Devices Supported
   Upgrading the Linux Driver during Installation
   Installing the Linux Driver
   Troubleshooting

*******************************************************************************
                                  Introduction
*******************************************************************************
The Linux drivers are free software and are supported in source form. These
drivers are distributed in the hope that they will be useful, but without any
warranty and without even the implied warranty of merchantability or fitness
for a particular purpose. You can redistribute them and/or modify them under 
the terms of version 2 or later of the GNU Public License as published by the
Free Software Foundation. You should have received a copy of this license
with your Linux kernel source tree (/usr/src/linux/COPYING. For detailed
information on the GNU Public License, contact the Free Software Foundation,
Inc at 59 Temple Place - Suite 330, Boston, MA 02111-1307 or at URL
http://www.gnu.org/copyleft/gpl.html.

The official Linux kernel currently bundles three drivers that support the
SYM53C8XX family of PCI to SCSI chips: 53C7,8XX; NCR53C8XX; and SYM53C8XX.
The latter two drivers use the same code base and are maintained. LSI Logic
recommends that you install the SYM53C8XX driver if your controllers are
supported by it. If you are not sure, configure the kernel to load both the
SYM53C8XX and NCR53C8XX drivers (either built into the kernel or as modules).
The kernel will then select an appropriate driver for each of your SYM53C8XX
controllers. The SYM53C8XX driver will install first and then the NCR53C8XX 
driver will install and support all remaining SYM53C8XX devices. 

The SYM53C8XX driver takes full advantage of the features of the latest
SYM53C8XX family of chips, although support for some of the earliest chips
is no longer available. The differences between the two drivers are: 

    The SYM53C8XX driver supports only those NCR/SYM/LSI/53C8XX chips that
    perform LOAD/STORE instructions. Additionally, it supports the Ultra3
    SYM53C1010 chip, uses 8 Kbyte on-chip RAM and handles phase mismatches 
    in SCRIPTS for the SYM53C895, SYM53C895A, SYM53C896, SYM53C897, 
    SYM53C1010 and the SYM53C1010_66 chips. 

    The NCR53C8XX driver supports the entire NCR/SYM/LSI/53C8XX family of
    chips excluding the latest Ultra3 SYM53C1010 and SYM53C1010_66 parts 
    released by LSI Logic.  Note that this driver supports the earliest 
    chips from NCR, such as the NCR53C810 revision 1. 


*  *  *  *  *  *  *  *  *  *  *  *   Features *  *  *  *  *  *  *  *  *  *  

For the SYM53C8XX driver only:

o Utilizes SCRIPTS LOAD/STORE command
o Handles Phase Mismatch from SCRIPTS (for chips that support this feature)
o Supports Parallel Protocol Request (PPR) negotiation 
o Supports Ultra3 Data Transfers (for chips that support this feature)

For SYM53C8XX and NCR53C8XX drivers:

o Supports Integrity Checking (Domain Validation for 2.2.X Kernels)
o Handles one interrupt per I/O
o Supports synchronous negotiation (including Fast SCSI/Ultra SCSI/Ultra2 SCSI)
o Supports wide negotiation
o Supports disconnect/reselect
o Allows tagged command queuing
o Supports scatter/gather 
o Supports shared interrupts
o Supports SCSI parity checking
o Supports master parity checking
o Supports Symbios and Tekram formatted NVRAM
o Allows memory-mapped or normal I/O (user configurable>
o Supports command line options to override default configuration
o Allows drivers to be built into kernel or built as a module
o Allows installation of both drivers simultaneously


*  *  *  *  *  *  *  *  *  Symbios Devices Supported  *  *  *  *  *  *  *  *  *


Host adapters based on the SYM53C8XX family of chips are supported by the
SYM53C8XX and NCR53C8XX drivers as follows:

CHIP          On Board   Wide   SCSI    Max    Supported by:    Supported by:
              SDMS BIOS         STD     Sync   NCR53C8xx driver SYM53C8XX driver
SYM53C810		N        N   Fast10  10 MB/s        Y                 N
SYM53C810A		N        N   Fast10  10 MB/s        Y                 Y
SYM53C815		Y        N   Fast10  10 MB/s        Y                 N
SYM53C825		Y        Y   Fast10  20 MB/s        Y                 N
SYM53C825A		Y        Y   Fast10  20 MB/s        Y                 Y
SYM53C860		N        N   Fast20  20 MB/s        Y                 Y
SYM53C875		Y        Y   Fast20  40 MB/s        Y                 Y
SYM53C876		Y        Y   Fast20  40 MB/s        Y                 Y
SYM53C895		Y        Y   Fast40  80 MB/s        Y                 Y
SYM53C895A		Y        Y   Fast40  80 MB/s        Y                 Y
SYM53C896		Y        Y   Fast40  80 MB/s        Y                 Y
SYM53C897		Y        Y   Fast40  80 MB/s        Y                 Y
SYM53C1010		Y        Y   Fast80 160 MB/s        N                 Y
SYM53C1010_66*		Y        Y   Fast80 160 MB/s        N                 Y

* 66 and 33MHz PCI bus support.

Details on the drivers can be found on your system in the file:

/usr/src/linux/driver/scsi/README.ncr53c8xx

*  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *
   		Upgrading the Linux Driver during Installation
*  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *

It is possible to upgrade to the latest driver during installation of Red Hat
7.0 and 7.1.  Driver update disks for these releases of Linux are available from

	ftp.lsil.com/HostAdapterDrivers/linux/DriverUpdateDisks

Download the readme.txt file for further instructions.

*  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *
                           Installing your Linux Driver
*  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *  *

After installing the Linux operating system, you must patch the driver and
other kernel files to upgrade to desired SYM53C8XX version (NCR53C8XX version).  

1. Obtain and install the Kernel Source:
    
   The kernel source may be obtained through anonymous ftp from 
   ftp.us.kernel.org/pub. 

   Be sure to use binary mode to download the kernel file. For this example,
   the bz2 compressed kernel was downloaded and stored under /root/Kernels.

2. Uncompress and install the kernel by typing at the prompt:

   #cd /usr/src
   #rm linux
   #bunzip2 -c /root/Kernels/linux-2.2.13.tar.bz2 | tar xvf -

   Note: bunzip2 is not installed by default with Red Hat 6.1 version.

3. Reset the soft links and type at the prompt:

   #mv linux linux-2.2.13
   #ln -s linux-2.2.13 linux
   #cd linux/include
   #ln -s asm-<platform> asm 

4. Obtain the Driver Source or Patches:

   4a. The latest version of the driver is stored in 
       full-source format. For this driver, download, 
       for example: sym-1.7.3a-all_kernels.tar.gz
  
       Download the tarball for the driver version of interest.

       ftp> cd HostAdapterDrivers/linux
       ftp> binary
       ftp> get sym-1.7.3a-all_kernels.tar.gz
       ftp> quit

       Extract the  files from the tarball:
       # tar xzvf sym-1.7.3a-all_kernels.tar.gz

       Read the file INSTALL.txt for further instructions.

   4b. Earlier versions of the driver are store in patch format.
       For the driver version of interest, download the patches.

       Note: Patches are available for kernel versions 2.2.5, 2.2.12,  
           Red Hat 6.1 kernel (2.2.12-20), 2.2.13, 2.2.14, 
           Red Hat 6.2 Kernel (2.2.14-5), 2.2.15, 2.2.16 and 2.2.17.
	   (1010 support is bundled in 2.4.18).

       Extract the patch files from the tarball:


       Download the tarball for the kernel of interest.

       ftp> cd HostAdapterDrivers/linux
       ftp> binary
       ftp> get <driver-version>-2.2.13.tar.gz
       ftp> quit

       Extract the patch files from the tarball:
       # tar xzvf <driver-version>-2.2.13.tar.gz

       The newly created directory "2.2.13" will contain:
          a) readme-2.2.13.ftp 
                A listing of the driver version versus patch number.
          b) script-2.2.13
                A shell script that can be executed to apply the patches
                in the correct order.
          c) files patch-ncr53c8xx-s<set no>-d<patch no>-<extension->-<kernel ver>.gz
                These files are generated with diff -u and compressed using gzip. 
                Typically, all patches are applied in order beginning with the
                lowest set and patch number.  Some patches have an additional 
                extension of dri or sys to indicate that they are patches to the
                driver files or the system files. Patches with the same set and 
                patch number but different extensions (dri or sys) may be applied 
                in any order.

       Apply the Driver Patches

       Edit the script file and replace <your patch directory> with the full path
       to the patches.  For example, if the the full path to your patches is
            /home/myself/kernelpatches/2.2.13
       then the script becomes

         echo "Patching ncr53c8xx/sym53c8xx to versions 3.3b and 1.6b - kernel 2.2.13"
         cd /usr/src
         ln -s /home/myself/kernelpatches/2.2.13  source
         gzip -d <source/patch-53c8xx-s01-d00-dri-2.2.13.gz | patch -p0 
         gzip -d <source/patch-53c8xx-s01-d00-sys-2.2.13.gz | patch -p0 
         gzip -d <source/patch-53c8xx-s01-d01-sys-2.2.13.gz | patch -p0
         gzip -d <source/patch-53c8xx-s01-d01-dri-2.2.13.gz | patch -p0 
         gzip -d <source/patch-53c8xx-s01-d02-sys-2.2.13.gz | patch -p0 
         gzip -d <source/patch-53c8xx-s01-d02-dri-2.2.13.gz | patch -p0 
         gzip -d <source/patch-53c8xx-s01-d03-sys-2.2.13.gz | patch -p0 
         gzip -d <source/patch-53c8xx-s01-d03-dri-2.2.13.gz | patch -p0 

         gzip -d <source/patch-53c8xx-s04-d00-sys-2.2.13.gz | patch -p0 
         gzip -d <source/patch-53c8xx-s04-d00-dri-2.2.13.gz | patch -p0 
         gzip -d <source/patch-53c8xx-s04-d01-2.2.13.gz     | patch -p0 
         rm source

       Execute the script:
       #./script-2.2.13

       Note 1: The script must have execute permission. If it does not, set the permission
             # chmod +x script-2.2.13
         
       Note 2: If you uncompress the patch files to examine the content, you can
             still apply the patch either by recompressing with gzip or by replacing
             "gzip -d <" with "cat" in the script file. 

5.  Reconfigure and rebuild the kernel. 

    Rebuild the kernel in the usual way for your platform. It is strongly
    recommended that you make an emergency boot diskette prior to rebuilding
    the kernel. See your system documentation or use the online documentation
    ($man mkbootdisk) for more information.

    To rebuild the kernel on an I386 platform, type at the prompt: 

    #cd /usr/src/linux
    #make mrproper        (to reset to default state)
    #make xconfig         (or: #make menuconfig)
    #make dep
    #make clean
    #make bzImage         (for an Alpha platform: #make boot)
    #make modules
    #make modules_install
    #cd /boot
    #rm System.map vmlinuz module-info
    #cp /usr/src/linux/System.map System.map-<kernel version>
    #ln -s System.map-<kernel version> System.map
    #cp /usr/src/linux/arch/i386/boot/bzImage vmlinuz-<kernel version>
    #ln -s vmlinuz-<kernel version> vmlinuz

    WARNING: If you modify the previous kernel and are using lilo, you must
             update and run your boot loader (#lilo -v). If you forget to do
             so and do not have an emergency boot diskette, your system will
             be unbootable. There is no recovery method if you boot from a SCSI
             disk. See $man mkbootdisk for instructions on how to make a boot
             diskette.
             
*  *  *  *  *  *  *  *  *  *  *  Troubleshooting *  *  *  *  *  *  *  *  *  *  

If you have problems with any of these patches or if you need patches for an
official kernel not listed, refer to the LSI Logic Technical Support Page at
URL: http://www.lsilogic.com/techsupp for additional assistance. Provide the
details about the kernel version. If patches have failed, also specify if it
is an official kernel or vendor kernel and which patches failed.

Some potential problems and their suggested solutions are:

Problem:

Integrity checking (domain validation) is not enabled.

Solution:

    To enable integrity checking, set the experimental option in menuconfig
    (or xconfig) and then enable the option under the feature list for the
    NCR53C8XX/SYM53C8XX drivers. 

Problem:
Integrity checking (domain validation) is enabled but a device behaves badly.
How can it be disabled?


1.  To disable integrity checking, type at the prompt:

    #insmod ncr53c8xx "ncr53c8xx=buschk:4" 

    or

    #insmod sym53c8xx "sym53c8xx=buschk:4" 

2.  To disable integrity checking when the driver is built into the kernel,
    type at the lilo prompt: 

    lilo: linux root=/dev/hda2 ncr53c8xx=buschk:4

    or

    lilo: linux root=/dev/hda2 sym53c8xx=buschk:4

    where hda2 is the root partition.

Problem:

The C1010 boards are shipped with the default speed set to Ultra2. 

Solution:

To run at Ultra3 speeds, update the sync speed in the configuration (set to 80)
and change the setting in NVRAM. If necessary, use the command line arguments
nvram:7, sync:9  and wide:1 to the setup command. For example, with insmod: 

   #insmod sym53c8xx "sym53c8xx=nvram:7 wide:1 sync:9"

Problem:

There are no patches for your kernel.

Solution:

You may go to the LSI Logic Technical Support Home Page, which is located at
http://www.lsilogic.com/techsupp and call the listed number if you need patches
for an official kernel. 


LINUX IS A REGISTERED TRADEMARK OF LINUS TORVALDS
RED HAT IS A REGISTERED TRADEMARK OF RED HAT SOFTWARE, INC.

Download Driver Pack

How To Update Drivers Manually

After your driver has been downloaded, follow these simple steps to install it.

  • Expand the archive file (if the download file is in zip or rar format).

  • If the expanded file has an .exe extension, double click it and follow the installation instructions.

  • Otherwise, open Device Manager by right-clicking the Start menu and selecting Device Manager.

  • Find the device and model you want to update in the device list.

  • Double-click on it to open the Properties dialog box.

  • From the Properties dialog box, select the Driver tab.

  • Click the Update Driver button, then follow the instructions.

Very important: You must reboot your system to ensure that any driver updates have taken effect.

For more help, visit our Driver Support section for step-by-step videos on how to install drivers for every file type.

server: web2, load: 0.72