devb-mvSata

Driver for Marvell 88SX50XX SATA interfaces (QNX Neutrino)

Note: You must be root to start this driver.

Syntax:

devb-mvSata [cam option[,option]...]
            [mvSata option[,option]...]
            [blk option[,option]...] &

Runs on:

QNX Neutrino

Targets:

x86

Options:

Note: Use commas (,) to separate the options. You can put the cam, mvSata, and blk groups of options in any order.
cam options
The cam options control the common access methods:
lun=mask
Enable Logical Unit Number (LUN) scanning 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.
mvSata options
The mvSata options control the driver's interface to the mvSata controller. If you've installed multiple controllers, you can repeat these options for each controller. Remember, however, to specify the mvSata keyword before each controller's set of options.
  • Interface-specific options:
    irq=req
    The interrupt used by the controller.
    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.
    nobmstr
    Don't use busmastering.
    port=N,device
    Specify options for device on port N.
    priority=prio
    Set the priority of the processing thread. The default is 21.
    timeout=timeout
    Set the I/O request timeout, in seconds. The default is 10.
    cache_line=size
    Set the PCI cache line size (16, 32, 64, or 128 bytes). The default is obtained from the PCI configuration.
  • Device-specific options:
    geometry=heads:cyl:sect
    Specify the drive geometry.
    nobmstr
    Don't use busmastering.
    multiblk=blks
    Set multiblock mode, specifying the number of blocks per interrupt.
    nonremovable
    Report the device as being nonremovable.
    chs
    Use Cylinder-Head-Sector mode. The default is LBA.
blk options
The blk options control io-blk.so. If specified, they must follow the blk keyword.

Description:

The devb-mvSata driver is for Marvell 88SX50XX SATA interfaces. It supports vendor ID 0x11ab with at least the following device IDs:

Device ID Chipset
5080 88SX5080
5081 88SX5081
5040 88SX5040
5041 88SX5041
6081 88SX6081
6041 88SX6041

Due to a chipset limitation, CD-ROM and DVD-ROM drives aren't supported.

Examples:

Detect all SATA controllers, and list all connected devices:

devb-mvSata &

Files:

The devb-mvSata driver causes io-blk.so to adopt various block special devices under /dev. These devices are normally named hdn, where n is the physical unit number of the device.

This driver could also require the following shared objects:

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

Exit status:

The devb-mvSata 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-mvSata 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/hd0t6 /dos dos
/dev/hd0t11 /dos dos

While there's no limit to the size of a disk or partition, the limit on I/O (i.e., the lseek(), read() and write() functions) depends on the type of filesystem mounted and on whether you use the 32- or 64-bit versions of these functions. This I/O limit has no effect on the partition size for mounted filesystems. The maximum number of blocks is 232.

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.