devb-amd

Driver for AMD 53c974/79C974 PCI SCSI host adapters (QNX Neutrino)


Note: You must be root to start this driver.

Syntax:

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

Runs on:

Neutrino

Options:


Note: Use commas (,) to separate the options. You can put the cam, cdrom, disk, optical, amd, 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.

amd options

The amd options control the drivers interface to the AMD 53c974 and 79C974 series controllers. If you've installed multiple controllers, you can repeat these options for each controller. Remember, however, to specify the amd keyword before each controller's set of options.

disconnect=mask
Specify the disconnect mask. The default is 0xFF.
fast=mask
Specify the fast SCSI mask. The default is 0xFF.
pci=index
The PCI index of the controller in the machine, where index is a value between 0 and the number of adapters.
noreset
Don't reset controller at initialization time.
sync=mask
Disable synchronous transfers.

blk options

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

Description:

The devb-amd driver is for AMD 53c974 and AMD 79C974 SCSI disk controllers.

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.


Note: The devb-amd driver autodetects all AMD 53c974 and AMD 79C974 adapters by default, therefore you must specify the amd pci option to the driver if you want a specific SCSI adapter to be used.

The devb-amd 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 AMD 53c974 controller, and list all connected devices:

devb-amd &

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

devb-amd amd pci=1 &

Files:

The devb-amd driver causes io-blk.so to adopt various block special devices under /dev. These devices are normally named hdn (or cdn 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-amd 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-amd 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:

io-blk.so

"Block-oriented drivers (devb-*)," "Common access method (cam-*)," and "Filesystem drivers (fs-*)" in the Utilities Summary