diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 19:43:11 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 19:43:11 +0000 |
commit | fc22b3d6507c6745911b9dfcc68f1e665ae13dbc (patch) | |
tree | ce1e3bce06471410239a6f41282e328770aa404a /upstream/debian-unstable/man1/floppycontrol.1 | |
parent | Initial commit. (diff) | |
download | manpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.tar.xz manpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.zip |
Adding upstream version 4.22.0.upstream/4.22.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'upstream/debian-unstable/man1/floppycontrol.1')
-rw-r--r-- | upstream/debian-unstable/man1/floppycontrol.1 | 663 |
1 files changed, 663 insertions, 0 deletions
diff --git a/upstream/debian-unstable/man1/floppycontrol.1 b/upstream/debian-unstable/man1/floppycontrol.1 new file mode 100644 index 00000000..c2ad04ae --- /dev/null +++ b/upstream/debian-unstable/man1/floppycontrol.1 @@ -0,0 +1,663 @@ +.TH floppycontrol 1 "27Jan21" fdutils-5.6 +.SH Name +floppycontrol - floppy driver configuration utility +'\" t +.de TQ +.br +.ns +.TP \\$1 +.. + +.tr \(is' +.tr \(if` +.tr \(pd" + +.SH Note +This manpage has been automatically generated from fdutils's texinfo +documentation. However, this process is only approximative, and some +items, such as cross-references, footnotes and indices are lost in this +translation process. Indeed, these items have no appropriate +representation in the manpage format. Moreover, only the items specific +to each command have been translated, and the general information about +fdutils has been dropped in the manpage version. Thus I strongly advise +you to use the original texinfo doc. +.TP +* \ \ +To generate a printable copy from the texinfo doc, run the following +commands: + +.nf +.ft 3 +.in +0.3i + ./configure; make dvi; dvips fdutils.dvi +.fi +.in -0.3i +.ft R + +\&\fR +.TP +* \ \ +To generate a HTML copy, run: + +.nf +.ft 3 +.in +0.3i + ./configure; make html +.fi +.in -0.3i +.ft R + +\&\fRA pre-made HTML can be found at: +\&\fR\&\f(CW\(ifhttp://www.tux.org/pub/knaff/fdutils\(is\fR +.TP +* \ \ +To generate an info copy (browsable using emacs' info mode), run: + +.nf +.ft 3 +.in +0.3i + ./configure; make info +.fi +.in -0.3i +.ft R + +\&\fR +.PP +The texinfo doc looks most pretty when printed or as HTML. Indeed, in +the info version certain examples are difficult to read due to the +quoting conventions used in info. +.SH Description +.PP + +.nf +.ft 3 +.in +0.3i +\&\fR\&\f(CWfloppycontrol [\fR\&\f(CW\-p] [\fR\&\f(CW\-\-pollstate] [\fR\&\f(CW\-\-printfdstate] +[\fR\&\f(CW\-a \fIoperation\-abort\-threshold\fR\&\f(CW] [\fR\&\f(CW\-c \fIread\-track\-threshold\fR\&\f(CW] +[\fR\&\f(CW\-r \fIrecalibrate\-threshold\fR\&\f(CW] [\fR\&\f(CW\-R \fIreset\-threshold\fR\&\f(CW] +[\fR\&\f(CW\-e \fIreporting\-threshold\fR\&\f(CW] [\fR\&\f(CW\-f] [\fR\&\f(CW\-x] [\fR\&\f(CW\-d \fIdrive\fR\&\f(CW][\fR\&\f(CW\-F] [\fR\&\f(CW\-T] +[\fR\&\f(CW\-reset \fIcondition\fR\&\f(CW] [\fR\&\f(CW\-\-debug] [\fR\&\f(CW\-\-nodebug] [\fR\&\f(CW\-\-messages] +[\fR\&\f(CW\-\-nomessages] [\fR\&\f(CW\-\-broken_dcl] [\fR\&\f(CW\-\-working_dcl] [\fR\&\f(CW\-\-inverted_dcl] +[\fR\&\f(CW\-\-no_inverted_dcl] [\fR\&\f(CW\-\-silent_dcl_clear] [\fR\&\f(CW\-\-noisy_dcl_clear] +[\fR\&\f(CW\-c\fIcmos\-type\fR\&\f(CW] [\fR\&\f(CW\-hlt \fIhlt\fR\&\f(CW] [\fR\&\f(CW\-hut \fIhut\fR\&\f(CW] [\fR\&\f(CW\-srt \fIsrt\fR\&\f(CW] [\fR\&\f(CW\-o \fIspindown\fR\&\f(CW] +[\fR\&\f(CW\-u \fIspinup\fR\&\f(CW] [\fR\&\f(CW\-s \fIselect\-delay\fR\&\f(CW] [\fR\&\f(CW\-rps \fIrotations\-per\-second\fR\&\f(CW] +[\fR\&\f(CW\-O \fIspindown\-offset\fR\&\f(CW] [\fR\&\f(CW\-track \fImax\-tracks\fR\&\f(CW] [\fR\&\f(CW\-timeout \fIseconds\fR\&\f(CW] +[\fR\&\f(CW\-C \fIcheck\-interval\fR\&\f(CW] [\fR\&\f(CW\-n \fInative\-format\fR\&\f(CW] +[\fR\&\f(CW\-autodetect \fIautodetection\-sequence\fR\&\f(CW] [\fR\&\f(CW\-P] [\fR\&\f(CW\-\-clrwerror] +[\fR\&\f(CW\-\-printwerror] [\fR\&\f(CW\-h] +.fi +.in -0.3i +.ft R + +\&\fR +.PP +The \fR\&\f(CWfloppycontrol\fR program is used to configure the floppy driver. +.PP +.SH General\ Options +.IP +.TP +\&\fR\&\f(CW\-h\fR\ +.TQ +\&\fR\&\f(CW\-\-help\fR +Print a help screen. +.TP +\&\fR\&\f(CW\-d\ \fIdrive\fR\&\f(CW\ \fR\ +.TQ +\&\fR\&\f(CW\-\-drive\ \fI\ drive\fR\&\f(CW\fR +Selects the drive to configure. The default is drive 0 +(\fR\&\f(CW\(if/dev/fd0\(is\fR). +.PP +.SH One\ time\ actions +.PP +The following \fR\&\f(CWfloppycontrol\fR options don't set a configuration +parameter, but perform a one-time action. They are available to anybody +who has write access to the drive +.TP +\&\fR\&\f(CW\-f\ \ \fR\ +.TQ +\&\fR\&\f(CW\-\-flush\fR +Flushes (throws away) the dirty data buffers associated with this drive. +.TP +\&\fR\&\f(CW\-x\ \ \fR\ +.TQ +\&\fR\&\f(CW\-\-eject\fR +Ejects the disk out of the drive (Sparc). The dirty buffers are first +committed to disk before ejecting it. Fails if the disk is mounted. +.TP +\&\fR\&\f(CW\-\-reset\ \fI\ condition\fR\&\f(CW\fR\ +Resets the FDC under +\&\fIcondition\fR . Condition may be one of the following: +.RS +.TP +\&\fR\&\f(CW0\fR\ +resets the FDC only if a reset is needed anyways, +.TP +\&\fR\&\f(CW1\fR\ +resets the FDC +also if a raw command has been performed since the last reset, and +.TP +\&\fR\&\f(CW2\ \fR\ +resets the FDC unconditionally. +.RE +.IP +This command may be needed after some failed raw commands +(see section fdrawcmd). +.IP +.TP +\&\fR\&\f(CW\-F\fR\ +.TQ +\&\fR\&\f(CW\-\-formatend\fR +Issues an end format ioctl. This might be needed after exiting a +\&\fR\&\f(CWfdformat\fR in an unclean way. \fR\&\f(CWsuperformat\fR is not subject to +this. +.PP +.SH Printing\ current\ settings +.IP +.TP +\&\fR\&\f(CW\-T\fR\ +.TQ +\&\fR\&\f(CW\-\-type\fR +Print out the drive name of a floppy device. This is used by the +\&\fR\&\f(CWMAKEFLOPPIES\fR script. The drive name is a letter (describing the +drive type) followed by the capacity of the format in bytes. The letter +is E for 3.5 ED drives, H for 3.5 HD drives, D for 3.5 DD drives, h for +5.25 HD drives and d for 5.25 DD drives. The drive type letter +corresponds to the oldest drive type supporting the format of this +device node (not necessarily the type of the drive referred by this +node.) For the generic format nodes (/dev/fd0 et al.) the name of +"native format" of the drive is printed, and for the default formats, if +a generic format has been redefined, its name becomes \fR\&\f(CW(null)\fR. +.TP +\&\fR\&\f(CW\-p\fR\ +.TQ +\&\fR\&\f(CW\-\-print\fR +Prints out the configuration of the drive. The names of the various +fields are the same as the names of the option to set them, see below. +.TP +\&\fR\&\f(CW\-P\fR\ +.TQ +\&\fR\&\f(CW\-\-printstate\fR +Prints out the cached internal state of the driver. The first line lists +various attributes about the disk: +.RS +.TP +\&\fR\&\f(CWdrive\ present\fR\ +.TQ +\&\fR\&\f(CWdisk\ present\fR +.TQ +\&\fR\&\f(CWdisk\ writable\fR +These are only updated when the drive is accessed. +.TP +\&\fR\&\f(CWspinup\fR\ +is the time when the motor became switched on for the last time. +.TP +\&\fR\&\f(CWselect\fR\ +is the time when the drive became selected for the last time +.TP +\&\fR\&\f(CWfirst_read\fR\ +is the time when the first read request after the last spin up +completed. +.TP +\&\fR\&\f(CWprobed_fmt\fR\ +is the index of the autodetected format in the autodetection +sequence for this drive. +.TP +\&\fR\&\f(CWcylinder\fR\ +is the cylinder where the drive head currently sits. If this number is negative, it has the following meaning: +.RS +.TP +* \ \ +\-1 means that the driver doesn't know, but the controller does (a seek +command must be issued). +.TP +* \ \ +\-2 means that the controller doesn't know either, but is sure that it +not beyond the 80th track. The drive needs a recalibration. +.TP +* \ \ +\-3 means that the head may be beyond the 80th track. The drive needs +two successive recalibrations, because at each recalibration, the +controller only issues 80 move head commands per recalibration. +.RE +.TP +\&\fR\&\f(CWmaxblock\fR\ +is the highest block number that has been read. +.TP +\&\fR\&\f(CWmaxcylinder\fR\ +is a boolean which is set when a sector that is not on cylinder 0/head 0 +has been read. These are used for smart invalidation of the buffer +cache on geometry change. The buffer cache of the drive is only +invalidated on geometry change when this change actually implies that a +block that has already been read changes position. This optimization is +useful for mtools which changes the geometry after reading the boot +sector. +.TP +\&\fR\&\f(CWgeneration\fR\ +is roughly the number of disk changes noticed since boot. Disk changes +are noticed if the disk is actually changed, or if a flush command is +issued and for both cases if any I/O to/from the disk occurs. (i.e. if +you insert several disks, but don't do any I/O to them, the generation +number stays the same.) +.TP +\&\fR\&\f(CWrefs\fR\ +is number of open file descriptors for this drive. It is always at +least one, because floppycontrol's file descriptor is counted too. +.TP +\&\fR\&\f(CWdevice\fR\ +is format type (as derived from the minor device number) which is +currently being used. +.TP +\&\fR\&\f(CWlast_checked\fR\ +is date (in jiffies) when the drive was last checked for a disk +change, and a disk was actually in the drive. +.RE +.IP +.TP +\&\fR\&\f(CW\-\-pollstate\fR\ +Polls the drive and then prints out the internal state of the +driver.(\fR\&\f(CW\-\-Printstate\fR only prints out the cached information +without actually polling the drive for a disk change.) +.TP +\&\fR\&\f(CW\-\-printfdcstate\fR\ +Prints out the state of the controller where the target drive is +attached to. +.RS +.TP +\&\fR\&\f(CWspec1\fR\ +.TQ +\&\fR\&\f(CWspec2\fR +are the current values of those registers. +.TP +\&\fR\&\f(CWrate\fR\ +is current data transfer rate +.TP +\&\fR\&\f(CWrawcmd\fR\ +is true if a raw command has been executed since the last reset. If this +is the case, a reset will be triggered when a drive on the same FDC is +next opened. +.TP +\&\fR\&\f(CWdor\fR\ +is the value of the digital output register. The 4 high bits are a bit +mask describing which drives are spinning, the 2 low bits describe the +selected drive, bit 2 is used to reset the FDC, and bit 3 describes +whether this FDC has hold of the interrupt and the DMA. If you have two +FDCs, bit 3 is only set on one of them. +.TP +\&\fR\&\f(CWversion\fR\ +is the version of the FDC. See \fR\&\f(CW\(iflinux/include/linux/fdreg.h\(is\fR for a +listing of the FDC version numbers. +.TP +\&\fR\&\f(CWreset\fR\ +is true if a reset needs to be issued to the FDC before processing the +next request. +.TP +\&\fR\&\f(CWneed_configure\fR\ +is true if this FDC needs configuration by the \fR\&\f(CWFD_CONFIGURE\fR +command. +.TP +\&\fR\&\f(CWhas_fifo\fR\ +is set if the FDC understands the \fR\&\f(CWFD_CONFIGURE\fR command. +.TP +\&\fR\&\f(CWperp_mode\fR\ +describes the perpendicular mode of this FDC. 0 is non-perpendicular mode, +2 is HD perpendicular mode, 3 is ED perpendicular mode, and 1 is unknown. +.TP +\&\fR\&\f(CWaddress\fR\ +is the address of the first I/O port of the FDC. Normally, this is +0x3f0 for the first FDC and 0x370 for the second. +.RE +.PP +.SH Drive\ type\ configuration\ and\ autodetection +.PP +The following options handle the different available drive types, such +as double density vs. high density vs. extra density drives, and 5 1/4 +drives vs 3 1/2 drives. Usually the drive type is stored in a +non-volatile memory, called CMOS, under the form of an integer ranging +from 1 to 6. +.PP +Different drive types are able to handle and autodetect different +formats (different autodetection lists). They also have different +"native format name". The native format is the "usual" format with the +highest capacity supported by the drive. (For example 720KB on a double +density 3 1/2 drive, and 1.2MB on a high density 5 1/4 drive.) +.PP +These settings are only changeable by the super user. +.TP +\&\fR\&\f(CW\-c\ \fIcmos\-type\fR\&\f(CW\fR\ +.TQ +\&\fR\&\f(CW\-\-cmos\ \fI\ cmos\-type\fR\&\f(CW\fR +Set the virtual CMOS type of the floppy drive. This is useful if +.RS +.TP +* \ \ +the physical CMOS type is wrong (this may happen with BIOSes +which use a non-standard mapping), +.TP +* \ \ +you have more than two drives +(the physical CMOS may only describe up to two drives). +.TP +* \ \ +you have a BIOS that allows swapping drives A: and B: for DOS. +.RE + +Right now, this CMOS parameter is not used by the kernel, except for +feeding it back to other applications (for instance \fR\&\f(CWsuperformat\fR, +\&\fR\&\f(CWfloppymeter\fR or \fR\&\f(CWMAKEFLOPPIES\fR). It is also possible to +supply a virtual CMOS type with the \fR\&\f(CWcmos\fR boot option +(see section Boottime configuration). If possible, I recommend you use the +boot option, rather than \fR\&\f(CWfloppycontrol\fR, because the boot option +also sets any parameters derived from the CMOS type, such as the +autodetection list and the native format, whereas \fR\&\f(CWfloppycontrol\fR +does not. +.TP +\&\fR\&\f(CW\-A\ \ \fIautodetect\-seq\fR\&\f(CW\ \fR\ +.TQ +\&\fR\&\f(CW\-\-autodetect\ \fI\ autodetect\-seq\fR\&\f(CW\fR +Set the autodetection sequence (see section Autodetection) The autodetection +sequence is a comma-separated list of at most eight format +descriptors. Each format descriptor is a format number optionally +followed by the letter \fR\&\f(CWt\fR. For drive 0, the format number is the +minor device number divided by 4. The autodetection sequence is used by +the driver to find out the format of a newly inserted disk. The formats +are tried one after the other, and the first matching format is +retained. To test the format, the driver tries to read the first sector +on the first track on the first head when \fR\&\f(CWt\fR is not given, or the +whole first track when \fR\&\f(CWt\fR is given. Thus, autodetection cannot +detect the number of tracks. However, this information is contained in +the boot sector, which is now accessible. The boot sector can then be +used by mtools to configure the correct number of tracks. +.IP +Example: + +.nf +.ft 3 +.in +0.3i +7,4,24t,25 +.fi +.in -0.3i +.ft R + +\&\fRmeans to try out the formats whose minor device numbers are 28 (1.44M), +16 (720KB), 96 (1.76MB), and 100 (1.92MB), in this order. For the 1.76MB +format, try to read the whole track at once. +.IP +Reading the whole track at once allows you to distinguish between two +formats which differ only in the number of sectors. (The format with the +most sectors must be tried first.) If you use mtools, you do not need this feature, as mtools can figure out +the number of sectors without any help from the floppy driver, by +looking at the boot sector. +.IP +Reading the whole track at once may also speed up the first read by 200 +milliseconds. However, if, on the other hand, you try to read a disk +which has less sectors than the format, you lose some time. +.IP +I suggest that you put the most often used format in the first place +(barring other constraints), as each format that is tried out takes +400 milliseconds. +.TP +\&\fR\&\f(CW\-n\ \fInative\-format\fR\&\f(CW\fR\ +.TQ +\&\fR\&\f(CW\-\-native_format\ \fI\ native\-format\fR\&\f(CW\fR +Set the native format of this drive. The native format of a drive is the +highest standard format available for this drive. (Example: For a 5 1/4 +HD drive it is the usual 1200K format.) This is format is used to make +up the format name for the generic device (which is the name of the +native format). This drive name is read back from the kernel by the +\&\fR\&\f(CWMAKEFLOPPIES\fR script which uses it to decide which device nodes to +create. +.PP +.SH Configuration\ of\ the\ disk\ change\ line +.TP +\&\fR\&\f(CW\-\-broken_dcl\fR\ +Assumes that the disk change line of the drive is broken. If this is +set, disk changes are assumed to happen whenever the device node is +first opened. The physical disk change line is ignored. +.IP +This option should be used if disk changes are either not detected at +all, or if disk changes are detected when the disk was actually not +changed. If this option fixes the problem, I'd recommend that you try to +trace the root cause of the problem. Indeed, this options results in +reduced performance due to spurious cache flushes. +.IP +The following hardware problems may lead to a bad disk change line: +.RS +.TP +* \ \ +If the floppy cable is not inserted straight, or if it is kinked, the +disk change line is likely to suffer, as it is on the edge of the cable. +Gently press on both connectors of the cable (drive and controller) to +insure that all wires make contact. Visually inspect the cable, and if +it shows obvious traces of damage, get a new one. +.TP +* \ \ +On some drives, the locations disk change line may be chosen by +jumper. Make sure that your floppy controller and your drive agree on +which line is the disk change line. +.TP +* \ \ +Some older drives (mostly double density 5 1/4 drives) don't have a disk +change line. In this case, you have no choice other than to leave the +\&\fR\&\f(CWbroken_dcl\fR option on. +.RE +.TP +\&\fR\&\f(CW\-\-working_dcl\fR\ +Assumes that the disk change line works all right. Switching from +broken to working may lead to unexpected results after the first disk +change. +.TP +\&\fR\&\f(CW\-\-inverted_dcl\fR\ +Assumes that this disk drive uses an inverted disk change +line. Apparently this is the case for IBM thinkpads. +.TP +\&\fR\&\f(CW\-\-no_inverted_dcl\fR\ +Assumes that this drive follows the standard convention for the disk +change line. +.TP +\&\fR\&\f(CW\-\-noisy_dcl_clear\fR\ +Switches off silent disk change line clearing for this drive. +.PP +.SH Timing\ Parameters +.PP +This section describes how to configure drive timings. To set these +parameters, you need superuser privileges. All times are in "jiffy" +units (10 milliseconds), unless otherwise specified. +.TP +\&\fR\&\f(CW\-\-hlt\ \fI\ hlt\fR\&\f(CW\fR\ +Set the head load time (in microseconds) for this floppy drive. The +head load time describes how long the floppy controller waits after +seeking or changing heads before allowing access to a track. +.TP +\&\fR\&\f(CW\-\-hut\ \fI\ hut\fR\&\f(CW\fR\ +Set the head unload time (in microseconds) for this floppy drive. The +head unload time describes how long the floppy controller waits after an +access before directing its attention to the other head, or before +seeking. +.TP +\&\fR\&\f(CW\-\-srt\ \fI\ srt\fR\&\f(CW\fR\ +Set the step rate (in microseconds) for this floppy drive. The step +rate describes how long the drive head stays on one cylinder when +seeking. Setting this value to low (too fast seeks) may make seeks +fail, because the motor doesn't follow fast enough. +.TP +\&\fR\&\f(CW\-u\ \fIspinup\-time\fR\&\f(CW\ \fR\ +.TQ +\&\fR\&\f(CW\-\-spinup\ \fI\ spinup\-time\fR\&\f(CW\fR +Set the spinup time of the floppy drive. In order to do read or write +to the floppy disk, it must spin. It takes a certain time for the +motor to reach enough speed to read or write. This parameter describes +this time. The floppy driver doesn't try to access the drive before +the spinup time has elapsed. With modern controllers, you may set this time +to zero, as the controller itself enforces the right delay. +.TP +\&\fR\&\f(CW\-o\ \fIspindown\-time\fR\&\f(CW\ \fR\ +.TQ +\&\fR\&\f(CW\-\-spindown\ \fI\ spindown\-time\fR\&\f(CW\fR +Set the spindown time of this floppy drive. The motor is not stopped +immediately after the operation completes, because there might be more +operations following. The spindown time is the time the driver waits +before switching off the motor. +.TP +\&\fR\&\f(CW\-O\ \fIspindown\-offset\fR\&\f(CW\ \fR\ +.TQ +\&\fR\&\f(CW\-\-spindown_offset\ \fI\ spindown\-offset\fR\&\f(CW\fR +Set the spindown offset of this floppy drive. This parameter is used +to set the position in which the disk stops. This is useful to +minimize the next access time. (If the first sector is just near the +head at the very moment at which the disk has reached enough speed, +you win 200 milliseconds against the most unfavorable situation). +.IP +This is done by clocking the time where the first I/O request +completes, and using this time to calculate the current position of +the disk. +.TP +\&\fR\&\f(CW\-s\ \fIselect\-delay\fR\&\f(CW\ \fR\ +.TQ +\&\fR\&\f(CW\-\-select_delay\ \fI\ select\-delay\fR\&\f(CW\fR +Set the \fIselect delay\fR of this floppy drive. This is the delay that +the driver waits after selecting the drive and issuing the first command +to it. For modern controllers/drives, you may set this to zero. +.TP +\&\fR\&\f(CW\-C\ \fIcheck\-interval\fR\&\f(CW\ \fR\ +.TQ +\&\fR\&\f(CW\-\-checkfreq\ \fI\ check\-interval\fR\&\f(CW\fR +Set the maximal disk change check interval. The disk change line is +checked whenever a read or write to the device is issued, and it has not +been checked for more than \fIinterval\fR jiffies. +.PP +.SH Debugging\ messages +.PP +This subsection describes how to switch the available debugging messages +on and off. +.IP +.TP +\&\fR\&\f(CW\-\-debug\fR\ +Switch debugging output on. The debugging information includes timing +information. This option might be useful to fine-tune the timing +options for your local setups. (But for most normal purposes, the +default values are good enough.) +.TP +\&\fR\&\f(CW\-\-nodebug\fR\ +Switch debugging output off. +.TP +\&\fR\&\f(CW\-\-messages\fR\ +Print informational messages after autodetection, geometry parameter +clearing and dma over/underruns. +.TP +\&\fR\&\f(CW\-\-nomessages\fR\ +Don't print informational messages after these events. +.PP +.SH Error\ Handling\ Options +.PP +The following options configure the behavior of the floppy driver in +case of read/write errors. They may be used by any user who has write +privileges for the drive. Whenever the floppy driver encounters an +error, a retry counter is incremented. If the value of this counter gets +bigger than the thresholds described below, the corresponding actions +are performed at the next retry. The counter is reset when the read or +write finally terminates, whether successfully or not. +.TP +\&\fR\&\f(CW\-a\ \fIoperation\-abort\-threshold\fR\&\f(CW\ \fR\ +.TQ +\&\fR\&\f(CW\-\-abort\ \fI\ operation\-abort\-threshold\fR\&\f(CW\fR +Tell the floppy driver to stop trying to read/write a sector after +\&\fIoperation-abort-threshold\fR +retries, and signal the I/O error to the user. +.TP +\&\fR\&\f(CW\-t\ \fIread\-track\-threshold\fR\&\f(CW\ \fR\ +.TQ +\&\fR\&\f(CW\-\-readtrack\ \fI\ read\-track\-threshold\fR\&\f(CW\fR +Tell the floppy driver to switch from track-reading mode to +sector-at-a-time-mode after +\&\fIread-track-threshold\fR +retries. +.TP +\&\fR\&\f(CW\-r\ \fIrecalibrate\-threshold\fR\&\f(CW\ \fR\ +.TQ +\&\fR\&\f(CW\-\-recalibrate\ \fI\ recalibrate\-threshold\fR\&\f(CW\fR +Tell the floppy driver to recalibrate the drive after +\&\fIrecalibrate-threshold\fR retries. +.TP +\&\fR\&\f(CW\-R\ \fIreset\-threshold\fR\&\f(CW\ \fR\ +.TQ +\&\fR\&\f(CW\-\-reset\ \fI\ reset\-threshold\fR\&\f(CW\fR +Tell the floppy driver to reset the controller after +\&\fIreset-threshold\fR retries. After a controller reset, the floppy +driver also recalibrates all drives connected to that controller. +.IP +.TP +\&\fR\&\f(CW\-e\ \fIerror\-report\-threshold\fR\&\f(CW\ \fR\ +.TQ +\&\fR\&\f(CW\-\-reporting\ \fI\ error\-report\-threshold\fR\&\f(CW\fR +Tell the floppy driver to start printing error messages to the console +after \fIerror-report-threshold\fR retries. +.PP +.SH Write\ error\ reporting +.PP +Due to the buffer cache, write errors cannot always be reported to the +writing user program as soon as the write system call returns. Indeed, +the actual writing may take place much later. If a write error is +encountered, the floppy driver stores information about it in its per +drive write error structure. This write error structure stays until +explicitly cleared. It can for example be queried by a backup program +which wants to make sure that the data has been written successfully. +.IP +.TP +\&\fR\&\f(CW\-\-clrwerror\fR\ +Clears the write error structure. +.TP +\&\fR\&\f(CW\-\-printwerror\fR\ +Prints the contents of the write error structure: +.RS +.TP +\&\fR\&\f(CWwrite_errors\fR\ +is a count of how many write errors have occurred since the structure was last +cleared. +.TP +\&\fR\&\f(CWbadness\fR\ +is the maximal number of retries that were needed to complete an +operation (reads, writes and formats). +.TP +\&\fR\&\f(CWfirst_error_sector\fR\ +is where the first (chronologically) write error occurred. +.TP +\&\fR\&\f(CWfirst_error_generation\fR\ +is the disk change generation in which did the first write error +occurred. The disk change generation is a number which is incremented +at each disk change. +.TP +\&\fR\&\f(CWlast_error_sector\fR\ +and +.TP +\&\fR\&\f(CWlast_error_generation\fR\ +are similar. +.RE +.PP +.SH Other\ drive\ configuration\ options +.PP +This subsection lists per drive configuration options, which don't fit +in any other category. They are available only to the superuser: +.IP +.TP +\&\fR\&\f(CW\-\-tracks\ \fI\ max\-tracks\fR\&\f(CW\fR\ +Set the maximal numbers of physical tracks that this drive may +handle. If you have a drive which is only able to handle 80 tracks +(making strange noises when you try to format or read a disk with more +than 80 tracks), use this option to prevent unprivileged users of +damaging your drive by repeatedly reading disks with more than 80 +tracks. +.IP +If you trust your users and your disks, you don't need this. With most +drives you don't need to worry anyways. See section More cylinders, for +details. +.TP +\&\fR\&\f(CW\-i\ \fIsector\-interleave\fR\&\f(CW\ \fR\ +.TQ +\&\fR\&\f(CW\-\-interleave\ \fIsector\-interleave\fR\&\f(CW\fR +Set the number of sectors beyond which sector interleaving will be used. +This option will only be used by the \fR\&\f(CWFDFMTTRK\fR ioctl. The +\&\fR\&\f(CWfdformat\fR command, which is now considered obsolete, uses +\&\fR\&\f(CWFDFMTTRK\fR ioctl, but \fR\&\f(CWsuperformat\fR does not. +.IP +.SH See Also +Fdutils' texinfo doc |