~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/include/uapi/linux/mtio.h

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /include/uapi/linux/mtio.h (Version linux-6.12-rc7) and /include/uapi/linux/mtio.h (Version linux-4.19.322)


** Warning: Cannot open xref database.

  1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux      1 
  2 /*                                                
  3  * linux/mtio.h header file for Linux. Written    
  4  *                                                
  5  * Modified for special ioctls provided by zft    
  6  * by C.-J. Heine.                                
  7  */                                               
  8                                                   
  9 #ifndef _LINUX_MTIO_H                             
 10 #define _LINUX_MTIO_H                             
 11                                                   
 12 #include <linux/types.h>                          
 13 #include <linux/ioctl.h>                          
 14                                                   
 15 /*                                                
 16  * Structures and definitions for mag tape io     
 17  */                                               
 18                                                   
 19 /* structure for MTIOCTOP - mag tape op comman    
 20 struct  mtop {                                    
 21         short   mt_op;          /* operations     
 22         int     mt_count;       /* how many of    
 23 };                                                
 24                                                   
 25 /* Magnetic Tape operations [Not all operation    
 26 #define MTRESET 0       /* +reset drive in cas    
 27 #define MTFSF   1       /* forward space over     
 28                          * position at first r    
 29                          */                       
 30 #define MTBSF   2       /* backward space File    
 31 #define MTFSR   3       /* forward space recor    
 32 #define MTBSR   4       /* backward space reco    
 33 #define MTWEOF  5       /* write an end-of-fil    
 34 #define MTREW   6       /* rewind */              
 35 #define MTOFFL  7       /* rewind and put the     
 36 #define MTNOP   8       /* no op, set status o    
 37 #define MTRETEN 9       /* retension tape */      
 38 #define MTBSFM  10      /* +backward space Fil    
 39 #define MTFSFM  11      /* +forward space File    
 40 #define MTEOM   12      /* goto end of recorde    
 41                          * MTEOM positions aft    
 42                          * appending another f    
 43                          */                       
 44 #define MTERASE 13      /* erase tape -- be ca    
 45                                                   
 46 #define MTRAS1  14      /* run self test 1 (no    
 47 #define MTRAS2  15      /* run self test 2 (de    
 48 #define MTRAS3  16      /* reserved for self t    
 49                                                   
 50 #define MTSETBLK 20     /* set block length (S    
 51 #define MTSETDENSITY 21 /* set tape density (S    
 52 #define MTSEEK  22      /* seek to block (Tand    
 53 #define MTTELL  23      /* tell block (Tandber    
 54 #define MTSETDRVBUFFER 24 /* set the drive buf    
 55                         /* ordinary buffered o    
 56 #define MTFSS   25      /* space forward over     
 57 #define MTBSS   26      /* space backward over    
 58 #define MTWSM   27      /* write setmarks */      
 59                                                   
 60 #define MTLOCK  28      /* lock the drive door    
 61 #define MTUNLOCK 29     /* unlock the drive do    
 62 #define MTLOAD  30      /* execute the SCSI lo    
 63 #define MTUNLOAD 31     /* execute the SCSI un    
 64 #define MTCOMPRESSION 32/* control compression    
 65 #define MTSETPART 33    /* Change the active t    
 66 #define MTMKPART  34    /* Format the tape wit    
 67 #define MTWEOFI 35      /* write an end-of-fil    
 68                                                   
 69 /* structure for MTIOCGET - mag tape get statu    
 70                                                   
 71 struct  mtget {                                   
 72         long    mt_type;        /* type of mag    
 73         long    mt_resid;       /* residual co    
 74                                  *      number    
 75                                  *      number    
 76                                  *      number    
 77                                  */               
 78         /* the following registers are device     
 79         long    mt_dsreg;       /* status regi    
 80         long    mt_gstat;       /* generic (de    
 81         long    mt_erreg;       /* error regis    
 82         /* The next two fields are not always     
 83         __kernel_daddr_t mt_fileno;     /* num    
 84         __kernel_daddr_t mt_blkno;      /* cur    
 85 };                                                
 86                                                   
 87                                                   
 88                                                   
 89 /*                                                
 90  * Constants for mt_type. Not all of these are    
 91  * and these are not all of the ones that are     
 92  */                                               
 93 #define MT_ISUNKNOWN            0x01              
 94 #define MT_ISQIC02              0x02    /* Gen    
 95 #define MT_ISWT5150             0x03    /* Wan    
 96 #define MT_ISARCHIVE_5945L2     0x04    /* Arc    
 97 #define MT_ISCMSJ500            0x05    /* CMS    
 98 #define MT_ISTDC3610            0x06    /* Tan    
 99 #define MT_ISARCHIVE_VP60I      0x07    /* Arc    
100 #define MT_ISARCHIVE_2150L      0x08    /* Arc    
101 #define MT_ISARCHIVE_2060L      0x09    /* Arc    
102 #define MT_ISARCHIVESC499       0x0A    /* Arc    
103 #define MT_ISQIC02_ALL_FEATURES 0x0F    /* Gen    
104 #define MT_ISWT5099EEN24        0x11    /* Wan    
105 #define MT_ISTEAC_MT2ST         0x12    /* Tea    
106 #define MT_ISEVEREX_FT40A       0x32    /* Eve    
107 #define MT_ISDDS1               0x51    /* DDS    
108 #define MT_ISDDS2               0x52    /* DDS    
109 #define MT_ISONSTREAM_SC        0x61   /* OnSt    
110                                           and     
111 #define MT_ISSCSI1              0x71    /* Gen    
112 #define MT_ISSCSI2              0x72    /* Gen    
113                                                   
114 /* QIC-40/80/3010/3020 ftape supported drives.    
115  * 20bit vendor ID + 0x800000 (see ftape-vendo    
116  */                                               
117 #define MT_ISFTAPE_UNKNOWN      0x800000 /* ob    
118 #define MT_ISFTAPE_FLAG 0x800000                  
119                                                   
120                                                   
121 /* structure for MTIOCPOS - mag tape get posit    
122                                                   
123 struct  mtpos {                                   
124         long    mt_blkno;       /* current blo    
125 };                                                
126                                                   
127                                                   
128 /* mag tape io control commands */                
129 #define MTIOCTOP        _IOW('m', 1, struct mt    
130 #define MTIOCGET        _IOR('m', 2, struct mt    
131 #define MTIOCPOS        _IOR('m', 3, struct mt    
132                                                   
133                                                   
134 /* Generic Mag Tape (device independent) statu    
135  * mt_gstat -- HP-UX compatible.                  
136  * There is room for more generic status bits     
137  * know which of them are reserved. At least t    
138  * be added to make this really useful.           
139  */                                               
140 #define GMT_EOF(x)              ((x) & 0x80000    
141 #define GMT_BOT(x)              ((x) & 0x40000    
142 #define GMT_EOT(x)              ((x) & 0x20000    
143 #define GMT_SM(x)               ((x) & 0x10000    
144 #define GMT_EOD(x)              ((x) & 0x08000    
145 #define GMT_WR_PROT(x)          ((x) & 0x04000    
146 /* #define GMT_ ?               ((x) & 0x02000    
147 #define GMT_ONLINE(x)           ((x) & 0x01000    
148 #define GMT_D_6250(x)           ((x) & 0x00800    
149 #define GMT_D_1600(x)           ((x) & 0x00400    
150 #define GMT_D_800(x)            ((x) & 0x00200    
151 /* #define GMT_ ?               ((x) & 0x00100    
152 /* #define GMT_ ?               ((x) & 0x00080    
153 #define GMT_DR_OPEN(x)          ((x) & 0x00040    
154 /* #define GMT_ ?               ((x) & 0x00020    
155 #define GMT_IM_REP_EN(x)        ((x) & 0x00010    
156 #define GMT_CLN(x)              ((x) & 0x00008    
157 /* 15 generic status bits unused */               
158                                                   
159                                                   
160 /* SCSI-tape specific definitions */              
161 /* Bitfield shifts in the status  */              
162 #define MT_ST_BLKSIZE_SHIFT     0                 
163 #define MT_ST_BLKSIZE_MASK      0xffffff          
164 #define MT_ST_DENSITY_SHIFT     24                
165 #define MT_ST_DENSITY_MASK      0xff000000        
166                                                   
167 #define MT_ST_SOFTERR_SHIFT     0                 
168 #define MT_ST_SOFTERR_MASK      0xffff            
169                                                   
170 /* Bitfields for the MTSETDRVBUFFER ioctl */      
171 #define MT_ST_OPTIONS           0xf0000000        
172 #define MT_ST_BOOLEANS          0x10000000        
173 #define MT_ST_SETBOOLEANS       0x30000000        
174 #define MT_ST_CLEARBOOLEANS     0x40000000        
175 #define MT_ST_WRITE_THRESHOLD   0x20000000        
176 #define MT_ST_DEF_BLKSIZE       0x50000000        
177 #define MT_ST_DEF_OPTIONS       0x60000000        
178 #define MT_ST_TIMEOUTS          0x70000000        
179 #define MT_ST_SET_TIMEOUT       (MT_ST_TIMEOUT    
180 #define MT_ST_SET_LONG_TIMEOUT  (MT_ST_TIMEOUT    
181 #define MT_ST_SET_CLN           0x80000000        
182                                                   
183 #define MT_ST_BUFFER_WRITES     0x1               
184 #define MT_ST_ASYNC_WRITES      0x2               
185 #define MT_ST_READ_AHEAD        0x4               
186 #define MT_ST_DEBUGGING         0x8               
187 #define MT_ST_TWO_FM            0x10              
188 #define MT_ST_FAST_MTEOM        0x20              
189 #define MT_ST_AUTO_LOCK         0x40              
190 #define MT_ST_DEF_WRITES        0x80              
191 #define MT_ST_CAN_BSR           0x100             
192 #define MT_ST_NO_BLKLIMS        0x200             
193 #define MT_ST_CAN_PARTITIONS    0x400             
194 #define MT_ST_SCSI2LOGICAL      0x800             
195 #define MT_ST_SYSV              0x1000            
196 #define MT_ST_NOWAIT            0x2000            
197 #define MT_ST_SILI              0x4000            
198 #define MT_ST_NOWAIT_EOF        0x8000            
199                                                   
200 /* The mode parameters to be controlled. Param    
201 #define MT_ST_CLEAR_DEFAULT     0xfffff           
202 #define MT_ST_DEF_DENSITY       (MT_ST_DEF_OPT    
203 #define MT_ST_DEF_COMPRESSION   (MT_ST_DEF_OPT    
204 #define MT_ST_DEF_DRVBUFFER     (MT_ST_DEF_OPT    
205                                                   
206 /* The offset for the arguments for the specia    
207 #define MT_ST_HPLOADER_OFFSET 10000               
208                                                   
209 #endif /* _LINUX_MTIO_H */                        
210                                                   

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php