Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
dasd_fba.h
Go to the documentation of this file.
1 /*
2  * Author(s)......: Holger Smolinski <[email protected]>
3  * Bugreports.to..: <[email protected]>
4  * Coypright IBM Corp. 1999, 2000
5  *
6  */
7 
8 #ifndef DASD_FBA_H
9 #define DASD_FBA_H
10 
11 struct DE_fba_data {
12  struct {
13  unsigned char perm:2; /* Permissions on this extent */
14  unsigned char zero:2; /* Must be zero */
15  unsigned char da:1; /* usually zero */
16  unsigned char diag:1; /* allow diagnose */
17  unsigned char zero2:2; /* zero */
18  } __attribute__ ((packed)) mask;
19  __u8 zero; /* Must be zero */
20  __u16 blk_size; /* Blocksize */
21  __u32 ext_loc; /* Extent locator */
22  __u32 ext_beg; /* logical number of block 0 in extent */
23  __u32 ext_end; /* logocal number of last block in extent */
24 } __attribute__ ((packed));
25 
27  struct {
28  unsigned char zero:4;
29  unsigned char cmd:4;
30  } __attribute__ ((packed)) operation;
34 } __attribute__ ((packed));
35 
37  union {
39  struct {
40  unsigned char reserved:1;
41  unsigned char overrunnable:1;
42  unsigned char burst_byte:1;
43  unsigned char data_chain:1;
44  unsigned char zeros:4;
45  } __attribute__ ((packed)) bits;
46  } __attribute__ ((packed)) mode;
47  union {
49  struct {
50  unsigned char zero0:1;
51  unsigned char removable:1;
52  unsigned char shared:1;
53  unsigned char zero1:1;
54  unsigned char mam:1;
55  unsigned char zeros:3;
56  } __attribute__ ((packed)) bits;
57  } __attribute__ ((packed)) features;
60  __u16 blk_size;
69 } __attribute__ ((packed));
70 
71 #endif /* DASD_FBA_H */