Merge master.kernel.org:/home/rmk/linux-2.6-arm
[linux-2.6.git] / drivers / char / ftape / Kconfig
1 #
2 # Ftape configuration
3 #
4 config ZFTAPE
5         tristate "Zftape, the VFS interface"
6         depends on FTAPE
7         ---help---
8           Normally, you want to say Y or M. DON'T say N here or you
9           WON'T BE ABLE TO USE YOUR FLOPPY TAPE DRIVE.
10
11           The ftape module itself no longer contains the routines necessary
12           to interface with the kernel VFS layer (i.e. to actually write data
13           to and read data from the tape drive).  Instead the file system
14           interface (i.e. the hardware independent part of the driver) has
15           been moved to a separate module.
16
17           To compile this driver as a module, choose M here: the
18           module will be called zftape.
19
20           Regardless of whether you say Y or M here, an additional runtime
21           loadable module called `zft-compressor' which contains code to
22           support user transparent on-the-fly compression based on Ross
23           William's lzrw3 algorithm will be produced.  If you have enabled the
24           kernel module loader (i.e. have said Y to "Kernel module loader
25           support", above) then `zft-compressor' will be loaded
26           automatically by zftape when needed.
27
28           Despite its name, zftape does NOT use compression by default.  The
29           file <file:Documentation/ftape.txt> contains a short description of
30           the most important changes in the file system interface compared to
31           previous versions of ftape.  The ftape home page
32           <http://www.instmath.rwth-aachen.de/~heine/ftape/> contains
33           further information.
34
35           IMPORTANT NOTE: zftape can read archives created by previous
36           versions of ftape and provide file mark support (i.e. fast skipping
37           between tape archives) but previous version of ftape will lack file
38           mark support when reading archives produced by zftape.
39
40 config ZFT_DFLT_BLK_SZ
41         int "Default block size"
42         depends on ZFTAPE
43         default "10240"
44         ---help---
45           If unsure leave this at its default value, i.e. 10240. Note that
46           you specify only the default block size here. The block size can be
47           changed at run time using the MTSETBLK tape operation with the
48           MTIOCTOP ioctl (i.e. with "mt -f /dev/qft0 setblk #BLKSZ" from the
49           shell command line).
50
51           The probably most striking difference between zftape and previous
52           versions of ftape is the fact that all data must be written or read
53           in multiples of a fixed block size. The block size defaults to
54           10240 which is what GNU tar uses. The values for the block size
55           should be either 1 or multiples of 1024 up to a maximum value of
56           63488 (i.e. 62 K). If you specify `1' then zftape's builtin
57           compression will be disabled.
58
59           Reasonable values are `10240' (GNU tar's default block size),
60           `5120' (afio's default block size), `32768' (default block size some
61           backup programs assume for SCSI tape drives) or `1' (no restriction
62           on block size, but disables builtin compression).
63
64 comment "The compressor will be built as a module only!"
65         depends on FTAPE && ZFTAPE
66
67 config ZFT_COMPRESSOR
68         tristate
69         depends on FTAPE!=n && ZFTAPE!=n
70         default m
71
72 config FT_NR_BUFFERS
73         int "Number of ftape buffers (EXPERIMENTAL)"
74         depends on FTAPE && EXPERIMENTAL
75         default "3"
76         help
77           Please leave this at `3' unless you REALLY know what you are doing.
78           It is not necessary to change this value. Values below 3 make the
79           proper use of ftape impossible, values greater than 3 are a waste of
80           memory. You can change the amount of DMA memory used by ftape at
81           runtime with "mt -f /dev/qft0 setdrvbuffer #NUMBUFFERS". Each buffer
82           wastes 32 KB of memory. Please note that this memory cannot be
83           swapped out.
84
85 config FT_PROC_FS
86         bool "Enable procfs status report (+2kb)"
87         depends on FTAPE && PROC_FS
88         ---help---
89           Optional. Saying Y will result in creation of a directory
90           `/proc/ftape' under the /proc file system. The files can be viewed
91           with your favorite pager (i.e. use "more /proc/ftape/history" or
92           "less /proc/ftape/history" or simply "cat /proc/ftape/history"). The
93           file will contain some status information about the inserted
94           cartridge, the kernel driver, your tape drive, the floppy disk
95           controller and the error history for the most recent use of the
96           kernel driver. Saying Y will enlarge the size of the ftape driver
97           by approximately 2 KB.
98
99           WARNING: When compiling ftape as a module (i.e. saying M to "Floppy
100           tape drive") it is dangerous to use ftape's /proc file system
101           interface. Accessing `/proc/ftape' while the module is unloaded will
102           result in a kernel Oops. This cannot be fixed from inside ftape.
103
104 choice
105         prompt "Debugging output"
106         depends on FTAPE
107         default FT_NORMAL_DEBUG
108
109 config FT_NORMAL_DEBUG
110         bool "Normal"
111         ---help---
112           This option controls the amount of debugging output the ftape driver
113           is ABLE to produce; it does not increase or diminish the debugging
114           level itself. If unsure, leave this at its default setting,
115           i.e. choose "Normal".
116
117           Ftape can print lots of debugging messages to the system console
118           resp. kernel log files. Reducing the amount of possible debugging
119           output reduces the size of the kernel module by some KB, so it might
120           be a good idea to use "None" for emergency boot floppies.
121
122           If you want to save memory then the following strategy is
123           recommended: leave this option at its default setting "Normal" until
124           you know that the driver works as expected, afterwards reconfigure
125           the kernel, this time specifying "Reduced" or "None" and recompile
126           and install the kernel as usual. Note that choosing "Excessive"
127           debugging output does not increase the amount of debugging output
128           printed to the console but only makes it possible to produce
129           "Excessive" debugging output.
130
131           Please read <file:Documentation/ftape.txt> for a short description
132           how to control the amount of debugging output.
133
134 config FT_FULL_DEBUG
135         bool "Excessive"
136         help
137           Extremely verbose output for driver debugging purposes.
138
139 config FT_NO_TRACE
140         bool "Reduced"
141         help
142           Reduced tape driver debugging output.
143
144 config FT_NO_TRACE_AT_ALL
145         bool "None"
146         help
147           Suppress all debugging output from the tape drive.
148
149 endchoice
150
151 comment "Hardware configuration"
152         depends on FTAPE
153
154 choice
155         prompt "Floppy tape controllers"
156         depends on FTAPE
157         default FT_STD_FDC
158
159 config FT_STD_FDC
160         bool "Standard"
161         ---help---
162           Only change this setting if you have a special controller. If you
163           didn't plug any add-on card into your computer system but just
164           plugged the floppy tape cable into the already existing floppy drive
165           controller then you don't want to change the default setting,
166           i.e. choose "Standard".
167
168           Choose "MACH-2" if you have a Mountain Mach-2 controller.
169           Choose "FC-10/FC-20" if you have a Colorado FC-10 or FC-20
170           controller.
171           Choose "Alt/82078" if you have another controller that is located at
172           an IO base address different from the standard floppy drive
173           controller's base address of `0x3f0', or uses an IRQ (interrupt)
174           channel different from `6', or a DMA channel different from
175           `2'. This is necessary for any controller card that is based on
176           Intel's 82078 FDC such as Seagate's, Exabyte's and Iomega's "high
177           speed" controllers.
178
179           If you choose something other than "Standard" then please make
180           sure that the settings for the IO base address and the IRQ and DMA
181           channel in the configuration menus below are correct. Use the manual
182           of your tape drive to determine the correct settings!
183
184           If you are already successfully using your tape drive with another
185           operating system then you definitely should use the same settings
186           for the IO base, the IRQ and DMA channel that have proven to work
187           with that other OS.
188
189           Note that this menu lets you specify only the default setting for
190           the hardware setup. The hardware configuration can be changed at
191           boot time (when ftape is compiled into the kernel, i.e. if you
192           have said Y to "Floppy tape drive") or module load time (i.e. if you
193           have said M to "Floppy tape drive").
194
195           Please read also the file <file:Documentation/ftape.txt> which
196           contains a short description of the parameters that can be set at
197           boot or load time. If you want to use your floppy tape drive on a
198           PCI-bus based system, please read the file
199           <file:drivers/char/ftape/README.PCI>.
200
201 config FT_MACH2
202         bool "MACH-2"
203
204 config FT_PROBE_FC10
205         bool "FC-10/FC-20"
206
207 config FT_ALT_FDC
208         bool "Alt/82078"
209
210 endchoice
211
212 comment "Consult the manuals of your tape drive for the correct settings!"
213         depends on FTAPE && !FT_STD_FDC
214
215 config FT_FDC_BASE
216         hex "IO base of the floppy disk controller"
217         depends on FTAPE && !FT_STD_FDC
218         default "0"
219         ---help---
220           You don't need to specify a value if the following default
221           settings for the base IO address are correct:
222           <<< MACH-2     : 0x1E0 >>>
223           <<< FC-10/FC-20: 0x180 >>>
224           <<< Secondary  : 0x370 >>>
225           Secondary refers to a secondary FDC controller like the "high speed"
226           controllers delivered by Seagate or Exabyte or Iomega's Ditto Dash.
227           Please make sure that the setting for the IO base address
228           specified here is correct. USE THE MANUAL OF YOUR TAPE DRIVE OR
229           CONTROLLER CARD TO DETERMINE THE CORRECT SETTING. If you are already
230           successfully using the tape drive with another operating system then
231           you definitely should use the same settings for the IO base that has
232           proven to work with that other OS.
233
234           Note that this menu lets you specify only the default setting for
235           the IO base. The hardware configuration can be changed at boot time
236           (when ftape is compiled into the kernel, i.e. if you specified Y to
237           "Floppy tape drive") or module load time (i.e. if you have said M to
238           "Floppy tape drive").
239
240           Please read also the file <file:Documentation/ftape.txt> which
241           contains a short description of the parameters that can be set at
242           boot or load time.
243
244 config FT_FDC_IRQ
245         int "IRQ channel of the floppy disk controller"
246         depends on FTAPE && !FT_STD_FDC
247         default "0"
248         ---help---
249           You don't need to specify a value if the following default
250           settings for the interrupt channel are correct:
251           <<< MACH-2     : 6 >>>
252           <<< FC-10/FC-20: 9 >>>
253           <<< Secondary  : 6 >>>
254           Secondary refers to secondary a FDC controller like the "high speed"
255           controllers delivered by Seagate or Exabyte or Iomega's Ditto Dash.
256           Please make sure that the setting for the IO base address
257           specified here is correct. USE THE MANUAL OF YOUR TAPE DRIVE OR
258           CONTROLLER CARD TO DETERMINE THE CORRECT SETTING. If you are already
259           successfully using the tape drive with another operating system then
260           you definitely should use the same settings for the IO base that has
261           proven to work with that other OS.
262
263           Note that this menu lets you specify only the default setting for
264           the IRQ channel. The hardware configuration can be changed at boot
265           time (when ftape is compiled into the kernel, i.e. if you said Y to
266           "Floppy tape drive") or module load time (i.e. if you said M to
267           "Floppy tape drive").
268
269           Please read also the file <file:Documentation/ftape.txt> which
270           contains a short description of the parameters that can be set at
271           boot or load time.
272
273 config FT_FDC_DMA
274         int "DMA channel of the floppy disk controller"
275         depends on FTAPE && !FT_STD_FDC
276         default "0"
277         ---help---
278           You don't need to specify a value if the following default
279           settings for the DMA channel are correct:
280           <<< MACH-2     : 2 >>>
281           <<< FC-10/FC-20: 3 >>>
282           <<< Secondary  : 2 >>>
283           Secondary refers to a secondary FDC controller like the "high speed"
284           controllers delivered by Seagate or Exabyte or Iomega's Ditto Dash.
285           Please make sure that the setting for the IO base address
286           specified here is correct. USE THE MANUAL OF YOUR TAPE DRIVE OR
287           CONTROLLER CARD TO DETERMINE THE CORRECT SETTING. If you are already
288           successfully using the tape drive with another operating system then
289           you definitely should use the same settings for the IO base that has
290           proven to work with that other OS.
291
292           Note that this menu lets you specify only the default setting for
293           the DMA channel. The hardware configuration can be changed at boot
294           time (when ftape is compiled into the kernel, i.e. if you said Y to
295           "Floppy tape drive") or module load time (i.e. if you said M to
296           "Floppy tape drive").
297
298           Please read also the file <file:Documentation/ftape.txt> which
299           contains a short description of the parameters that can be set at
300           boot or load time.
301
302 config FT_FDC_THR
303         int "Default FIFO threshold (EXPERIMENTAL)"
304         depends on FTAPE && EXPERIMENTAL
305         default "8"
306         help
307           Set the FIFO threshold of the FDC. If this is higher the DMA
308           controller may serve the FDC after a higher latency time. If this is
309           lower, fewer DMA transfers occur leading to less bus contention.
310           You may try to tune this if ftape annoys you with "reduced data
311           rate because of excessive overrun errors" messages. However, this
312           doesn't seem to have too much effect.
313
314           If unsure, don't touch the initial value, i.e. leave it at "8".
315
316 config FT_FDC_MAX_RATE
317         int "Maximal data rate to use (EXPERIMENTAL)"
318         depends on FTAPE && EXPERIMENTAL
319         default "2000"
320         ---help---
321           With some motherboard/FDC combinations ftape will not be able to
322           run your FDC/tape drive combination at the highest available
323           speed. If this is the case you'll encounter "reduced data rate
324           because of excessive overrun errors" messages and lots of retries
325           before ftape finally decides to reduce the data rate.
326
327           In this case it might be desirable to tell ftape beforehand that
328           it need not try to run the tape drive at the highest available
329           speed. If unsure, leave this disabled, i.e. leave it at 2000
330           bits/sec.
331
332 config FT_ALPHA_CLOCK
333         int "CPU clock frequency of your DEC Alpha" if ALPHA
334         depends on FTAPE
335         default "0"
336         help
337           On some DEC Alpha machines the CPU clock frequency cannot be
338           determined automatically, so you need to specify it here ONLY if
339           running a DEC Alpha, otherwise this setting has no effect.
340