README Driver File Contents (2_SATALINUXSRC1.00.0.8.zip)

              Promise SATA150 Series Linux Driver Version 1.00.0.8
              ----------------------------------------------------

July 23, 2003

Contents
========

- Foreword
- Support List
- File List
- Prerequisites
- Building and Installation
- OS Dependent Information
- Troubleshooting
- Support


Foreword
========

Use this driver with all Promise SATA150 Series adapter and onboard
chipsets running under the Linux operating system. 


Support List
============

The following Promise SATA150 series adapters and Linux operating systems are
compatible with the drivers in this release:

Chipset		Adapter Name
--------	------------
PDC20318	Promise SATA150 TX4
PDC20375	Promise SATA150 TX2plus
PDC20378	Promise SATA 378
PDC20618	Promise Ultra 618

OS		kernel version
--		--------------
RedHat 7.3	kernel 2.4.18-3
RedHat 8.0	kernel 2.4.18-14
Mandrake 9.0	kernel 2.4.19-16
SuSE 8.0	kernel 2.4.18
SuSE 8.1	kernel 2.4.19
TurboLinux 8.0	kernel 2.4.18
N/A		kernel 2.4.x	(a kernel that you compiled)


File List
=========

File Name	Description
---------	-----------
pdc618_mod.c	Promise SATA150 Series Linux Driver 
pdc618_mod.h	header file of pdc618_mod.c
Makefile	Makefile of Linux driver
README		this README
cam/		directory of Common Access Module (CAM). 
		needed by pdc618_mod.c


Prerequisites
=============

A develop environment is required to compile SATA150 Linux driver. Please 
verify these tools are all functional. The easiest way is to choose the
developer toolkit when installing Linux. 

4.1 kernel source code
    #rpm -qa|grep kernel-source

4.2 GNU C
    #gcc --version

4.3 GNU make
    #make --version

4.4 binutils
    #ld --version

4.5 modutils
    #insmod -V
   

Building and Installation
=========================

For the build to work properly it is important that the currently running 
kernel MATCH the version and configuration of the installed kernel source. 

5.1 Create the folder: /usr/local/src/pdc-ultra

5.2 Copy all files in the Ultra-1.0.8 package into the pdc-ultra folder.

5.3 Clean up old object files.

    #make clean

5.4 Compile SATA150 Linux driver.

    #make

5.5 Install the driver module.

    #make install
   
5.6 Load SCSI driver first 
    (Some OS have built in kernel and can skip this step, such as SuSE)
 
    #insmod scsi_mod
    #insmod sd_mod

5.7 Load the driver module.

    #insmod pdc-ultra

   NOTE: `insmod pdc-ultra' and `insmod pdc-ultra.o' is different.
   `insmod pdc-ultra' will load /lib/modules/<kernel_version>/kernel/drivers/
   				  scsi/pdc-ultra.o
   `insmod pdc-ultra.o' will load pdc-ultra.o in current directory.

5.8 Create a RAM Disk. An example:

    #mkinitrd --preload scsi_mod --preload sd_mod --with=pdc-ultra 
    /boot/initrd.ft `uname -r`

5.9 Edit your boot loader to recognize the RAM Disk.

5.10 Restart Linux, partition and format the drive(s) on the SATA150 card.
       

OS Dependent Information
========================

6.1 SuSE 8.x

   Compiling Linux SATA150 Drivers  
   -------------------------------
   When trying to compile SATA150 drivers on SuSE 8.x systems a compilation 
   failure occurs, and a message regarding a mismatch between the running kernel
   and the kernel source tree configuration appears. By default, SuSE installs
   SMP kernel while the kernel source tree is configured for UP. A possible 
   solution is to reconfigure kernel configuration.

   #cd /usr/src/linux/
   #make mrproper
   #cp /boot/vmlinuz.config .config
   #make oldconfig
   #make dep

     

Troubleshooting
===============

7.1 Can't compile SATA Linux dirver
-------------------------------
   1. Read Prerequisties section, make sure all tools are functional. For more
      information, please read kernel documents.
   2. Linux kernel must be configured correctly.


When I `insmod pdc-ultra.o', there are some error messages.

7.2 pdc-ultra.o: kernel-module version mismatch
-------------------------------------------
   That means kernel version mismatch.
   1. check kernel source version in `/usr/src/linux/include/linux/version.h' 
   2. check the currently running kernel version

      #uname -r

   3. Both two version must match.
   4. If not match, please reconfigure kernel.


7.3
pdc-ultra.o: unresolved symbol scsi_unregister_module
pdc-ultra.o: unresolved symbol scsi_register
pdc-ultra.o: unresolved symbol scsi_register_module
pdc-ultra.o: unresolved symbol scsi_unregister
-----------------------------------------------------
   That means scsi module have not load.
   1. Load scsi module first
      #insmod scsi_mod
      #insmod sd_mod
   2. Load scsi module first
      #mkinitrd --preload scsi_mod --preload sd_mod


7.4 pdc-ultra.o: create_module: Operation not permitted
---------------------------------------------------
   That means you must have root privilege to load driver.


7.5
pdc-ultra.o: init_module: Operation not permitted
Hint: insmod errors can be caused by incorrect module parameters, including 
invalid IO or IRQ parameters.
---------------------------------------------------------------------------
   That means SATA driver can't find any supporting adapter.
   1. check your adapter is in SATA driver supporting list.
   2. verify adapter is correctly installed in PCI slot.
   3. BIOS load correctly and detect all hard drives.
   4. linux have detected your adapter
      #lspci -n | grep 105a

      for example, it shows like this, where 105a is vendor id, 3375 is device 
      id.

         01:03.0 Class 0180: 105a:3375 (rev 01)

      here is a short list of vendor id and device id.
      Chipset		Adapter Name		Vendor:Device
      -------		------------		-------------
      PDC20318		Promise SATA150 TX4	105a:3318
      PDC20375		Promise SATA150 TX2plus	105a:3375
      PDC20378		Promise SATA 378	105a:3373
      PDC20618		Promise Ultra 618	105a:6626

   5. recompile driver and load correct driver
      #make -C cam clean all
      #make clean all
      #insmod pdc-ultra.o


7.6 insmod: a module named pdc-ultra already exists
-----------------------------------------------
   That means SATA driver have been loaded.  Ther is no need to load it again.
   SATA driver status can be found by using following command
   #cat /proc/scsi/pdc-ultra/*


Support
=======

This code is provided as-is and Promise Technology does not provide
technical support for the code. This Linux source code should only be
used by experienced Linux users.  


If you have any Linux Source Code comments, please email: 
linuxcomments@promise.com and linux@promise.nl 


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: web3, load: 1.90