PREV UP NEXT The Ftape Installation Guide - MTIOCFTFORMAT


8.5.7.2: FTFMT_SET_PARMS -- set software parameters

This ioctl informs the kernel driver module about the parameters that will be used when formatting the tape cartridge. Note that the kernel driver does not alter the hardware state of the tape drive, i.e. it doesn't set the number of format segment nor does it program the tape drive to the desired QIC standard. This must be done using the MTIOCFTCMD ioctl (see MTIOCFTCMD). FTFMT_SET_PARMS merely results in recalibration of the data rate and in the recalculation of timeouts and synchronizes the user level formatting program with the hardware driver. See struct mtftformat for the complete definition of the data structures. The following parameters must be set:

struct ftfmtparms { unsigned char ft_qicstd; /* QIC-40/QIC-80/QIC-3010/QIC-3020 */ unsigned char ft_fmtcode; /* Refer to the QIC specs */ unsigned char ft_fhm; /* floppy head max */ unsigned char ft_ftm; /* floppy track max */ unsigned short ft_spt; /* segments per track */ unsigned short ft_tpc; /* tracks per cartridge */ };

Please refer also to the QIC standards `QIC-40', `QIC-80', `QIC-3010', `QIC-3020' and `QIC-117' for the correct settings. The standards can be found at http://www.qic.org.

ft_qicstd
This must be set to the desired QIC standard. It should be one out of {QIC_TAPE_QIC40, QIC_TAPE_QIC80, QIC_TAPE_QIC3020, QIC_TAPE_QIC3010}. These symbols are defined in `./include/linux/qic117.h' (qic117.h)

#define QIC_TAPE_QIC40 0x01 #define QIC_TAPE_QIC80 0x02 #define QIC_TAPE_QIC3020 0x03 #define QIC_TAPE_QIC3010 0x04

ft_fmtcode
This must be set to the format code that shall be written to the header segments. The possible values are defined in `./include/linux/ftape-header-segment.h' (ftape-header-segment.h)

typedef enum { fmt_normal = 2, /* QIC-80 post Rev. B 205Ft or 307Ft tape */ fmt_1100ft = 3, /* QIC-80 post Rev. B 1100Ft tape */ fmt_var = 4, /* QIC-80 post Rev. B variable length format */ fmt_425ft = 5, /* QIC-80 post Rev. B 425Ft tape */ fmt_big = 6 /* QIC-3010/3020 variable length tape with more * than 2^16 segments per tape */ } ft_format_type;

ft_fhm, ft_ftm
These are abbreviations for `Floppy Head Max' and `Floppy Track Max'. To understand was this means one has to recall that a FDC, Floppy Disk Controller, is used to drive the tape. In order to make this possible each tape sector must be given a floppy disk sector address. This means, in effect, that the floppy tape drive simulates a (very large) floppy disk drive. ft_fhm gives the number of read/write heads of that virtual floppy disk drive, and the ft_ftm specifies the number of tracks of the virtual floppy disk in the virtual floppy disk drive.

ft_spt, ft_tpc
These parameters give the tape cartridge geometry. ft_spt means `Segments Per Track' and ft_tpc is an abbreviation for `Tracks Per Cartridge'. Both values are to be understood as the `linear tape cartridge geometry' in contrast to the virtual floppy disk parameters that are specified by ft_fhm and ft_ftm.


Use these buttons to jump to the top menu

TOP (parent node)

TOP (previous node) TOP (this node) TOP (next node)