

              Adaptec 7770 Family Manager for NetWare 3.1x 
              =============================================

-----------------------------------------------------------------------------

Driver Name:              AIC7770.DSK

Supported Host Adapters:  AHA-274xA, AHA-274xAT, AHA-274xW, AHA-284xA,
                          AIC-7770 chip

----------------------------------------------------------------------------

This subdirectory contains Adaptec's NetWare v3.1x SCSI disk modules
and Advanced SCSI Programming Interface (ASPI) managers.  ALL of Adaptec's
NetWare 386 drivers have full support for standard SCSI disk drives,
"NetWare Ready" drives, and removable media disk drives (including optical
drives).

The driver also contains a built-in ASPI manager.  This allows for
other NetWare Loadable Modules (NLMs) to gain access to the host adapter.
Given the flexibility of ASPI, several companies are currently providing
server-based tape backup solutions through ASPI.  SBackup is a server based
tape backup solution which is shipped by Novell starting with NetWare 3.11.
SBackup supports the ASPI interface.  There are other ASPI modules already
developed or under development.  A programming specification is available
from Adaptec if you are interested in writing your own NetWare 386
ASPI module.

To load the driver:

                 :load [path] aic7770 [options]

AIC7770.DSK has been modified to support a new SCB swapping scheme. This
improves performance of the SCSI subsystem, particularly with configurations
that include multiple hard disk drives.  The feature requires an enhanced
version of the AIC-7770 chip architecture (rev. E or higher.)  The driver,
without this feature, still works on non-rev. E chips.

If your file server does a lot of IO operations and you want to try opti-
mizing its performance, you can adjust the "max_tags=?" and "max_nontags"
command line switch.  These switches control the maximum number of tagged
and non-tagged commands outstanding at a given device, respectively.
Refer to your disk-drive's documentation to determine if tagged-queuing is
supported, and the maximum number of outstanding commands supported.
Default values are 8 and 2, respectively.  Examples of changing this feature
are below:

                 :load aic7770 max_tags=2 max_nontags=1
           or
                 :load aic7770 tag_disable=ffff max_nontags=1

The first example is set for tag-queuing drives and the second case is for
non-tag-queuing drives. The max_tags parameter can be set as 2, 4, 6, 8, or
10.  The max_non_tags parameter can be set as 1 or 2.  Larger values give
the drives more opportunity for optimization, but take up more memory
in the server.  In some instances, drives may not support the driver's
maximum count, or may suffer starvation problems with large counts.

Some systems may not work well with your host adapter configured to use
interrupt 15.  It's recommended that you use any available interrupt except
15 when using AIC7770.DSK with Novell NetWare 386.

*****************************************************************************

The following table shows default values for driver command line options.
Please refer to the User's Guide Netware chapter for more detailed
descriptions.

=============================================================================
   OPTION               DEFAULT VALUE            RANGE
-----------------------------------------------------------------------------

   slot                 n/a                      1-15
   verbose              n                        y,n
   removable            on                       on,off
   fixed_disk           on                       on,off
   dev_enable           ffh                      00-ffh (bitmask)
   tag_disable          00h                      00-ffh (bitmask)
   flush_diskreq        00, see below            00-ffh (bitmask)
   io_combine           16                       1-16   (decimal)
   max_sectors          128                      1-128  (decimal)
   max_tags             8                        1-32   (decimal)
   max_nontags          2                        1-2    (decimal)
   read_after_write     1                        0,1 (1=write and verify,
                                                      0=write only)
   instrumentation      0                        0,1 (1=turn on performance
                                                        instrumentation)
   multlun_targets      see below                0-ffh  (bitmask)
   lun_enable           see below                01-ffh (bitmask)

Note: All bitmasks except lun_enable are extended to 16 bits (ffffh)
for the AHA-274xW (wide) boards.  They are extended to 24 bits (ff00ffh)
for AHA-274xT (twin) boards, with bits 16-23 referring to the
secondary channel.

Lun_enable refers to lun's 0-7, to be scanned on all targets.  It is
also extended to 24 bits for AHA-274xT (twin boards), with bits 16-23
referring to the targets on the secondary channel.

Multiple LUN support was previously supported only through the lun_enable
switch.  The multlun_targets switch was added to avoid problems during scan
with targets that do not handle multiple LUN's gracefully.  It is a
per-target mask, which specifies the targets on which 8 LUN's will be
scanned.

The two switches can be used separately or together:
    multlun_targets=C (Scan for 8 LUN's on devices 2 and 3.)
    lun_enable=F      (Scan for LUN's 0-3 on all targets.)
    multlun_targets=3 lun_enable=7  (Scan for LUN's 0-2, but only on
        targets 0 and 1.  Scan for LUN 0 only on all other targets.)

If LUN 0 is not present for a given device, multiple LUN's are never
scanned.

Flush_diskreq specifies targets on which an ordered tag will be sent
every 64 commands.  This forces all outstanding commands to be completed
before the ordered-tag command, avoiding starvation problems.

A start_unit switch also exists for aspicd.dsk.
The default is ffffh (all targets).  It may need to be turned off
to avoid SCSI bus hangs caused by multiple-LUN CD-ROM's.  This switch
will not effect non-CD devices.

=============================================================================

