FD(4) Kernel Interfaces Manual (SPARC64) FD(4)

NAME

fdcSun SPARCstation i82072 or i82077 floppy disk controller driver

SYNOPSIS

fdc0 at sbus0 (SBus based machines)
fdc0 at ebus0 (PCI based machines)
fd* at fdc0

DESCRIPTION

This is the driver for the built-in floppy disk drive run by the Intel i82072 or i82077 controller chip found on the SPARCstation desktop systems, and other SPARC systems.

Bits [0-3] of the minor device number of the special files referring to this device encode the floppy density as follows:

0
3.5'' 1.44MB floppy diskettes.
1
3.5'' 720KB floppy diskettes.
2
3.5'' 360KB floppy diskettes.
3
3.5'' 1.2MB/NEC Japanese format floppy diskettes.

FORMATTING

The driver supports floppy disk formatting using the interfaces in <sys/fdio.h>:

FDIOCGETFORMAT struct fdformat_parms
Fetch current formatting parameters. This gets the default parameters for the open device if no parameters have been set during the session.

FDIOCSETFORMAT struct fdformat_parms
Set formatting parameters. The driver saves this state and it persists while the device is open.

FDIOCFORMAT_TRACK struct fdformat_cmd
Format a track on the medium. If this call returns EINVAL, the track formatting parameters were out of range for the medium. If it returns EIO, there was a medium error while formatting the track.

FDIOCSETOPTS int
Set driver options which persist until the device is closed. The options should be the logical OR of the desired values below:

FDOPT_NORETRY
Do not retry operations on failure
FDOPT_SILENT
Do not print error messages to the console

FDIOCGETOPTS int
Fetch drive options.

A typical use of the formatting facilities would be to open the device, call FDIOCGETFORMAT to fetch the current format parameters, perhaps change a parameter or two, display the formatting details to the user, and then call FDIOCSETFORMAT followed by a series of calls to FDIOCFORMAT_TRACK.

SEE ALSO

eject(1), fdformat(1)

HISTORY

The fdc driver first appeared in NetBSD 4.0.

BUGS

The ebus attachment does not yet work.
May 8, 2007 NetBSD 6.1