linux-old/drivers/scsi/eata_dma_proc.h
<<
>>
Prefs
   1
   2struct lun_map {
   3    __u8   id:5,
   4     chan:3;
   5    __u8 lun;
   6};
   7
   8typedef struct emul_pp {
   9    __u8 p_code:6,
  10       null:1,
  11     p_save:1;
  12    __u8 p_length;
  13    __u16 cylinder;
  14    __u8 heads;
  15    __u8 sectors;
  16    __u8 null2;
  17    __u8 s_lunmap:4,
  18          ems:1;
  19    __u16 drive_type;   /* In Little Endian ! */
  20    struct lun_map lunmap[4];
  21}emulpp;
  22
  23
  24/* Log Sense pages */
  25
  26typedef struct log_sheader {
  27    __u8 page_code,
  28     reserved;
  29    __u16 length;
  30}logsh;
  31
  32
  33/* Log Sense Statistics */
  34
  35typedef struct read_command_statistics {
  36    __u16 code;        /* 0x01 */
  37    __u8  flags;
  38    __u8  length;      /* 0x24 */
  39    __u32 h_commands,
  40      uncached,
  41      la_cmds,
  42      la_blks,
  43      la_hits,
  44      missed,
  45      hits,
  46      seq_la_blks,
  47      seq_la_hits;
  48}r_cmd_stat;
  49
  50typedef struct write_command_statistics {
  51    __u16 code;        /* 0x03 */
  52    __u8  flags;
  53    __u8  length;      /* 0x28 */
  54    __u32 h_commands,
  55      uncached,
  56      thru,
  57      bypass,
  58      soft_err,
  59      hits,
  60      b_idle,
  61      b_activ,
  62      b_blks,
  63      b_blks_clean;
  64}w_cmd_stat;
  65
  66typedef struct host_command_statistics {
  67    __u16 code;          /* 0x02, 0x04 */
  68    __u8  flags;
  69    __u8  length;        /* 0x30 */
  70    __u32 sizes[12];
  71}hst_cmd_stat;
  72
  73typedef struct physical_command_statistics {
  74    __u16 code;          /* 0x06, 0x07 */ 
  75    __u8  flags;
  76    __u8  length;        /* 0x34 */
  77    __u32 sizes[13]; 
  78}phy_cmd_stat;
  79
  80typedef struct misc_device_statistics {
  81    __u16 code;           /* 0x05 */
  82    __u8  flags;
  83    __u8  length;         /* 0x10 */
  84    __u32 disconnect,
  85      pass_thru,
  86      sg_commands,
  87      stripe_boundary_crosses;
  88}msc_stats;
  89 
  90/* Configuration Pages */
  91
  92typedef struct controller_configuration {
  93    __u16 code;           /* 0x01 */
  94    __u8  flags;
  95    __u8  length;         /* 0x02 */
  96    __u8  intt:1,
  97       sec:1,
  98       csh:1,
  99       key:1,
 100       tmr:1,
 101       srs:1,
 102       nvr:1;
 103    __u8  interrupt;
 104}coco;
 105
 106typedef struct controller_hardware_errors {
 107    __u16 code;           /* 0x02 */
 108    __u8  flags;
 109    __u8  length;         /* 0x02 */
 110    __u8  unused:1,
 111         per:1;
 112    __u8  interrupt;
 113}coher;
 114
 115typedef struct memory_map {
 116    __u16 code;           /* 0x03, 0x04 */
 117    __u8  flags;
 118    __u8  length;         /* 0x04 */
 119    __u32 memory_map;
 120}mema;
 121
 122typedef struct scsi_transfer {
 123    __u16 code;           /* 0x05 */
 124    __u8  flags;
 125    __u8  length;         /* 0x04 */
 126    __u8  offset,
 127      period;
 128    __u16 speed;
 129}scsitrans;
 130
 131typedef struct scsi_modes {
 132    __u16 code;           /* 0x06 */
 133    __u8  flags;
 134    __u8  length;         /* 0x02 */
 135    __u8  que:1,
 136     cdis:1,
 137     wtru:1,
 138     dasd:1,
 139      ncr:1,
 140     awre:1;
 141    __u8  reserved;
 142}scsimod;
 143
 144typedef struct host_bus {
 145    __u16 code;           /* 0x07 */
 146    __u8  flags;
 147    __u8  length;         /* 0x02 */
 148    __u8  speed:6,
 149        pci:1,
 150       eisa:1;
 151    __u8  reserved;
 152}hobu;
 153
 154typedef struct scsi_bus {
 155    __u16 code;           /* 0x08 */
 156    __u8  flags;
 157    __u8  length;         /* 0x02 */
 158    __u8  speed:4,
 159        res:1,
 160        ext:1,
 161       wide:1,
 162        dif:1;
 163    __u8 busnum;
 164}scbu;
 165
 166typedef struct board_type {
 167    __u16 code;           /* 0x09 */
 168    __u8  flags;
 169    __u8  length;         /* 0x04 */
 170    __u8  unused:1,
 171         cmi:1,
 172         dmi:1,
 173        cm4k:1,
 174         cm4:1,
 175        dm4k:1,
 176         dm4:1,
 177         hba:1;
 178    __u8  cpu_type,
 179      cpu_speed;
 180    __u8    sx1:1,
 181        sx2:1,
 182    unused2:4,
 183       alrm:1,
 184       srom:1;
 185}boty;
 186
 187typedef struct memory_config {
 188    __u16 code;           /* 0x0a */
 189    __u8  flags;
 190    __u8  length;         /* 0x04 */
 191    __u8  banksize[4];
 192}memco;
 193
 194typedef struct firmware_info {
 195    __u16 code;           /* 0x0b */
 196    __u8  flags;
 197    __u8  length;         /* 0x04 */
 198    __u8  dnld:1,
 199     bs528:1,
 200       fmt:1,
 201     fw528:1;
 202    __u8  unused1,
 203      fw_type,
 204      unused;
 205}firm;
 206
 207typedef struct subsystem_info {
 208    __u16 code;           /* 0x0c */
 209    __u8  flags;
 210    __u8  length;         /* 0x02 */
 211    __u8  shlf:1,
 212      swap:1,
 213      noss:1;
 214    __u8  reserved;
 215}subinf;
 216
 217typedef struct per_channel_info {
 218    __u16 code;           /* 0x0d */
 219    __u8  flags;
 220    __u8  length;         /* 0x02 */
 221    __u8  channel;
 222    __u8  shlf:1,
 223      swap:1,
 224      noss:1,
 225       srs:1,
 226       que:1,
 227       ext:1,
 228      wide:1,
 229      diff:1;
 230}pcinf;
 231
 232typedef struct array_limits {
 233    __u16 code;           /* 0x0e */
 234    __u8  flags;
 235    __u8  length;         /* 0x04 */
 236    __u8  max_groups,
 237      raid0_drv,
 238      raid35_drv,
 239      unused;
 240}arrlim;
 241
 242/*
 243 * Overrides for Emacs so that we follow Linus's tabbing style.
 244 * Emacs will notice this stuff at the end of the file and automatically
 245 * adjust the settings for this buffer only.  This must remain at the end
 246 * of the file.
 247 * ---------------------------------------------------------------------------
 248 * Local variables:
 249 * c-indent-level: 4
 250 * c-brace-imaginary-offset: 0
 251 * c-brace-offset: -4
 252 * c-argdecl-indent: 4
 253 * c-label-offset: -4
 254 * c-continued-statement-offset: 4
 255 * c-continued-brace-offset: 0
 256 * indent-tabs-mode: nil
 257 * tab-width: 8
 258 * End:
 259 */
 260
 261
lxr.linux.no kindly hosted by Redpill Linpro AS, provider of Linux consulting and operations services since 1995.