linux/drivers/s390/block/dasd_fba.h
<<
>>
Prefs
   1/*
   2 * File...........: linux/drivers/s390/block/dasd_fba.h
   3 * Author(s)......: Holger Smolinski <Holger.Smolinski@de.ibm.com>
   4 * Bugreports.to..: <Linux390@de.ibm.com>
   5 * (C) IBM Corporation, IBM Deutschland Entwicklung GmbH, 1999,2000
   6 *
   7 */
   8
   9#ifndef DASD_FBA_H
  10#define DASD_FBA_H
  11
  12struct DE_fba_data {
  13        struct {
  14                unsigned char perm:2;   /* Permissions on this extent */
  15                unsigned char zero:2;   /* Must be zero */
  16                unsigned char da:1;     /* usually zero */
  17                unsigned char diag:1;   /* allow diagnose */
  18                unsigned char zero2:2;  /* zero */
  19        } __attribute__ ((packed)) mask;
  20        __u8 zero;              /* Must be zero */
  21        __u16 blk_size;         /* Blocksize */
  22        __u32 ext_loc;          /* Extent locator */
  23        __u32 ext_beg;          /* logical number of block 0 in extent */
  24        __u32 ext_end;          /* logocal number of last block in extent */
  25} __attribute__ ((packed));
  26
  27struct LO_fba_data {
  28        struct {
  29                unsigned char zero:4;
  30                unsigned char cmd:4;
  31        } __attribute__ ((packed)) operation;
  32        __u8 auxiliary;
  33        __u16 blk_ct;
  34        __u32 blk_nr;
  35} __attribute__ ((packed));
  36
  37struct dasd_fba_characteristics {
  38        union {
  39                __u8 c;
  40                struct {
  41                        unsigned char reserved:1;
  42                        unsigned char overrunnable:1;
  43                        unsigned char burst_byte:1;
  44                        unsigned char data_chain:1;
  45                        unsigned char zeros:4;
  46                } __attribute__ ((packed)) bits;
  47        } __attribute__ ((packed)) mode;
  48        union {
  49                __u8 c;
  50                struct {
  51                        unsigned char zero0:1;
  52                        unsigned char removable:1;
  53                        unsigned char shared:1;
  54                        unsigned char zero1:1;
  55                        unsigned char mam:1;
  56                        unsigned char zeros:3;
  57                } __attribute__ ((packed)) bits;
  58        } __attribute__ ((packed)) features;
  59        __u8 dev_class;
  60        __u8 unit_type;
  61        __u16 blk_size;
  62        __u32 blk_per_cycl;
  63        __u32 blk_per_bound;
  64        __u32 blk_bdsa;
  65        __u32 reserved0;
  66        __u16 reserved1;
  67        __u16 blk_ce;
  68        __u32 reserved2;
  69        __u16 reserved3;
  70} __attribute__ ((packed));
  71
  72#endif                          /* DASD_FBA_H */
  73