CMD 32-Bit Local Bus IDE Driver Installation
--------------------------------------------

INSTALLING SCO UNIX 3.2.x DEVICE DRIVER FOR CMD PCI646x CONTROLLER

First, install SCO UNIX 3.2.x or SCO Open Desktop 3.x
using the default SCO IDE driver.

1) Boot your SCO UNIX system and bring it into single-user mode.

2) Insert CMD-supplied driver diskette into 3.5-inch floppy drive.
   Use doscp command to copy the file cmd646x.tar to your /tmp directory.
       e.g. if you are using floppy drive A, type
	    doscp a:/sco/cmd646x.tar /tmp

3) Have a SCO UNIX-formatted diskette ready.

4) From root, type the following commands
       mkdir /csa6460
       cd /csa6460
       tar xvf /tmp/cmd646x.tar .
   (NOTE : there is a period at the end of the last command)

5) Now, insert the diskette into the drive and issue the following command
       tar cvf /dev/<your floppy drive 0 device name> .
   (NOTE : there is a period at the end of the last command)
    
    Your floppy drive 0 device name could be:
      rfd096ds15            -   5.25 DSHD 
      rfd0135ds18           -   3.5  DSHD
      rfd048ds9             -   5.25 DSDD
      rfd0135ds9            -   3.5  DSDD

You are now ready to install the driver package for CMD PCI646x controller.

Start the installation by typing 
       custom


TO SET THE PROPER TIMING FOR DIFFERENT BUS SPEED

The released driver has a default local bus speed of 33.  Here are some 
guidelines for local bus speed:
    486 CPU's:
      If you have a 486-25, DX2-50, or DX4-75 processor, your Local 
      Bus speed is probably 25.  Otherwise, it is probably 33.
    Pentium CPU's:
      If you have a Pentium 60 or 90, your Local Bus Speed is probably 
      30.  If you have a Pentium 66 or 100, your Local Bus Speed is 
      probably 33.

To change this default setting, follow these following steps:

1) Back up your 33 MHz configured UNIX kernel by typing
     copy -om /unix /unix.orig

2) Use vi to edit the following file
     vi /etc/conf/pack.d/clbi/space.c

3) Once you are in vi, locate the line that reads
     int lbspeed = 33;

4) Change 33 to the desired local bus speed.

5) Save the change and go to the configuration directory by typing
     cd /etc/conf/cf.d

6) Relink the UNIX kernel with the new timing setting by typing
     ./link_unix

7) Reboot your system for the new kernel to take effect.  The new
   kernel should initialize the chip to the new timing setting.


TO ENABLE SECONDARY IDE CHANNEL ON CMD PCI646x CONTROLLER

The released driver by default is configured to disable the secondary
IDE channel on the CMD PCI646x controller chip.  To enable this IDE
channel, follow the following steps.


1) Back up your configured UNIX kernel by typing
     copy -om /unix /unix.orig

2) Use vi to edit the following file
     vi /etc/conf/pack.d/clbi/space.c

3) Once you are in vi, locate the line that reads
     int clbi2_on = 0;

4) Change 0 to 1 to enable the secondary IDE channel.
   You can set clbi2_on back to 0 to disable the channel if needed later on.

5) Save the change and go to the configuration directory by typing
     cd /etc/conf/cf.d

6) Relink the UNIX kernel by typing
     ./link_unix

7) Reboot your system for the new kernel to take effect.  The new
   kernel should enable the secondary IDE port on CMD PCI646x controller.


TO OVERRIDE MODE SETTING FOR IDE DRIVES


The released driver is configured to honor advanced IDE timing mode reported
by the installed IDE drives.  You can, however, choose to override this 
setting with you own setting by performing the following steps.


1) Back up your  UNIX kernel by typing
     copy -om /unix /unix.orig

2) Use vi to edit the following file
     vi /etc/conf/pack.d/clbi/space.c

3) Once you are in vi, locate the line that reads
/*
 *             Operartion Mode, DMA/PIO Mode.
 *             ---------------  --------------
 */
clbiDriveModeOverRide[] =
{
			  0    ,  -1,         /* Highest PIO mode Drive 0 Prim*/
			  0    ,  -1,         /* Highest PIO mode Drive 1 Prim*/
			  0    ,  -1,         /* Highest PIO mode Drive 0 Secn*/
			  0    ,  -1          /* Highest PIO mode Drive 1 Secn*/
};

Special tunning parameters on per drive bases.
 The following entries are used to override each drive's
 default mode of operation.

 One entry per drive.

     Operation Mode   -    0 ->PIO  ,1 ->SWord DMA ,2 ->MWord DMA ,-1 ->Auto.
		0 : use PIO mode
		1 : use single-word DMA mode
		2 : use multi-word DMA mode
	       -1 : use DMA mode if the drive supports it, otherwise use PIO
		    mode

     DMA/PIO Mode     -    0 - N    Valid DMA/PIO mode.
			   -1       Highest PIO/DMA mode supported by drive.

Examples :

    The following sample entries forces system to  :
    
    drive 0 Primary to Multi-Word DMA mode 2
    drive 1 Primary to highest Multi-Word DMA Drive support Mode. 
    drive 0 Secondary to highest PIO support Mode. 
    drive 1 Secondary to PIO mode 4. 

clbiDriveModeOverRide[] =
{

	2      ,  2,    /* Override to Multi-Word DMA mode 2        */
	2      , -1,    /* use highest Multi-Word DMA support mode. */
	0      , -1,    /* use highest PIO support mode.            */
	0      ,  4,    /* Override to PIO mode 4                   */
};
     

4) Change the entry to the desired timing mode for each drive.

5) Save the change and go to the configuration directory by typing
     cd /etc/conf/cf.d

6) Relink the UNIX kernel with the new timing setting by typing
     ./link_unix

7) Reboot your system for the new kernel to take effect.  The new
   kernel should initialize the drive(s) to the new timing setting.

