Sync ahc(4) and ahd(4) with FreeBSD 6.
authorSascha Wildner <swildner@dragonflybsd.org>
Sat, 7 Jul 2007 18:31:59 +0000 (18:31 +0000)
committerSascha Wildner <swildner@dragonflybsd.org>
Sat, 7 Jul 2007 18:31:59 +0000 (18:31 +0000)
share/man/man4/ahc.4
share/man/man4/ahd.4

index cb251a0..b259e66 100644 (file)
 .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .\"
-.\" $FreeBSD: src/share/man/man4/ahc.4,v 1.22.2.8 2002/01/21 17:38:18 scottl Exp $
-.\" $DragonFly: src/share/man/man4/ahc.4,v 1.4 2007/05/17 08:19:01 swildner Exp $
+.\" $FreeBSD: src/share/man/man4/ahc.4,v 1.38.2.1 2006/06/05 19:30:28 brueffer Exp $
+.\" $DragonFly: src/share/man/man4/ahc.4,v 1.5 2007/07/07 18:31:59 swildner Exp $
 .\"
-.Dd February 13, 2000
+.Dd July 7, 2007
 .Dt AHC 4
 .Os
 .Sh NAME
 .Nm ahc
 .Nd Adaptec VL/EISA/PCI SCSI host adapter driver
 .Sh SYNOPSIS
+To compile this driver into the kernel,
+place the following lines in your
+kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "device scbus"
+.Cd "device ahc"
+.Pp
 For one or more VL/EISA cards:
-.Cd device eisa
-.Cd device ahc
+.Cd "device eisa"
 .Pp
 For one or more PCI cards:
-.Cd device pci
-.Cd device ahc
+.Cd "device pci"
 .Pp
 To allow PCI adapters to use memory mapped I/O if enabled:
 .Cd options AHC_ALLOW_MEMIO
 .Pp
 To configure one or more controllers to assume the target role:
 .Cd options AHC_TMODE_ENABLE <bitmask of units>
+.Ed
 .Pp
-For one or more SCSI busses:
-.Cd device scbus0 at ahc0
+Alternatively, to load the driver as a
+module at boot time, place the following lines in
+.Xr loader.conf 5 :
+.Bd -literal -offset indent
+ahc_load="YES"
+ahc_eisa_load="YES"
+ahc_isa_load="YES"
+ahc_pci_load="YES"
+.Ed
 .Sh DESCRIPTION
 This driver provides access to the
 .Tn SCSI
-bus(es) connected to Adaptec
-.Tn AIC7770 ,
-.Tn AIC7850 ,
-.Tn AIC7860 ,
-.Tn AIC7870 ,
-.Tn AIC7880 ,
-.Tn AIC7890 ,
-.Tn AIC7891 ,
-.Tn AIC7892 ,
-.Tn AIC7895 ,
-.Tn AIC7896 ,
-.Tn AIC7897
-and
-.Tn AIC7899
+bus(es) connected to the Adaptec AIC77xx and AIC78xx
 host adapter chips.
-These chips are found on many motherboards as well as the following
-Adaptec SCSI controller cards:
-.Tn 274X(W) ,
-.Tn 274X(T) ,
-.Tn 284X ,
-.Tn 2910 ,
-.Tn 2915 ,
-.Tn 2920 ,
-.Tn 2930C ,
-.Tn 2930U2 ,
-.Tn 2940 ,
-.Tn 2940U ,
-.Tn 2940AU ,
-.Tn 2940UW ,
-.Tn 2940UW Dual ,
-.Tn 2940UW Pro ,
-.Tn 2940U2W ,
-.Tn 2940U2B ,
-.Tn 2950U2W ,
-.Tn 2950U2B ,
-.Tn 19160B ,
-.Tn 29160B ,
-.Tn 29160N ,
-.Tn 3940 ,
-.Tn 3940U ,
-.Tn 3940AU ,
-.Tn 3940UW ,
-.Tn 3940AUW ,
-.Tn 3940U2W ,
-.Tn 3950U2 ,
-.Tn 3960 ,
-.Tn 39160 ,
-.Tn 3985 ,
-and
-.Tn 4944UW .
 .Pp
 Driver features include support for twin and wide busses,
 fast, ultra or ultra2 synchronous transfers depending on controller type,
@@ -125,9 +90,11 @@ with this option enabled.
 Individual controllers may be configured to operate in the target role
 through the
 .Dq Dv AHC_TMODE_ENABLE
-configuration option.  The value assigned to this option should be a bitmap
+configuration option.
+The value assigned to this option should be a bitmap
 of all units where target mode is desired.
 For example, a value of 0x25, would enable target mode on units 0, 2, and 5.
+A value of 0x8a enables it for units 1, 3, and 7.
 .Pp
 Per target configuration performed in the
 .Tn SCSI-Select
@@ -165,7 +132,8 @@ but care should be taken when using a 284x
 .Pq Tn VESA No local bus controller
 in an
 .Tn EISA
-system.  The jumpers setting the I/O area for the 284x should match the
+system.
+The jumpers setting the I/O area for the 284x should match the
 .Tn EISA
 slot into which the card is inserted to prevent conflicts with other
 .Tn EISA
@@ -175,7 +143,8 @@ Performance and feature sets vary throughout the aic7xxx product line.
 The following table provides a comparison of the different chips supported
 by the
 .Nm
-driver.  Note that wide and twin channel features, although always supported
+driver.
+Note that wide and twin channel features, although always supported
 by a particular chip, may be disabled in a particular motherboard or card
 design.
 .Pp
@@ -221,12 +190,188 @@ Multiple Target IDs - Allows the controller to respond to selection as a
 target on multiple SCSI IDs.
 .El
 .Ed
+.Sh HARDWARE
+The
+.Nm
+driver supports the following
+.Tn SCSI
+host adapter chips and
+.Tn SCSI
+controller cards:
+.Pp
+.Bl -bullet -compact
+.It
+Adaptec
+.Tn AIC7770
+host adapter chip
+.It
+Adaptec
+.Tn AIC7850
+host adapter chip
+.It
+Adaptec
+.Tn AIC7860
+host adapter chip
+.It
+Adaptec
+.Tn AIC7870
+host adapter chip
+.It
+Adaptec
+.Tn AIC7880
+host adapter chip
+.It
+Adaptec
+.Tn AIC7890
+host adapter chip
+.It
+Adaptec
+.Tn AIC7891
+host adapter chip
+.It
+Adaptec
+.Tn AIC7892
+host adapter chip
+.It
+Adaptec
+.Tn AIC7895
+host adapter chip
+.It
+Adaptec
+.Tn AIC7896
+host adapter chip
+.It
+Adaptec
+.Tn AIC7897
+host adapter chip
+.It
+Adaptec
+.Tn AIC7899
+host adapter chip
+.It
+Adaptec
+.Tn 274X(W)
+.It
+Adaptec
+.Tn 274X(T)
+.It
+Adaptec
+.Tn 284X
+.It
+Adaptec
+.Tn 2910
+.It
+Adaptec
+.Tn 2915
+.It
+Adaptec
+.Tn 2920
+.It
+Adaptec
+.Tn 2930C
+.It
+Adaptec
+.Tn 2930U2
+.It
+Adaptec
+.Tn 2940
+.It
+Adaptec
+.Tn 2940J
+.It
+Adaptec
+.Tn 2940N
+.It
+Adaptec
+.Tn 2940U
+.It
+Adaptec
+.Tn 2940AU
+.It
+Adaptec
+.Tn 2940UW
+.It
+Adaptec
+.Tn 2940UW Dual
+.It
+Adaptec
+.Tn 2940UW Pro
+.It
+Adaptec
+.Tn 2940U2W
+.It
+Adaptec
+.Tn 2940U2B
+.It
+Adaptec
+.Tn 2950U2W
+.It
+Adaptec
+.Tn 2950U2B
+.It
+Adaptec
+.Tn 19160B
+.It
+Adaptec
+.Tn 29160B
+.It
+Adaptec
+.Tn 29160N
+.It
+Adaptec
+.Tn 3940
+.It
+Adaptec
+.Tn 3940U
+.It
+Adaptec
+.Tn 3940AU
+.It
+Adaptec
+.Tn 3940UW
+.It
+Adaptec
+.Tn 3940AUW
+.It
+Adaptec
+.Tn 3940U2W
+.It
+Adaptec
+.Tn 3950U2
+.It
+Adaptec
+.Tn 3960
+.It
+Adaptec
+.Tn 39160
+.It
+Adaptec
+.Tn 3985
+.It
+Adaptec
+.Tn 4944UW
+.It
+NEC PC-9821Xt13 (PC-98)
+.It
+NEC RvII26 (PC-98)
+.It
+NEC PC-9821X-B02L/B09 (PC-98)
+.It
+NEC SV-98/2-B03 (PC-98)
+.It
+Many motherboards with on-board
+.Tn SCSI
+support
+.El
 .Sh SCSI CONTROL BLOCKS (SCBs)
 Every transaction sent to a device on the SCSI bus is assigned a
 .Sq SCSI Control Block
-(SCB).  The SCB contains all of the information required by the
-controller to process a transaction.  The chip feature table lists
-the number of SCBs that can be stored in on-chip memory.  All chips
+(SCB).
+The SCB contains all of the information required by the
+controller to process a transaction.
+The chip feature table lists
+the number of SCBs that can be stored in on-chip memory.
+All chips
 with model numbers greater than or equal to 7870 allow for the on chip
 SCB space to be augmented with external SRAM up to a maximum of 255 SCBs.
 Very few Adaptec controller configurations have external SRAM.
@@ -238,17 +383,22 @@ To fully utilize the SCSI bus and the devices on it,
 requires much more concurrency.
 The solution to this problem is
 .Em SCB Paging ,
-a concept similar to memory paging.  SCB paging takes advantage of
+a concept similar to memory paging.
+SCB paging takes advantage of
 the fact that devices usually disconnect from the SCSI bus for long
-periods of time without talking to the controller.  The SCBs
-for disconnected transactions are only of use to the controller
-when the transfer is resumed.  When the host queues another transaction
+periods of time without talking to the controller.
+The SCBs for disconnected transactions are only of use to the controller
+when the transfer is resumed.
+When the host queues another transaction
 for the controller to execute, the controller firmware will use a
-free SCB if one is available.  Otherwise, the state of the most recently
+free SCB if one is available.
+Otherwise, the state of the most recently
 disconnected (and therefore most likely to stay disconnected) SCB is
 saved, via dma, to host memory, and the local SCB reused to start
-the new transaction.  This allows the controller to queue up to
-255 transactions regardless of the amount of SCB space.  Since the
+the new transaction.
+This allows the controller to queue up to
+255 transactions regardless of the amount of SCB space.
+Since the
 local SCB space serves as a cache for disconnected transactions, the
 more SCB space available, the less host bus traffic consumed saving
 and restoring SCB data.
@@ -275,22 +425,24 @@ and the firmware running on the aic7xxx chips was written by
 .Sh BUGS
 Some Quantum drives (at least the Empire 2100 and 1080s) will not run on an
 .Tn AIC7870
-Rev B in synchronous mode at 10MHz.  Controllers with this problem have a
-42 MHz clock crystal on them and run slightly above 10MHz.  This confuses
-the drive and hangs the bus.  Setting a maximum synchronous negotiation rate
-of 8MHz in the
+Rev B in synchronous mode at 10MHz.
+Controllers with this problem have a
+42 MHz clock crystal on them and run slightly above 10MHz.
+This confuses the drive and hangs the bus.
+Setting a maximum synchronous negotiation rate of 8MHz in the
 .Tn SCSI-Select
 utility will allow normal operation.
 .Pp
 Although the Ultra2 and Ultra160 products have sufficient instruction
 ram space to support both the initiator and target roles concurrently,
 this configuration is disabled in favor of allowing the target role
-to respond on multiple target ids.  A method for configuring dual
-role mode should be provided.
+to respond on multiple target ids.
+A method for configuring dual role mode should be provided.
 .Pp
 Tagged Queuing is not supported in target mode.
 .Pp
 Reselection in target mode fails to function correctly on all high
-voltage differential boards as shipped by Adaptec.  Information on
+voltage differential boards as shipped by Adaptec.
+Information on
 how to modify HVD board to work correctly in target mode is available
 from Adaptec.
index a262d5e..765c9d4 100644 (file)
 .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .\"
-.\" $FreeBSD: src/share/man/man4/ahd.4,v 1.2.2.1 2002/09/01 22:35:34 scottl Exp $
-.\" $DragonFly: src/share/man/man4/ahd.4,v 1.5 2007/05/17 08:19:01 swildner Exp $
+.\" $FreeBSD: src/share/man/man4/ahd.4,v 1.6.2.1 2006/06/05 19:30:28 brueffer Exp $
+.\" $DragonFly: src/share/man/man4/ahd.4,v 1.6 2007/07/07 18:31:59 swildner Exp $
 .\"
-.Dd September 1, 2002
+.Dd July 7, 2007
 .Dt AHD 4
 .Os
 .Sh NAME
 .Nm ahd
 .Nd Adaptec PCI/PCI-X Ultra320 SCSI host adapter driver
 .Sh SYNOPSIS
-For one or more PCI/PCI-X cards:
-.Cd device pci
-.Cd device ahd
+To compile this driver into the kernel,
+place the following lines in your
+kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "device pci"
+.Cd "device scbus"
+.Cd "device ahd"
 .Pp
-To compile in debugging code.
+To compile in debugging code:
 .Cd options AHD_DEBUG
 .Cd options AHD_DEBUG_OPTS=<bitmask of options>
 .Cd options AHD_REG_PRETTY_PRINT
 .Pp
 To configure one or more controllers to assume the target role:
 .Cd options AHD_TMODE_ENABLE=<bitmask of units>
+.Ed
 .Pp
-For one or more SCSI busses:
-.Cd device scbus
+Alternatively, to load the driver as a
+module at boot time, place the following line in
+.Xr loader.conf 5 :
+.Bd -literal -offset indent
+ahd_load="YES"
+.Ed
 .Sh DESCRIPTION
 This driver provides access to the
 .Tn SCSI
 bus(es) connected to Adaptec
-.Tn AIC7901
-and
-.Tn AIC7902
+.Tn AIC79xx
 host adapter chips.
-These chips are found on many motherboards as well as the
-.Tn 29320
-and
-.Tn 39320
-Adaptec SCSI controller cards.
 .Pp
 Driver features include support for narrow and wide busses,
 fast, ultra, ultra2, ultra160, and ultra320 synchronous transfers,
 packetized transfers, tagged queueing, 512 SCB's, and target mode.
 .Pp
 The
-.Dq Dv AHD_DEBUG_OPTS
+.Dv AHD_DEBUG_OPTS
 option is used to control which diagnostic messages are printed to the
 console when
-.Dq Dv AHD_DEBUG
-is enabled.  Logically 'or' the following bits together:
-.Pp
-.Bd -ragged -offset indent
-.Bl -column "Value " Function
-.Em "Value   Function"
-0x0001  Show miscellaneous information
-0x0002  Show sense data
-0x0004  Show Serial EEPROM contents
-0x0008  Show bus termination settings
-0x0010  Show host memory usage
-0x0020  Show SCSI protocol messages
-0x0040  Show mode pointer of the chip register window
-0x0080  Show selection timeouts
-0x0100  Show FIFO usage messages
-0x0200  Show Queue Full status
-0x0400  Show SCB queue status
-0x0800  Show inbound packet information
-0x1000  Show S/G list information
-0x2000  Enable extra diagnostic code in the firmware
+.Dv AHD_DEBUG
+is enabled.
+Logically OR the following bits together:
+.Bl -column -offset indent Value Function
+.Em "Value     Function"
+0x0001 Show miscellaneous information
+0x0002 Show sense data
+0x0004 Show Serial EEPROM contents
+0x0008 Show bus termination settings
+0x0010 Show host memory usage
+0x0020 Show SCSI protocol messages
+0x0040 Show mode pointer of the chip register window
+0x0080 Show selection timeouts
+0x0100 Show FIFO usage messages
+0x0200 Show Queue Full status
+0x0400 Show SCB queue status
+0x0800 Show inbound packet information
+0x1000 Show S/G list information
+0x2000 Enable extra diagnostic code in the firmware
 .El
-.Ed
 .Pp
 The
-.Dq Dv AHD_REG_PRETTY_PRINT
+.Dv AHD_REG_PRETTY_PRINT
 option compiles in support for human-readable bit definitions for each register
-that is printed by the debugging code.  However, it also bloats the compiled
+that is printed by the debugging code.
+However, it also bloats the compiled
 size of the driver by approximately 215KB.
 .Pp
 Individual controllers may be configured to operate in the target role
 through the
-.Dq Dv AHD_TMODE_ENABLE
-configuration option.  The value assigned to this option should be a bitmap
+.Dv AHD_TMODE_ENABLE
+configuration option.
+The value assigned to this option should be a bitmap
 of all units where target mode is desired.
-For example, a value of 0x25, would enable target mode on units 0, 2, and 5.
+For example, a value of 0x25 would enable target mode on units 0, 2, and 5.
 Note that target mode is only supported for ultra160 speeds and below.
 .Pp
 Per target configuration performed in the
@@ -117,7 +119,40 @@ This includes synchronous/asynchronous transfers,
 maximum synchronous negotiation rate,
 wide transfers,
 disconnection,
-and the host adapter's SCSI ID.
+and the host adapter's
+.Tn SCSI
+ID.
+.Sh HARDWARE
+The
+.Nm
+driver supports the following:
+.Pp
+.Bl -bullet -compact
+.It
+Adaptec
+.Tn AIC7901
+host adapter chip
+.It
+Adaptec
+.Tn AIC7901A
+host adapter chip
+.It
+Adaptec
+.Tn AIC7902
+host adapter chip
+.It
+Adaptec
+.Tn 29320
+host adapter
+.It
+Adaptec
+.Tn 39320
+host adapter
+.It
+Many motherboards with on-board
+.Tn SCSI
+support
+.El
 .Sh SEE ALSO
 .Xr ahc 4 ,
 .Xr cd 4 ,