summaryrefslogtreecommitdiff
path: root/usr/src/man/man7i/fdio.7i
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/man/man7i/fdio.7i')
-rw-r--r--usr/src/man/man7i/fdio.7i277
1 files changed, 0 insertions, 277 deletions
diff --git a/usr/src/man/man7i/fdio.7i b/usr/src/man/man7i/fdio.7i
deleted file mode 100644
index a95f84dfaa..0000000000
--- a/usr/src/man/man7i/fdio.7i
+++ /dev/null
@@ -1,277 +0,0 @@
-.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright (c) 2017, Joyent, Inc.
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.Dd October 22, 2017
-.Dt FDIO 7I
-.Os
-.Sh NAME
-.Nm fdio
-.Nd floppy disk control operations
-.Sh SYNOPSIS
-.In sys/fdio.h
-.Sh DESCRIPTION
-The Solaris floppy driver supports a set of
-.Xr ioctl 2
-requests for getting and setting the floppy drive characteristics.
-Basic to these
-.Xr ioctl 2
-requests are the definitions in
-.In sys/fdio.h .
-.Sh IOCTLS
-The following
-.Xr ioctl 2
-requests are available on the Solaris floppy driver.
-.Bl -tag -width FDDEFGEOCHAR
-.It Dv FDDEFGEOCHAR
-x86 based systems: This
-.Xr ioctl 2
-forces the floppy driver to restore
-the diskette and drive characteristics and geometry, and partition information
-to default values based on the device configuration.
-.It Dv FDGETCHANGE
-The argument is a pointer to an
-.Vt int .
-This
-.Xr ioctl 2
-returns the status of the diskette-changed signal from the floppy interface.
-The following defines are provided for cohesion.
-.El
-.Pp
-Note: For x86 based systems, use
-.Dv FDGC_DETECTED
-(which is available only on x86 based systems) instead of
-.Dv FDGC_HISTORY .
-.Bd -literal -offset 2n
-/*
- * Used by FDGETCHANGE, returned state of the sense disk change bit.
- */
-#define FDGC_HISTORY 0x01 /*
- * disk has changed since insertion or
- * last FDGETCHANGE call
- */
-#define FDGC_CURRENT 0x02 /*
- * if set, indicates drive has floppy,
- * otherwise, drive is empty
- */
-#define FDGC_CURWPROT 0x10 /* current state of write protect */
-#define FDGC_DETECTED 0x20 /* previous state of DISK CHANGE */
-.Ed
-.Bl -tag -width FDIOGCHAR
-.It Dv FDIOGCHAR
-The argument is a pointer to an
-.Vt fd_char
-structure (described below).
-This
-.Xr ioctl 2
-gets the characteristics of the floppy diskette from the floppy controller.
-.It Dv FDIOSCHAR
-The argument is a pointer to an
-.Vt fd_char
-structure (described below).
-This
-.Xr ioctl 2
-sets the characteristics of the floppy diskette for the floppy controller.
-Typical values in the
-.Vt fd_char
-structure for a high density diskette:
-.Bl -column fdc_stransfer_rate value "{ This field doesn't apply. }"
-.It Field Ta Value Ta
-.It fdc_medium Ta 0 Ta
-.It fdc_transfer_rate Ta 500 Ta
-.It fdc_ncyl Ta 80 Ta
-.It fdc_nhead Ta 2 Ta
-.It fdc_sec_size Ta 512 Ta
-.It fdc_secptrack Ta 18 Ta
-.It fdc_steps Ta -1 Ta { This field doesn't apply. }
-.El
-.El
-.Bd -literal -offset 2n
-/*
- * Floppy characteristics
- */
-struct fd_char {
- uchar_t fdc_medium; /* equals 1 if floppy is medium density format */
- int fdc_transfer_rate; /* transfer rate */
- int fdc_ncyl; /* number of cylinders */
- int fdc_nhead; /* number of heads */
- int fdc_sec_size; /* sector size */
- int fdc_secptrack; /* sectors per track */
- int fdc_steps; /* no. of steps per data track */
-};
-.Ed
-.Bl -tag -width FDGETDRIVECHAR
-.It Dv FDGETDRIVECHAR
-The argument to this
-.Xr ioctl 2
-is a pointer to an
-.Vt fd_drive
-structure (described below).
-This
-.Xr ioctl 2
-gets the characteristics of the floppy drive from the floppy controller.
-.It Dv FDSETDRIVECHAR
-x86 based systems: The argument to this
-.Xr ioctl 2
-is a pointer to an
-.Vt fd_drive
-structure (described below).
-This
-.Xr ioctl 2
-sets the characteristics of the floppy drive for the floppy controller.
-Only
-.Fa fdd_steprate ,
-.Fa fdd_headsettle ,
-.Fa fdd_motoron ,
-and
-.Fa fdd_motoroff
-are actually used by the floppy disk driver.
-.El
-.Bd -literal -offset 2n
-/*
- * Floppy Drive characteristics
- */
-struct fd_drive {
- int fdd_ejectable; /* does the drive support eject? */
- int fdd_maxsearch; /* size of per-unit search table */
- int fdd_writeprecomp; /* cyl to start write precompensation */
- int fdd_writereduce; /* cyl to start recucing write current */
- int fdd_stepwidth; /* width of step pulse in 1 us units */
- int fdd_steprate; /* step rate in 100 us units */
- int fdd_headsettle; /* delay, in 100 us units */
- int fdd_headload; /* delay, in 100 us units */
- int fdd_headunload; /* delay, in 100 us units */
- int fdd_motoron; /* delay, in 100 ms units */
- int fdd_motoroff; /* delay, in 100 ms units */
- int fdd_precomplevel; /* bit shift, in nano-secs */
- int fdd_pins; /* defines meaning of pin 1, 2, 4 and 34 */
- int fdd_flags; /* TRUE READY, Starting Sector #, & Motor On */
-};
-.Ed
-.Bl -tag -width FDGETSEARCH
-.It Dv FDGETSEARCH
-Not available.
-.It Dv FDSETSEARCH
-Not available.
-.It Dv FDEJECT
-SPARC: This
-.Xr ioctl 2
-requests the floppy drive to eject the diskette.
-.It Dv FDIOCMD
-The argument is a pointer to an
-.Vt fd_cmd
-structure (described below).
-This
-.Xr ioctl 2
-allows access to the floppy diskette using the floppy device driver.
-Only the
-.Dv FDCMD_WRITE ,
-.Dv FDCMD_READ ,
-and
-.Dv FDCMD_FORMAT_TRACK
-commands are currently available.
-.El
-.Bd -literal -offset 2n
-struct fd_cmd {
- ushort_t fdc_cmd; /* command to be executed */
- int fdc_flags; /* execution flags (x86 only) */
- daddr_t fdc_blkno; /* disk address for command */
- int fdc_secnt; /* sector count for command */
- caddr_t fdc_bufaddr; /* user's buffer address */
- uint_t fdc_buflen; /* size of user's buffer */
-};
-.Ed
-.Pp
-Please note that the
-.Fa fdc_buflen
-field is currently unused.
-The
-.Fa fdc_secnt
-field is used to calculate the transfer size, and the buffer is
-assumed to be large enough to accommodate the transfer.
-.Bd -literal -offset 2n
-/*
- * Floppy commands
- */
-#define FDCMD_WRITE 1
-#define FDCMD_READ 2
-#define FDCMD_SEEK 3
-#define FDCMD_REZERO 4
-#define FDCMD_FORMAT_UNIT 5
-#define FDCMD_FORMAT_TRACK 6
-.Ed
-.Bl -tag -width FDRAW
-.It Dv FDRAW
-The argument is a pointer to an
-.Vt fd_raw
-structure (described below).
-This
-.Xr ioctl 2
-allows direct control of the floppy drive using the floppy controller.
-Refer to the appropriate floppy-controller data sheet for full
-details on required command bytes and returned result bytes.
-The following commands are supported.
-.El
-.Bd -literal -offset 2n
-/*
- * Floppy raw commands
- */
-#define FDRAW_SPECIFY 0x03
-#define FDRAW_READID 0x0a (x86 only)
-#define FDRAW_SENSE_DRV 0x04
-#define FDRAW_REZERO 0x07
-#define FDRAW_SEEK 0x0f
-#define FDRAW_SENSE_INT 0x08 (x86 only)
-#define FDRAW_FORMAT 0x0d
-#define FDRAW_READTRACK 0x02
-#define FDRAW_WRCMD 0x05
-#define FDRAW_RDCMD 0x06
-#define FDRAW_WRITEDEL 0x09
-#define FDRAW_READDEL 0x0c
-.Ed
-.Pp
-Please note that when using
-.Dv FDRAW_SEEK
-or
-.Dv FDRAW_REZERO ,
-the driver automatically issues a
-.Dv FDRAW_SENSE_INT
-command to clear the interrupt from the
-.Dv FDRAW_SEEK
-or the
-.Dv FDRAW_REZERO .
-The result bytes returned by these commands are the results from the
-.Dv DRAW_SENSE_INT
-command.
-Please see the floppy-controller data sheet for
-more details on
-.Dv FDRAW_SENSE_INT .
-.Bd -literal -offset 2n
-/*
- * Used by FDRAW
- */
-struct fd_raw {
- char fdr_cmd[10]; /* user-supplied command bytes */
- short fdr_cnum; /* number of command bytes */
- char fdr_result[10]; /* controller-supplied result bytes */
- ushort_t fdr_nbytes; /* number to transfer if read/write command */
- char *fdr_addr; /* where to transfer if read/write command */
-};
-.Ed
-.Sh SEE ALSO
-.Xr ioctl 2 ,
-.Xr fd 7D ,
-.Xr dkio 7I ,
-.Xr hdio 7I