NCR(4) BSD Programmer's Manual NCR(4)NAMEncr - NCR 53C800 series SCSI host adapter driver
SYNOPSISncr at pci?
DESCRIPTION
The ncr driver is the software interface for SCSI host bus adapters built
around the NCR 53C800 series of components. The parts must logically ap-
pear on the PCI bus, either on a plug in PCI card or directly on the
mother board. Currently the 810, 815, 820, 825, 860, 875, 885, 895 and
896 are supported.
The ncr driver is designed to be used as a machine-dependent back end for
machine-independent SCSI pseudo-devices (see sd(4), sg(4), st(4)).
Booting from a SCSI disk attached to host bus adapters supported by this
driver is done via generic BIOS boot code.
FDISK
Some versions of the NCR BIOS require a disk to have an FDISK label to be
bootable. The NCR BIOS tries to use the geometry from the FDISK label.
If block 0 is all zeros then it will supply a geometry. However, if a
BSD/OS label is present, the BIOS will be confused and report 0 heads and
0 sectors per track. This makes it impossible to specify the sec-
tor/head/track address of any block other than zero.
CONFIGURATION
Host bus adapters supported by this driver are located using standard PCI
addressing, and then mapped into memory space. It is therefore not neces-
sary to supply a port address for these devices. The irq is selected by
the BIOS. It is important to have this driver configured in the kernel
before drivers which select their irq from those irqs which have not yet
been assigned.
BOOT PARAMETERS
There are now parameters which are configurable 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.
Many of the parameters take as an argument one or more target ids. The
following are permissible arguments to these parameters:
t0 target 0.
target0 target 0.
t1 target 1.
target1 target 1.
t2 target 2.
target2 target 2.
.
.
.
t14 target 14
target14 target 14
t15 target 15
target15 target 15
all targets 0 through 15
none no targets
The following parameters take a list of target specifiers as an argu-
ment(s):
disconnect
These targets are allowed to disconnect. Examples:
-parm ncr* disconnect=all #default
-parm ncr0 disconnect=all-t1 #all but target 1
fast Fast SCSI, up to 10MB sync rate will be negotiated for
these targets. Examples:
-parm ncr* fast=all #default
-parm ncr0 fast=t1,t2 #targets 1 and 2.
id_message
Send id message after selecting these targets. It may be
necessary to disable sending the id message on a few very
old targets. Examples:
-parm ncr* id_message=all #default
-parm ncr0 id_message=all-target1 #all but target 1
single_lun
For these targets only look at lun 0.
-parm ncr* single_lun=none #default
-parm ncr* single_lun=all
skip_targets
These targets will not be probed at boot. Examples:
-parm ncr* skip_targets=none #default
-parm ncr0 skip_targets=target5 #Don't probe target 5
sync Sync transfer will be negotiated for these targets. Exam-
ples:
-parm ncr* sync=all #default
-parm ncr0 sync=all-t1-t2 #all but target 1 and 2
tags These targets will use tag queueing if supported by the
target. See sd(4) for caveats on its use. Examples:
-parm ncr* tags=none #default
-parm ncr1 tags=all-t1 #all but target 1
ultra Ultra SCSI, up to 20MB sync rate will be negotiated for
these targets. Examples:
-parm ncr* ultra=none #default for controllers which don't
support ultra
-parm ncr* ultra=all #default for controllers which sup-
port ultra
-parm ncr* ultra=all #targets 2, 3 and 4
ultra2 Ultra2 SCSI, up to 40MB sync rate will be negotiated for
these targets. Examples:
-parm ncr* ultra2=none #default for controllers which
don't support ultra
-parm ncr* ultra2=all #default for controllers which sup-
port ultra
-parm ncr* ultra2=all #targets 2, 3 and 4
wide Wide negotiation will be attempted with these targets. If
any targets are marked as being wide then targets between 8
and 15 will be probed at boot time. Examples:
-parm ncr* wide=none #default for narrow controllers
-parm ncr* wide=all #default for wide controllers
-parm ncr* wide=all #all targets
busted_v3sync
Some targets which claim to be SCSI-3 compliant do not sup-
port the SCSI-3 method of negotiating bus transfer options.
Setting this option will cause the driver to treat a target
which claims to be SCSI-3 as if it were a SCSI-2 device.
Examples:
-parm ncr* busted_v3sync=none #default
-parm ncr0 busted_v3sync=all
The following parameters take a yes or no as an argument:
parity Enable parity checking on the SCSI bus. Examples:
-parm ncr* parity=yes #default
-parm ncr0 parity=no
tolerant
Enable NCR/Symbios Tolerant Technology. Examples:
-parm ncr* tolerant=yes #default
-parm ncr1 tolerant=no
ledctl Enable the controller's activity LED. The I/O line that
controls the activity LED is sometimes used for other pur-
poses. By default, the ncr driver does not control the ac-
tivity LED. Setting this parameter to yes will cause the
driver to examine the controller's state as programmed by
the NCR BIOS. If the BIOS configured the controller with
the activity LED enabled, the driver will control the ac-
tivity LED. Controllers based on the 896 chip use hardware
LED control, while the other chips require the LED to be
manipulated from scripts. For all controllers, this parame-
ter must be set to yes for any LED control to be used. Ex-
amples:
-parm ncr* ledctl=no #default
-parm ncr0 ledctl=yes
The following parameters take a numeric value as an argument:
initiator_id
Set the initiator id of the adapter to this. If there are
any narrow targets setting of the initiator id above 7 will
cause the SCSI bus to hang.
-parm ncr* initiator_id=7 #default
reset_delay
This is used to control the number of seconds of delay
which is inserted after the SCSI bus is reset at boot time.
-parm ncr* reset_delay=5 #default
-parm ncr* reset_delay=1 #1 second reset delay
-parm ncr* reset_delay=0 #no delay after reset
FILES
/etc/boot.default Default boot command
SEE ALSOsd(4), st(4), boot(8)BSDI BSD/OS September 17, 1999 3