home | help
AHD(4)			     Kernel Interfaces Manual			  AHD(4)

NAME
     ahd -- Adaptec PCI/PCI-X Ultra320 SCSI host adapter driver

SYNOPSIS
     To compile this driver into the kernel, place the following lines in your
     kernel configuration file:

	   device pci
	   device scbus
	   device ahd

	   To compile in debugging code:
	   options AHD_DEBUG
	   options AHD_DEBUG_OPTS=<bitmask of options>
	   options AHD_REG_PRETTY_PRINT

	   To configure one or more controllers to assume the target role:
	   options AHD_TMODE_ENABLE=<bitmask of units>

     Alternatively, to load the driver as a module at boot time, place the
     following line in loader.conf(5):

	   ahd_load="YES"

DESCRIPTION
     This  driver  provides  access  to  the  SCSI  bus(es) connected to Adaptec
     AIC79xx host adapter chips.

     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.

     The  AHD_DEBUG_OPTS option is used to control which diagnostic messages are
     printed to the console when AHD_DEBUG is enabled.	Logically OR the follow-
     ing bits together:

	   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

     The AHD_REG_PRETTY_PRINT option compiles in support for human-readable  bit
     definitions  for each register that is printed by the debugging code.  How-
     ever, it also bloats the compiled	size  of  the  driver  by  approximately
     215KB.

     Individual  controllers  may  be  configured  to operate in the target role
     through the 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.
     Note that target mode is only supported for ultra160 speeds and below.

     Per target configuration performed in the SCSI-Select menu,  accessible  at
     boot,  is	honored  by this driver.  This includes synchronous/asynchronous
     transfers, maximum synchronous negotiation rate, wide transfers, disconnec-
     tion, and the host adapter's SCSI ID.

HARDWARE
     The ahd driver supports the following:

     *	 Adaptec AIC7901 host adapter chip
     *	 Adaptec AIC7901A host adapter chip
     *	 Adaptec AIC7902 host adapter chip
     *	 Adaptec 29320 host adapter
     *	 Adaptec 39320 host adapter
     *	 Many motherboards with on-board SCSI support

SEE ALSO
     ahc(4), cd(4), da(4), sa(4), scsi(4)

HISTORY
     The ahd driver first appeared in FreeBSD 4.7.

AUTHORS
     The ahd driver, the AIC7xxx sequencer-code assembler, and the firmware run-
     ning on the aic79xx chips was written by Justin T. Gibbs.	This manual page
     is based on the ahc(4) manual page.

BUGS
     The current generation of 79xx chips do not support target mode in Ultra320
     mode.  Target mode in general has not been well tested in this driver.

FreeBSD 6.3			  July 4, 2004				  AHD(4)

home | help