linux-old/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 *                  Horst Hummel <Horst.Hummel@de.ibm.com> 
   5 * Bugreports.to..: <Linux390@de.ibm.com>
   6 * (C) IBM Corporation, IBM Deutschland Entwicklung GmbH, 1999,2000
   7 *
   8 * $Revision: 1.6 $
   9 *
  10 * History of changes
  11 *
  12 */
  13
  14#ifndef DASD_FBA_H
  15#define DASD_FBA_H
  16
  17typedef
  18    struct DE_fba_data_t {
  19        struct {
  20                unsigned char perm:2;   /* Permissions on this extent */
  21                unsigned char zero:2;   /* Must be zero */
  22                unsigned char da:1;     /* usually zero */
  23                unsigned char diag:1;   /* allow diagnose */
  24                unsigned char zero2:2;  /* zero */
  25        } __attribute__ ((packed)) mask;
  26        __u8 zero;              /* Must be zero */
  27        __u16 blk_size;         /* Blocksize */
  28        __u32 ext_loc;          /* Extent locator */
  29        __u32 ext_beg;          /* logical number of block 0 in extent */
  30        __u32 ext_end;          /* logocal number of last block in extent */
  31} __attribute__ ((packed))
  32
  33    DE_fba_data_t;
  34
  35typedef
  36    struct LO_fba_data_t {
  37        struct {
  38                unsigned char zero:4;
  39                unsigned char cmd:4;
  40        } __attribute__ ((packed)) operation;
  41        __u8 auxiliary;
  42        __u16 blk_ct;
  43        __u32 blk_nr;
  44} __attribute__ ((packed))
  45
  46    LO_fba_data_t;
  47
  48typedef
  49    struct dasd_fba_characteristics_t {
  50        union {
  51                __u8 c;
  52                struct {
  53                        unsigned char reserved:1;
  54                        unsigned char overrunnable:1;
  55                        unsigned char burst_byte:1;
  56                        unsigned char data_chain:1;
  57                        unsigned char zeros:4;
  58                } __attribute__ ((packed)) bits;
  59        } __attribute__ ((packed)) mode;
  60        union {
  61                __u8 c;
  62                struct {
  63                        unsigned char zero0:1;
  64                        unsigned char removable:1;
  65                        unsigned char shared:1;
  66                        unsigned char zero1:1;
  67                        unsigned char mam:1;
  68                        unsigned char zeros:3;
  69                } __attribute__ ((packed)) bits;
  70        } __attribute__ ((packed)) features;
  71        __u8 dev_class;
  72        __u8 unit_type;
  73        __u16 blk_size;
  74        __u32 blk_per_cycl;
  75        __u32 blk_per_bound;
  76        __u32 blk_bdsa;
  77        __u32 reserved0;
  78        __u16 reserved1;
  79        __u16 blk_ce;
  80        __u32 reserved2;
  81        __u16 reserved3;
  82} __attribute__ ((packed))
  83
  84    dasd_fba_characteristics_t;
  85
  86int dasd_fba_init (void);
  87void dasd_fba_cleanup (void);
  88#endif                          /* DASD_FBA_H */
  89
lxr.linux.no kindly hosted by Redpill Linpro AS, provider of Linux consulting and operations services since 1995.