[Previous] [Contents] [Next]

Fsys.aha4scsi

Driver for Adaptec 154x and compatible SCSI host adapters (QNX)

Syntax:

Fsys.aha4scsi [general_options] [fsys fsys_options]
              [aha4scsi aha4scsi_options]...

Options:

general_options

If specified, the general_options must precede any fsys or aha4scsi options:

-a unit=type
Add this unit to the driver's device list. You should find this option handy in situations where a SCSI device might not be powered up when the driver performs its scan. Without -a, the only devices the driver will support are those that respond during the scan. You can specify multiple -a options.

The unit can be one of the following combinations (the number of commas affects how the unit information is interpreted; see also the Examples section):

Specify Meaning
controller,target,lun fully specified controller, target, and LUN
controller,target equivalent to controller,target,0
target equivalent to 0,target,0
In the type argument, you can specify one of the following SCSI device types:
type  String equivalent
0 direct-access (e.g. hard disk)
1 sequential-access (e.g. tape)
2 printer
3 processor
4 WORM
5 CD-ROM
6 scanner
7 optical
8 medium_changer
9 communications
To specify the type, you can use either the number or its string equivalent. When specifying a string, you need include only as many characters as are necessary to uniquely identify the type. For example to indicate type 1, you could specify se. Note that strings are case insensitive.

Not all of the above types are currently supported by the Filesystem Manager. See the -n option.

-L
Disable automatic scan for LUNs.
-q
Be quiet: don't display any information on startup.
-S scanmask
Target scan bitmask (default: 0xffff).
-v
Be verbose: display full information about SCSI units (devices) on startup.

fsys_options

The fsys_options control the driver's interface to Fsys. If specified, they must follow the fsys keyword:

-B num
Use this many 512-byte buffers for blocking/deblocking (default is 8). You need to specify this option if you have one or more units that don't use 512-byte sectors. CD-ROM units, for example, may use 2048-byte sectors.

The value of num is the sum of all the buffers required for SCSI units that use sectors larger than 512 bytes. To obtain the buffer required for a unit, you must use the following formula:

buf = (2*(sector_size / 512))

The value that should be used for num will be the sum of the results from all units.

-d
Allow concurrent I/O with other DMA-based drivers.

Some ISA motherboards have problems when on-board DMA and bus-mastering DMA occur concurrently. To avoid those problems, Fsys drivers which use DMA perform I/O concurrently only if the -d option is specified to either or both drivers. In general, you shouldn't use -d on an ISA machine if the floppy is going to be used at the same time as the SCSI hard disk. This option may be used safely on MCA and EISA machines.

-h heads[,sect]
Report this many heads (and optionally sectors per track) to Fsys for hard disks (default is 64 heads, 32 sectors per track). The QNX filesystem doesn't need this information for normal operation. The information is needed only to let fdisk write the correct boot cylinder for booting.
-i
Ignore partition table when determining heads/sectors.
-l
("el") Disable locking while open on removable and tape devices.
-m num
Transfer no more than this many 512-byte sectors from the SCSI controller to memory in one operation (default is 127).
-M num
Allow no more than this many units to register with Fsys (default is the number of SCSI units available).
-n type=name
For the given SCSI unit type, use the specified name. For example, to have hard drives use /dev/scsin, you would specify -n 0=scsi. You can specify multiple -n options.

By default, the driver assigns names as follows:

type  String equivalent Default name
0 direct-access (e.g. hard disk) hd
1 sequential-access (e.g. tape) tp
4 WORM wo
5 CD-ROM cd
7 optical mo

As in the -a general option, you can specify the type using either the number or its string equivalent.

To have the driver ignore a type of device, specify an empty setting. For example, to ignore hard disks, specify -n 0.

-N name
Assign this unique version name to this invocation of the driver. The name can range from 1 to 8 characters in length.
-r
Reassign bad blocks automatically. If a bad block is found on a drive, a "REASSIGN BLOCKS" command will be given to the controller, causing the drive to map the block through a defect-mapping table.

Use this option with care since bad blocks could be erroneously reported by the device if the SCSI bus isn't properly terminated. If this occurs and you've specified -r, the defect-mapping table will be filled unnecessarily.

-R
Disable reserving the SCSI unit when the unit is open.
-s mins
Minutes of activity before stopping direct drive (default is 0 -- disabled)
-S
Try to always use scatter/gather.

aha4scsi_options

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

-a controller
Use this controller address. By default, the driver scans for all AHA 4 controllers. With this option, the driver doesn't perform a scan and uses only the controllers you specify.
-b timeout
Set the ISA/EISA bus busy timeout. By default, the driver queries the card for this value. For possible timeout values, see the AHA-1540A/1542A Technical Reference (available from Adaptec).
-d dma_channel
Assume that the controller uses this DMA channel for bus mastering. By default, the driver queries the controller for this value.
-f
Do a full scan for the installed SCSI units. By default, the driver uses the controller's built-in scan (see the -u option).

You should specify this option for any controller whose built-in scan may ignore removable media.

If you have removable hard disks and don't want to use the -f option with the 1540C controller, you must enable the controller's advanced configuration option "Support Removable Disks under BIOS as Fixed Disks."

If you specify -f and you use the mount command in your boot image or sysinit file, you may need to specify the -w (wait) option to mount. The full scan may take longer than mount's default wait time.

-h head[,sect]
Report this many heads (and optionally sectors per track) to Fsys for hard disks (default is 64 heads, 32 sectors per track). The QNX filesystem doesn't need this information for normal operation. The information is needed only to let fdisk write the correct boot cylinder for booting.
-i irq
Assume that the controller is using this interrupt. By default, the driver queries the controller for this value.
-m mboxes
Support this many mailboxes (default is 16). Mailboxes are used for simultaneous access to multiple SCSI units.
-r
Reset the controller and SCSI bus at initialization time.
-t speed
Set the ISA/EISA bus transfer speed. For the possible values of speed, which is specified in hex, see the AHA-1540A/1542A Technical Reference.
-u num
Allow no more than this many SCSI units per controller.

You may need to specify this option if you've also specified -f. By default, the driver sets the maximum number of units (devices) to the number of units found during the built-in scan. But with -f, the driver sets the maximum number of units to 4.

-x on,off
Set the on-and-off duration of the ISA/EISA bus. For possible values, see the AHA-1540A/1542A Technical Reference.

Description:

Fsys.aha4scsi is the driver for the Adaptec 154x and compatible SCSI disk controllers. The controller models support by this driver include, but are not necessarily limited to, these models:

Manufacturer Controller
Adaptec AHA-1540
Adaptec AHA-1540A/1542A
Adaptec AHA-1540B/1542B
Adaptec AHA-1540C/1542C
Adaptec AHA-1540CF/1542CF
Adaptec AHA-1640
Adaptec AHA-1740A/1742A (in 1540 emulation mode only)
Buslogic BT-440C
Buslogic BT-542B
Buslogic BT-542D
Buslogic BT-545S
Buslogic BT-545C
Buslogic BT-440C
Buslogic BT-445C
Buslogic BT-646S
Buslogic BT-747S
Buslogic BT-946C

Fsys.aha4scsi scans for controllers in the command-line sequence given by the -a option. If no -a option is given, the driver scans for controllers at the following hex addresses, in order:

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. For example, if you have a hard disk and a CD-ROM device, they'll be numbered hd0 and cd0, respectively.

The Filesystem Manager supports only the following types of SCSI units:

0
direct-access (e.g. hard disk)
1
sequential-access (e.g. tape)
4
WORM (write once/read multiple)
5
CD-ROM
7
optical

Tape units

If a tape unit is found during the driver's scan or if you specify a sequential-access unit with the -a general option, two block special files are created under /dev. By default, they're named /dev/tp0 and /dev/tpr0. Both these files reference the same physical drive, but /dev/tpr0 will perform a rewind on a close.


Caution:

To boot from a unit connected to the controller, make sure the controller is configured for a 64-head BIOS or specify the driver's fsys -h option.


Examples:

Support all AHA 4 series controllers:

    Fsys.aha4scsi

Register the direct-access unit as /dev/hardn and the sequential-access unit as /dev/tapen:

    Fsys.aha4scsi fsys -n direct=hard -n seq=tape

Support a single AHA controller at address 0x334 and run quietly. Register direct-access units (e.g. hard disks) as /dev/scsin:

    Fsys.aha4scsi -q fsys -n 0=scsi aha4scsi -a 334

Use sixteen 512-byte deblocking buffers for two CD-ROMs that each use 2048-byte sectors:

    Fsys.aha4scsi fsys -B 16

In the above example, the argument for -B was calculated as follows:

Support all AHA 4 series controllers and a CD-ROM that has a SCSI target ID of 4 (in case the CD-ROM isn't powered up when the driver starts, we've used the -a option):

    Fsys.aha4scsi -a 4=CD

If you had two SCSI controllers and the CD-ROM was connected to the second one (determined by the driver's scan), you would modify the above command as follows:

    Fsys.aha4scsi -a 1,4=CD

Files:

Fsys.aha4scsi closes its standard input, standard output and standard error immediately after completing its initializations. Error messages may be produced during the initialization phase and will be written to standard error.

Fsys.aha4scsi will cause Fsys to adopt various block special devices under /dev. These devices will normally be named hdn, where n is the physical unit number of the device. The base portion of this filename (hd) may be overridden by the -n option.

Exit status:

Fsys.aha4scsi will terminate only if an error occurs during startup, or if it has successfully forked itself upon startup because it had not been initially started in the background.

0
Fsys.aha4scsi was not started in the background and as a result forked itself. The original process terminated with a zero exit status, the forked process continued.
>0
An error occurred during startup.

Caveats:

Don't use slay to shut down a filesystem driver! If you do, new drivers may not be able to load properly and Fsys itself may experience internal errors.

If you need to shut down a filesystem driver, follow the steps in the "Driver shutdown" section in the documentation for Fsys.

See also:

Blkfsys, Fsys, Fsys.*

AHA-1540A/1542A Technical Reference (available from Adaptec)


[Previous] [Contents] [Next]