[Previous] [Contents] [Index] [Next]


Driver for floppy disk interface (QNX Neutrino)

Note: You must be root to start this driver.


devb-fdc [cam option[,option]...]
         [disk option[,option]...] 
         [fdc option[,option]...]
         [blk option[,option]...] &


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

cam options

Be quiet: don't display any information on startup.
Be verbose.

disk options

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

fdc options

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

The I/O port of the interface. The default is 0x3f0.
The interrupt used by the controller. The default is 6.
Use the specified DMA channel. The default is 2.

blk options

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


The devb-fdc driver is for the floppy disk interface. It autodetects interfaces at address 0x3f0, interrupt 6, dma channel 2 by default. If you have an interface at a different address/interrupt/dma, specify them to the driver using the fdc options.

Note: The default cache size specified by io-blk.so is excessive for devb-fdc. You'll probably want to reduce it to something more reasonable:
devb-fdc blk cache=128k &


Assume an FDC interface, and list all connected devices:

devb-fdc &

Mount a floppy drive that can access QNX or DOS floppy disks:

devb-fdc blk cache=128k &
mount -tqnx4 /dev/fd0 /qnxflop
mount -tdos /dev/fd0 /dosflop


devb-fdc blk cache=128k,automount=+fd0:/qnxflop:qnx4,automount=+fd0:/dosflop:dos &


The devb-fdc driver causes io-blk.so to adopt various block special devices under /dev. These devices are normally named fdn, 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 floppy-disk access.
libcam.so Always

Exit status:

The devb-fdc 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.

The devb-fdc 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.


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:

fdformat, io-blk.so

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

Connecting Hardware in the Neutrino User's Guide

[Previous] [Contents] [Index] [Next]