]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blob - drivers/s390/block/dasd_diag.h
Linux-2.6.12-rc2
[mirror_ubuntu-artful-kernel.git] / drivers / s390 / block / dasd_diag.h
1 /*
2 * File...........: linux/drivers/s390/block/dasd_diag.h
3 * Author(s)......: Holger Smolinski <Holger.Smolinski@de.ibm.com>
4 * Based on.......: linux/drivers/s390/block/mdisk.h
5 * ...............: by Hartmunt Penner <hpenner@de.ibm.com>
6 * Bugreports.to..: <Linux390@de.ibm.com>
7 * (C) IBM Corporation, IBM Deutschland Entwicklung GmbH, 1999,2000
8 *
9 * $Revision: 1.6 $
10 */
11
12 #define MDSK_WRITE_REQ 0x01
13 #define MDSK_READ_REQ 0x02
14
15 #define INIT_BIO 0x00
16 #define RW_BIO 0x01
17 #define TERM_BIO 0x02
18
19 #define DEV_CLASS_FBA 0x01
20 #define DEV_CLASS_ECKD 0x04
21
22 struct dasd_diag_characteristics {
23 u16 dev_nr;
24 u16 rdc_len;
25 u8 vdev_class;
26 u8 vdev_type;
27 u8 vdev_status;
28 u8 vdev_flags;
29 u8 rdev_class;
30 u8 rdev_type;
31 u8 rdev_model;
32 u8 rdev_features;
33 } __attribute__ ((packed, aligned(4)));
34
35 struct dasd_diag_bio {
36 u8 type;
37 u8 status;
38 u16 spare1;
39 u32 block_number;
40 u32 alet;
41 u32 buffer;
42 } __attribute__ ((packed, aligned(8)));
43
44 struct dasd_diag_init_io {
45 u16 dev_nr;
46 u16 spare1[11];
47 u32 block_size;
48 u32 offset;
49 u32 start_block;
50 u32 end_block;
51 u32 spare2[6];
52 } __attribute__ ((packed, aligned(8)));
53
54 struct dasd_diag_rw_io {
55 u16 dev_nr;
56 u16 spare1[11];
57 u8 key;
58 u8 flags;
59 u16 spare2;
60 u32 block_count;
61 u32 alet;
62 u32 bio_list;
63 u32 interrupt_params;
64 u32 spare3[5];
65 } __attribute__ ((packed, aligned(8)));
66