floppycontrol; man page

Man Pages Index



Note
       This  manpage  has  been automatically generated from fdutils’s texinfo
       documentation.  However, this process is only approximative,  and  some
       items,  such as crossreferences, footnotes and indices are lost in this
       translation process.  Indeed, these items have no appropriate represen‐
       tation  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.

       *      To generate a printable copy from the texinfo doc, run the  fol‐
              lowing commands:

                     ./configure; make dvi; dvips fdutils.dvi



       *      To generate a html copy,  run:

                     ./configure; make html

              A       premade       html       can      be      found      at:
              ‘http://www.tux.org/pub/knaff/fdutils’

       *      To generate an info copy (browsable  using  emacs’  info  mode),
              run:

                     ./configure; make info



       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.

Description
          floppycontrol [-p] [--pollstate] [--printfdstate]
          [-a operation-abort-threshold] [-c read-track-threshold]
          [-r recalibrate-threshold] [-R reset-threshold]
          [-e reporting-threshold] [-f] [-x] [-d drive][-F] [-T]
          [-reset condition] [--debug] [--nodebug] [--messages]
          [--nomessages] [--broken_dcl] [--working_dcl] [--inverted_dcl]
          [--no_inverted_dcl] [--silent_dcl_clear] [--noisy_dcl_clear]
          [-ccmos-type] [-hlt hlt] [-hut hut] [-srt srt] [-o spindown]
          [-u spinup] [-s select-delay] [-rps rotations-per-second]
          [-O spindown-offset] [-track max-tracks] [-timeout seconds]
          [-C check-interval] [-n native-format]
          [-autodetect autodetection-sequence] [-P] [--clrwerror]
          [--printwerror] [-h]


One time actions
       The following floppycontrol options don’t set a  configuration  parame‐
       ter,  but  perform a one-time action. They are available to anybody who
       has write access to the drive

       -f
       --flush
              Flushes (throws away) the dirty  data  buffers  associated  with
              this drive.

       -x
       --eject
              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.

       --reset  condition
              Resets  the  FDC  under  condition . Condition may be one of the
              following:

              0      resets the FDC only if a reset is needed anyways,

              1      resets the FDC also if a raw command has  been  performed
                     since the last reset, and

              2      resets the FDC unconditionally.

              This  command  may be needed after some failed raw commands (see
              section  fdrawcmd).


       -F
       --formatend
              Issues an end format ioctl. This might be needed after exiting a
              fdformat  in an unclean way. superformat is not subject to this.


Printing current settings
       -T
       --type Print out the drive name of a floppy device. This is used by the
              MAKEFLOPPIES  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  refered  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 (null).

                     These are only updated when the drive is accessed.

              spinup
                     is  the  time  when  the motor became switched on for the
                     last time.

              select
                     is the time when the drive became selected for  the  last
                     time

              first_read
                     is  the  time  when the first read request after the last
                     spin up completed.

              probed_fmt
                     is the the  index  of  the  autodetected  format  in  the
                     autodetection sequence for this drive.

              cylinder
                     is  the cylinder where the drive head currently sits.  If
                     this number is negative, it has the following meaning:

                      *      -1 means that the driver doesn’t  know,  but  the
                             controller  does (a seek command must be issued).

                      *      -2 means that the controller doesn’t know either,
                             but  is  sure  that it not beyond the 80th track.
                             The drive needs a recalibration.

                      *      -3 means that the head may  be  beyond  the  80th
                             track.  The drive needs two successive recalibra‐
                             tions, because at each  recalibration,  the  con‐
                             troller  only  issues  80  move head commands per
                             recalibration.

              maxblock
                     is the highest block number that has been read.

              maxcylinder
                     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 invali‐
                     dated  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.

              generation
                     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
                     a disk change, and a disk was actually in the drive.


       --pollstate
              Polls the drive and then prints out the internal  state  of  the
              driver.(--Printstate  only  prints  out  the  cached information
              without actually polling the drive for a disk change.)

       --printfdcstate
              Prints out the state of the controller where the target drive is
              attached to.

              spec1
              spec2  are the current values of those registers.

              rate   is current data transfer rate

              rawcmd
                     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.

              dor    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.

              version
                     is     the     version     of      the      FDC.      See
                     ‘linux/include/linux/fdreg.h’  for  a  listing of the FDC
                     version numbers.

              reset  is true if a reset needs to be issued to the  FDC  before
                     processing the next request.

              need_configure
                     is true if this FDC needs configuration by the FD_CONFIG‐
                     URE command.

              has_fifo
                     is set if the FDC understands the FD_CONFIGURE command.

              perp_mode
                     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.

              address
                     is the address of the first I/O port of  the  FDC.   Nor‐
                     mally,  this is 0x3f0 for the first FDC and 0x370 for the

       3 1/2 drive, and 1.2MB on a high density 5 1/4 drive.)

       These settings are only changeable by the super user.

       -c cmos-type
       --cmos  cmos-type
              Set the virtual CMOS type of the floppy drive. This is useful if

              *      the  physical  CMOS  type  is wrong (this may happen with
                     BIOSes which use a non-standard mapping),

              *      you have more than two drives (the physical CMOS may only
                     describe up to two drives).

              *      you have a BIOS that allows swapping drives A: and B: for
                     DOS.

       Right now, this CMOS parameter is not used by the  kernel,  except  for
       feeding  it back to other applications (for instance superformat, flop‐
       pymeter or MAKEFLOPPIES).  It is also possible to supply a virtual CMOS
       type  with  the cmos boot option (see section  Boottime configuration).
       If possible, I recommend you use the boot option, rather  than  floppy‐
       control,  because the boot option also sets any parameters derived from
       the CMOS type, such as the autodetection list and  the  native  format,
       whereas floppycontrol does not.

       -A  autodetect-seq
       --autodetect  autodetect-seq
              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 t.  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 t is not given, or the  whole
              first  track  when t 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.

              Example:

                 7,4,24t,25

              means  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.
              place  (barring other constraints), as each format that is tried
              out takes 400 milliseconds.

       -n native-format
       --native_format  native-format
              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 MAKEFLOPPIES
              script which uses it to decide which device nodes to create.


Configuration of the disk change line
       --broken_dcl
              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.

              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 spu‐
              rious cache flushes.

              The following hardware problems may lead to a  bad  disk  change
              line:

              *      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 con‐
                     nectors 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.

              *      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.

              *      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 broken_dcl option on.

       --working_dcl
              Assumes that the disk change line  works  all  right.  Switching
              from  broken to working may lead to unexpected results after the
              first disk change.

       parameters,  you  need  superuser  privileges. All times are in "jiffy"
       units (10 milliseconds), unless otherwise specified.

       --hlt  hlt
              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.

       --hut  hut
              Set  the  head  unload  time  (in  microseconds) for this floppy
              drive.  The head unload time describes how long the floppy  con‐
              troller  waits after an access before directing its attention to
              the other head, or before seeking.

       --srt  srt
              Set the step rate (in microseconds) for this floppy drive.   The
              step  rate describes how long the drive head stays on one cylin‐
              der when seeking.  Setting this value to low  (too  fast  seeks)
              may  make  seeks  fail,  because  the  motor doesn’t follow fast
              enough.

       -u spinup-time
       --spinup  spinup-time
              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.

       -o spindown-time
       --spindown  spindown-time
              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.

       -O spindown-offset
       --spindown_offset  spindown-offset
              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 unfavor‐
              able situation).

              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.


Debugging messages
       This subsection describes how to switch the  available  debugging  mes‐
       sages on and off.


       --debug
              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 pur‐
              poses, the default values are good enough.)

       --nodebug
              Switch debugging output off.

       --messages
              Print  informational  messages  after  autodetection,   geometry
              parameter clearing and dma over/underruns.

       --nomessages
              Don’t print informational messages after these events.


Error Handling Options
       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.

       -a operation-abort-threshold
       --abort  operation-abort-threshold
              Tell  the  floppy  driver  to stop trying to read/write a sector
              after operation-abort-threshold  retries,  and  signal  the  I/O
              error to the user.

       -t read-track-threshold
       --readtrack  read-track-threshold
              Tell the floppy driver to switch from track-reading mode to sec‐
              tor-at-a-time-mode after read-track-threshold retries.

       -r recalibrate-threshold
       --recalibrate  recalibrate-threshold
              Tell the floppy driver to recalibrate the  drive  after  recali‐
              brate-threshold retries.

       -R reset-threshold
       --reset  reset-threshold
              Tell  the  floppy  driver  to  reset the controller after reset-
              threshold retries. After a controller reset, the  floppy  driver

       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.


       --clrwerror
              Clears the write error structure.

       --printwerror
              Prints the contents of the write error structure:

              write_errors
                     is a count of how many write errors have  occurred  since
                     the structure was last cleared.

              badness
                     is the maximal number of retries that were needed to com‐
                     plete an operation (reads, writes and formats).

              first_error_sector
                     is  where  the  first   (chronologically)   write   error
                     occurred.

              first_error_generation
                     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.

              last_error_sector
                     and

              last_error_generation
                     are similar.


Other drive configuration options
       This  subsection lists per drive configuration options, which don’t fit
       in any other category.  They are available only to the superuser:


       --tracks  max-tracks
              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.

              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.


--TechZilla

TechZilla.biz | TechZilla.info | SlicerUnderground | techzilla.50megs.com | Tohigherground | NextOnStage | EMUslax | GNUlinx | GamesOfDaPast | WorldCrimeWars | Fistula | Asus-Z81k | Riding-Gear | UniformDiscount | WorkWearIt | NuZilla