floppytape, ft --
QIC-40 and QIC-80 cartridge floppy tape drive
A single QIC-40 or QIC-80 tape drive
connected to the floppy disk controller is supported by the
ft device driver.
ECC encoding and decoding is automatically used
with the standard raw device /dev/rft0; the
floppy tape driver does not support a no-rewind device.
For every 29KB written to the tape, 3KB of ECC data
is written with it to provide error recovery.
QIC-40 and QIC-80 tapes must be
formatted before use; use preformatted tapes for best
If the default tape device is a QIC-40,
QIC-80, the appropriate device will be linked to /dev/ctmini.
for a list of the
commands that are supported by the
Configuration options for the floppy tape driver
Five configuration options are available for the floppy
tape driver (ft) for QIC-40 and
QIC-80 tape drives. To alter these variables, it
is necessary to edit the configuration file
/etc/conf/pack.d/ft/space.c, relink the kernel,
and reboot the system with the new kernel. While all
options may be edited manually in space.c, the
first and second options, ft_drivetype and
ft_select_mode, can also be modified using the
mkdev tape command. These options are summarized
in the following table:
Floppy tape drive configuration options
2 <= x <= (ft_maxbufs)
(ft_minbufs) <= x <= 20
When set from FT_QIC40 to FT_QIC40XL, or
from FT_QIC80 to FT_QIC80XL,
enables support of extended length (307.5 ft) DC2120
mini-cartridges in the driver.
FT_QIC60 is an obsolete value; FT_QIC40XL should be used
A QIC-40 drive should never be operated with
ft_drivetype set to FT_QIC80 or
FT_QIC80XL. Also, a QIC-80 drive
should never be operated with ft_drivetype set to
FT_QIC40 or FT_QIC40XL. If they are,
your system may panic or hang, or data may be lost from the
When set to FT_HARD_SELECT, the ft
driver expects a normal tape drive with a drive
select jumper to be present. If ft_select_mode
is set to FT_SOFT_SELECT, the ft driver uses
Soft Select mode to access the tape drive, which must be a
Soft Select-compatible QIC-40 or QIC-80
tape drive with no drive select jumpers installed.
When set to FT_OPEN_TIME, the ft driver allocates memory
when it is needed, and frees memory once it is no longer
needed. Typically, memory is allocated at open time
and released at close time. When ft_alloc_switch
is set to FT_INIT_TIME, all memory allocation is
done at init time (when the system boots) and
the ft driver retains this memory. The advantage
of init time allocation
is that more memory is available for the ft
buffers. The disadvantage is that this memory is held by the
tape driver and cannot be used elsewhere in the system.
These variables set the minimum and maximum number of 32KB
buffers that the ft driver is allowed to use.
The lower limit of the minimum is hard set to 2, with any
value lower than 2 interpreted as 2. The upper limit of
the maximum is hard set to 20, with numbers greater than 20
interpreted as 20. When the ft driver allocates
memory for buffers, it requests ft_maxbufs
first. If this fails, ft reduces its request by
one and tries again. This continues until either the
request is satisfied or ft_minbufs buffers fail
to be allocated. If the request is satisfied, then
ft proceeds. Otherwise, the tape operation fails
and ENOMEM (Error, no memory for buffers) is
The exception to this is when ft_alloc_switch is
set to FT_INIT_TIME (allocation takes place at
init time). If the ft_minbufs are not
available at init time, then ft resorts
to allocation as needed (as if ft_alloc_switch
were set to FT_OPEN_TIME). If this condition
occurs, a warning is printed at init time.
It is recommended that ft_minbufs be set to at
least 3. Although the driver can operate with only two
buffers, performance is seriously degraded; the tape never
streams, and in fact produces an underrun for every 32KB
block written to the tape.
Floppy tape cartridge media
There are three mini-cartridge types appropriate to floppy
Floppy tape mini-cartridge types
DC2000 and DC2080 are available unformatted or
preformatted from the manufacturer. Irwin format tapes are incompatible
with the floppy tape driver.
If a 2120 cartridge is inserted into a drive, it can be detected as
an extended length tape and will be formatted for 60MB
on QIC-40 drives, and 120MB on QIC-80 drives.
Some older QIC-40 drives are not able to detect extended length
tapes. These models should never be operated with a DC2120
inserted, since they will expect a 205 foot tape length.
distinguish between blank (unformatted) DC2000 and DC2080.
Never attempt to format a DC2080 in a QIC-40 drive, or a
DC2000 in a QIC-80 drive.
Media configurations for floppy tape drives are summarized in
the following table:
Floppy tape drive media configurations
The following error message may be displayed on the console.
for general information about kernel error messages,
including a list of generic device driver errors.
CONFIG: ft: Cannot allocate m to n (ft_minbufs to ft_maxbufs) 32k buffers
Will try again if opened
Not enough memory was available to allocate to the buffers on initialization.