WDPI(4) BSD Programmer's Manual WDPI(4)NAMEwdpi - EIDE ATAPI (SCSI over IDE) driver
SYNOPSIS
wdpi* at wdc? drive ? flags 0
tg* at wdpi? target?
options ATAPICHG
DESCRIPTION
This driver acts as a SCSI host adapter for IDE ATAPI devices. These de-
vices implement the SCSI protocol over an IDE controller/cable. It is
not possible to attach an ATAPI device to an ST-506 controller. Each AT-
API device on an IDE controller (cable) will appear as a separate SCSI
host bus adapter with a single target (0) and a single unit (0).
Only ATAPI CDROM devices have been tested. It is possible that ATAPI
tapes will work but this configuration has not been tested.
As a SCSI host bus adapter driver, this driver does not directly export
any devices to user level. The SCSI target driver (tg(4)) ends up a
child of wdc(4) and the SCSI disk (sd(4)), SCSI tape (st(4)), and SCSI
generic (sg(4)) drivers end up beneath the SCSI target driver. ATAPI de-
vices thus appear as standard SCSI devices at user level.
ATAPI CD changers (conforming to SFF8020i Rev 2.6) are supported if op-
tion may be omitted to save around 3Kbytes of kernel memory space.
The configuration flags parameter is broken up as follows:
Bit 0 (0x0001) When set, causes drives that use interrupt driven
command initiation to use polled command initiation.
If a given drive becomes ready for command data
quickly, this option may result in a performance in-
crease. Setting it will also generally cause an in-
crease in system CPU overhead.
Bit 1 (0x0002) When set, prevents the ATAPI CD-changer driver from
probing the device to determine if it is a changer.
Bits 8-15 (0xff00) Allow a delay to be inserted between each block data
transfer operation. This is needed to avoid data
corruption on some misconfigured/broken hardware.
The value of these 8 bits can be 0 (no delay), 0xff
(I/O done using inw/outw instead of insw/outsw with
no additional delay), or 1 through 254 (delay between
each inw/outw in microseconds). If you see data cor-
ruption, first try 0xff in this field then try values
from 1 up. Putting large values in this field will
increase system overhead.
It is possible to specify overrides for the flags parameters with the
boot program's -dev command.
BOOT PARAMETERS
The following drive parameter can be configured from boot(8) with the
-parm command. Typically these commands would be added to boot.default(5)
though they can be set at the ``Boot:'' prompt. They can be set for in-
dividual drives by number, or for all drives not explicitly listed when
specified for ``wdpi*''.
use_dma If this parameter is specified as ``yes'', DMA is en-
abled.
SEE ALSOsd(4), st(4), wdc(4), wd(4), boot(8)HISTORY
Written by Eric Varsanyi of BSDI for BSD/OS 2.1.
BSDI BSD/OS December 13, 1996 2