annotate Documentation/floppy.txt @ 854:950b9eb27661

usbback: fix urb interval value for interrupt urbs.

Signed-off-by: Noboru Iwamatsu <n_iwamatsu@jp.fujitsu.com>
author Keir Fraser <keir.fraser@citrix.com>
date Mon Apr 06 13:51:20 2009 +0100 (2009-04-06)
parents 831230e53067
rev   line source
ian@0 1 This file describes the floppy driver.
ian@0 2
ian@0 3 FAQ list:
ian@0 4 =========
ian@0 5
ian@0 6 A FAQ list may be found in the fdutils package (see below), and also
ian@0 7 at <http://fdutils.linux.lu/faq.html>.
ian@0 8
ian@0 9
ian@0 10 LILO configuration options (Thinkpad users, read this)
ian@0 11 ======================================================
ian@0 12
ian@0 13 The floppy driver is configured using the 'floppy=' option in
ian@0 14 lilo. This option can be typed at the boot prompt, or entered in the
ian@0 15 lilo configuration file.
ian@0 16
ian@0 17 Example: If your kernel is called linux-2.6.9, type the following line
ian@0 18 at the lilo boot prompt (if you have a thinkpad):
ian@0 19
ian@0 20 linux-2.6.9 floppy=thinkpad
ian@0 21
ian@0 22 You may also enter the following line in /etc/lilo.conf, in the description
ian@0 23 of linux-2.6.9:
ian@0 24
ian@0 25 append = "floppy=thinkpad"
ian@0 26
ian@0 27 Several floppy related options may be given, example:
ian@0 28
ian@0 29 linux-2.6.9 floppy=daring floppy=two_fdc
ian@0 30 append = "floppy=daring floppy=two_fdc"
ian@0 31
ian@0 32 If you give options both in the lilo config file and on the boot
ian@0 33 prompt, the option strings of both places are concatenated, the boot
ian@0 34 prompt options coming last. That's why there are also options to
ian@0 35 restore the default behavior.
ian@0 36
ian@0 37
ian@0 38 Module configuration options
ian@0 39 ============================
ian@0 40
ian@0 41 If you use the floppy driver as a module, use the following syntax:
ian@0 42 modprobe floppy <options>
ian@0 43
ian@0 44 Example:
ian@0 45 modprobe floppy omnibook messages
ian@0 46
ian@0 47 If you need certain options enabled every time you load the floppy driver,
ian@0 48 you can put:
ian@0 49
ian@0 50 options floppy omnibook messages
ian@0 51
ian@0 52 in /etc/modprobe.conf.
ian@0 53
ian@0 54
ian@0 55 The floppy driver related options are:
ian@0 56
ian@0 57 floppy=asus_pci
ian@0 58 Sets the bit mask to allow only units 0 and 1. (default)
ian@0 59
ian@0 60 floppy=daring
ian@0 61 Tells the floppy driver that you have a well behaved floppy controller.
ian@0 62 This allows more efficient and smoother operation, but may fail on
ian@0 63 certain controllers. This may speed up certain operations.
ian@0 64
ian@0 65 floppy=0,daring
ian@0 66 Tells the floppy driver that your floppy controller should be used
ian@0 67 with caution.
ian@0 68
ian@0 69 floppy=one_fdc
ian@0 70 Tells the floppy driver that you have only one floppy controller.
ian@0 71 (default)
ian@0 72
ian@0 73 floppy=two_fdc
ian@0 74 floppy=<address>,two_fdc
ian@0 75 Tells the floppy driver that you have two floppy controllers.
ian@0 76 The second floppy controller is assumed to be at <address>.
ian@0 77 This option is not needed if the second controller is at address
ian@0 78 0x370, and if you use the 'cmos' option.
ian@0 79
ian@0 80 floppy=thinkpad
ian@0 81 Tells the floppy driver that you have a Thinkpad. Thinkpads use an
ian@0 82 inverted convention for the disk change line.
ian@0 83
ian@0 84 floppy=0,thinkpad
ian@0 85 Tells the floppy driver that you don't have a Thinkpad.
ian@0 86
ian@0 87 floppy=omnibook
ian@0 88 floppy=nodma
ian@0 89 Tells the floppy driver not to use Dma for data transfers.
ian@0 90 This is needed on HP Omnibooks, which don't have a workable
ian@0 91 DMA channel for the floppy driver. This option is also useful
ian@0 92 if you frequently get "Unable to allocate DMA memory" messages.
ian@0 93 Indeed, dma memory needs to be continuous in physical memory,
ian@0 94 and is thus harder to find, whereas non-dma buffers may be
ian@0 95 allocated in virtual memory. However, I advise against this if
ian@0 96 you have an FDC without a FIFO (8272A or 82072). 82072A and
ian@0 97 later are OK. You also need at least a 486 to use nodma.
ian@0 98 If you use nodma mode, I suggest you also set the FIFO
ian@0 99 threshold to 10 or lower, in order to limit the number of data
ian@0 100 transfer interrupts.
ian@0 101
ian@0 102 If you have a FIFO-able FDC, the floppy driver automatically
ian@0 103 falls back on non DMA mode if no DMA-able memory can be found.
ian@0 104 If you want to avoid this, explicitly ask for 'yesdma'.
ian@0 105
ian@0 106 floppy=yesdma
ian@0 107 Tells the floppy driver that a workable DMA channel is available.
ian@0 108 (default)
ian@0 109
ian@0 110 floppy=nofifo
ian@0 111 Disables the FIFO entirely. This is needed if you get "Bus
ian@0 112 master arbitration error" messages from your Ethernet card (or
ian@0 113 from other devices) while accessing the floppy.
ian@0 114
ian@0 115 floppy=usefifo
ian@0 116 Enables the FIFO. (default)
ian@0 117
ian@0 118 floppy=<threshold>,fifo_depth
ian@0 119 Sets the FIFO threshold. This is mostly relevant in DMA
ian@0 120 mode. If this is higher, the floppy driver tolerates more
ian@0 121 interrupt latency, but it triggers more interrupts (i.e. it
ian@0 122 imposes more load on the rest of the system). If this is
ian@0 123 lower, the interrupt latency should be lower too (faster
ian@0 124 processor). The benefit of a lower threshold is less
ian@0 125 interrupts.
ian@0 126
ian@0 127 To tune the fifo threshold, switch on over/underrun messages
ian@0 128 using 'floppycontrol --messages'. Then access a floppy
ian@0 129 disk. If you get a huge amount of "Over/Underrun - retrying"
ian@0 130 messages, then the fifo threshold is too low. Try with a
ian@0 131 higher value, until you only get an occasional Over/Underrun.
ian@0 132 It is a good idea to compile the floppy driver as a module
ian@0 133 when doing this tuning. Indeed, it allows to try different
ian@0 134 fifo values without rebooting the machine for each test. Note
ian@0 135 that you need to do 'floppycontrol --messages' every time you
ian@0 136 re-insert the module.
ian@0 137
ian@0 138 Usually, tuning the fifo threshold should not be needed, as
ian@0 139 the default (0xa) is reasonable.
ian@0 140
ian@0 141 floppy=<drive>,<type>,cmos
ian@0 142 Sets the CMOS type of <drive> to <type>. This is mandatory if
ian@0 143 you have more than two floppy drives (only two can be
ian@0 144 described in the physical CMOS), or if your BIOS uses
ian@0 145 non-standard CMOS types. The CMOS types are:
ian@0 146
ian@0 147 0 - Use the value of the physical CMOS
ian@0 148 1 - 5 1/4 DD
ian@0 149 2 - 5 1/4 HD
ian@0 150 3 - 3 1/2 DD
ian@0 151 4 - 3 1/2 HD
ian@0 152 5 - 3 1/2 ED
ian@0 153 6 - 3 1/2 ED
ian@0 154 16 - unknown or not installed
ian@0 155
ian@0 156 (Note: there are two valid types for ED drives. This is because 5 was
ian@0 157 initially chosen to represent floppy *tapes*, and 6 for ED drives.
ian@0 158 AMI ignored this, and used 5 for ED drives. That's why the floppy
ian@0 159 driver handles both.)
ian@0 160
ian@0 161 floppy=unexpected_interrupts
ian@0 162 Print a warning message when an unexpected interrupt is received.
ian@0 163 (default)
ian@0 164
ian@0 165 floppy=no_unexpected_interrupts
ian@0 166 floppy=L40SX
ian@0 167 Don't print a message when an unexpected interrupt is received. This
ian@0 168 is needed on IBM L40SX laptops in certain video modes. (There seems
ian@0 169 to be an interaction between video and floppy. The unexpected
ian@0 170 interrupts affect only performance, and can be safely ignored.)
ian@0 171
ian@0 172 floppy=broken_dcl
ian@0 173 Don't use the disk change line, but assume that the disk was
ian@0 174 changed whenever the device node is reopened. Needed on some
ian@0 175 boxes where the disk change line is broken or unsupported.
ian@0 176 This should be regarded as a stopgap measure, indeed it makes
ian@0 177 floppy operation less efficient due to unneeded cache
ian@0 178 flushings, and slightly more unreliable. Please verify your
ian@0 179 cable, connection and jumper settings if you have any DCL
ian@0 180 problems. However, some older drives, and also some laptops
ian@0 181 are known not to have a DCL.
ian@0 182
ian@0 183 floppy=debug
ian@0 184 Print debugging messages.
ian@0 185
ian@0 186 floppy=messages
ian@0 187 Print informational messages for some operations (disk change
ian@0 188 notifications, warnings about over and underruns, and about
ian@0 189 autodetection).
ian@0 190
ian@0 191 floppy=silent_dcl_clear
ian@0 192 Uses a less noisy way to clear the disk change line (which
ian@0 193 doesn't involve seeks). Implied by 'daring' option.
ian@0 194
ian@0 195 floppy=<nr>,irq
ian@0 196 Sets the floppy IRQ to <nr> instead of 6.
ian@0 197
ian@0 198 floppy=<nr>,dma
ian@0 199 Sets the floppy DMA channel to <nr> instead of 2.
ian@0 200
ian@0 201 floppy=slow
ian@0 202 Use PS/2 stepping rate:
ian@0 203 " PS/2 floppies have much slower step rates than regular floppies.
ian@0 204 It's been recommended that take about 1/4 of the default speed
ian@0 205 in some more extreme cases."
ian@0 206
ian@0 207
ian@0 208 Supporting utilities and additional documentation:
ian@0 209 ==================================================
ian@0 210
ian@0 211 Additional parameters of the floppy driver can be configured at
ian@0 212 runtime. Utilities which do this can be found in the fdutils package.
ian@0 213 This package also contains a new version of mtools which allows to
ian@0 214 access high capacity disks (up to 1992K on a high density 3 1/2 disk!).
ian@0 215 It also contains additional documentation about the floppy driver.
ian@0 216
ian@0 217 The latest version can be found at fdutils homepage:
ian@0 218 http://fdutils.linux.lu
ian@0 219
ian@0 220 The fdutils releases can be found at:
ian@0 221 http://fdutils.linux.lu/download.html
ian@0 222 http://www.tux.org/pub/knaff/fdutils/
ian@0 223 ftp://metalab.unc.edu/pub/Linux/utils/disk-management/
ian@0 224
ian@0 225 Reporting problems about the floppy driver
ian@0 226 ==========================================
ian@0 227
ian@0 228 If you have a question or a bug report about the floppy driver, mail
ian@0 229 me at Alain.Knaff@poboxes.com . If you post to Usenet, preferably use
ian@0 230 comp.os.linux.hardware. As the volume in these groups is rather high,
ian@0 231 be sure to include the word "floppy" (or "FLOPPY") in the subject
ian@0 232 line. If the reported problem happens when mounting floppy disks, be
ian@0 233 sure to mention also the type of the filesystem in the subject line.
ian@0 234
ian@0 235 Be sure to read the FAQ before mailing/posting any bug reports!
ian@0 236
ian@0 237 Alain
ian@0 238
ian@0 239 Changelog
ian@0 240 =========
ian@0 241
ian@0 242 10-30-2004 : Cleanup, updating, add reference to module configuration.
ian@0 243 James Nelson <james4765@gmail.com>
ian@0 244
ian@0 245 6-3-2000 : Original Document