1/****************************************************************************
2 ****************************************************************************
3 ***
4 ***   This header was automatically generated from a Linux kernel header
5 ***   of the same name, to make information necessary for userspace to
6 ***   call into the kernel available to libc.  It contains only constants,
7 ***   structures, and macros generated from the original header, and thus,
8 ***   contains no copyrightable information.
9 ***
10 ****************************************************************************
11 ****************************************************************************/
12#ifndef _FTAPE_H
13#define _FTAPE_H
14
15#define FTAPE_VERSION "ftape v3.04d 25/11/97"
16
17#include <linux/types.h>
18#include <linux/mtio.h>
19
20#define FT_SECTOR(x) (x+1)
21#define FT_SECTOR_SIZE 1024
22#define FT_SECTORS_PER_SEGMENT 32
23#define FT_ECC_SECTORS 3
24#define FT_SEGMENT_SIZE ((FT_SECTORS_PER_SEGMENT - FT_ECC_SECTORS) * FT_SECTOR_SIZE)
25#define FT_BUFF_SIZE (FT_SECTORS_PER_SEGMENT * FT_SECTOR_SIZE)
26
27#define FTAPE_SEL_A 0
28#define FTAPE_SEL_B 1
29#define FTAPE_SEL_C 2
30#define FTAPE_SEL_D 3
31#define FTAPE_SEL_MASK 3
32#define FTAPE_SEL(unit) ((unit) & FTAPE_SEL_MASK)
33#define FTAPE_NO_REWIND 4
34
35typedef union {
36 struct {
37 __u8 error;
38 __u8 command;
39 } error;
40 long space;
41} ft_drive_error;
42typedef union {
43 struct {
44 __u8 drive_status;
45 __u8 drive_config;
46 __u8 tape_status;
47 } status;
48 long space;
49} ft_drive_status;
50
51#endif
52