devb-adpu320

Driver for Adaptec AIC-7901/7902-based SCSI adapters (QNX Neutrino)


Note: You must be root to start this driver.

Syntax:

devb-adpu320 [cam option[,option]...]
          [cdrom option[,option]...]
          [disk option[,option]...]
          [optical option[,option]...]
          [adpu320 option[,option]...]
          [blk option[,option]...] &

Runs on:

Neutrino

Options:


Note: Use commas (,) to separate the options. You can put the cam, cdrom, disk, optical, adpu320, and blk groups of options in any order.

cam options

lun=mask
Enable Logical Unit Number (LUN) scan for the devices specified in mask. The mask is a hex bitmask specifying which IDs to scan for; the default is 0x00.
quiet
Be quiet: don't display any information on startup.
verbose
Be verbose: display full information about SCSI units (devices) on startup.

cdrom options

The cdrom options control the driver's interface to cam-cdrom.so. If specified, they must follow the cdrom keyword.

disk options

The disk options control the driver's interface to cam-disk.so. If specified, they must follow the disk keyword.

optical options

The optical options control the driver's interface to cam-optical.so. If specified, they must follow the optical keyword.

adpu320 options

The adpu320 options control the driver's interface to the U320 series controllers. If you've installed multiple controllers, you can repeat these options for each controller. Remember, however, to specify the adpu320 keyword before each controller's set of options.

vid= vid
The vendor ID of the controller.
did=did
The device ID of the controller.
pci=index
The PCI index of the controller in the machine, where index is a value between 0 and the number of adapters.

blk options

The blk options control io-blk.so. If specified, they must follow the blk keyword.

Description:

The devb-adpu320 driver is for SCSI adapters based on the Adaptec AIC-790X chips.

Controllers supported by this driver include, but aren't necessarily limited to:

Manufacturer Controller
Adaptec AIC-7901
Adaptec AIC-7902
Adaptec 29320A-R

If you have problems with the PCI adapter make sure that you have an up to date version of the the adapter BIOS as well as system BIOS.

Controllers are numbered from 0 to n, in the order they're found. For each controller, the driver performs a scan, looking for installed units. All targets are scanned (0 to 7) and for each target, each LUN (Logical Unit Number) is scanned (0 to 7). Devices are numbered starting from 0, and each type of device is numbered separately.

The devb-adpu320 driver closes its standard input, standard output and standard error immediately after completing its initializations. Error messages may be produced during the initialization phase and are written to standard error.

Examples:

Assume an U320 controller, and list all connected devices:

devb-adpu320 &

Assume an U320 PCI controller with a PCI index of 1, and list all connected devices:

devb-adpu320 adpu320 pci=1 &

Files:

The devb-adpu320 driver causes io-blk.so to adopt various block special devices under /dev. These devices are normally named hd n (or cd n for CD-ROMs), where n is the physical unit number of the device. This driver could also require the following shared objects:

Binary Required
cam-cdrom.so For CD-ROM access
cam-disk.so For hard-disk access
libcam.so Always

Exit status:

The devb-adpu320 driver terminates only if an error occurs during startup, or if it has successfully forked itself upon startup because it hadn't been initially started in the background.

0
The devb-adpu320 driver wasn't started in the background and therefore forked itself. The original process terminated with a zero exit status, the forked process continued.
> 0
An error occurred during startup.

Caveats:

Unless overridden with the blk automount= option (see io-blk.so), devices are mounted as:

Device Mountpoint Filesystem type
/dev/hd0t77 /hd qnx4
/dev/cd0 /cd cd
/dev/hd0t6 /dos dos
/dev/hd0t11 /dos dos

While there's no limit to the size of a disk or partition, I/O (i.e. the lseek(), read() and write() functions) is currently limited to 2 gigabytes per partition (or disk). This I/O limit has no effect on the partition size for mounted filesystems.

Known supported functions include:

chmod(), chown(), close(), closedir(), creat(), devctl(), dup(), dup2(), fcntl(), fpathconf(), fstat(), lseek(), mkdir(), mkfifo(), mknod(), open(), opendir(), pathconf(), read(), readdir(), readlink(), rewinddir(), rmdir(), stat(), symlink(), unlink() (not supported for directories$ utime(), write()

Note that certain calls (such as pipe(), as well as read() and write() on FIFOs) may require the pipe manager.

See also:

cam-*, devb-*, fs-*, io-blk.so

Filesystems and block I/O (devb-*) drivers in the Fine-Tuning Your System chapter of the QNX Neutrino User's Guide