]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/blame - drivers/s390/block/dasd_diag.h
Merge tag 'iio-fixes-for-4.10a' of git://git.kernel.org/pub/scm/linux/kernel/git...
[mirror_ubuntu-zesty-kernel.git] / drivers / s390 / block / dasd_diag.h
CommitLineData
138c014d 1/*
1da177e4
LT
2 * Author(s)......: Holger Smolinski <Holger.Smolinski@de.ibm.com>
3 * Based on.......: linux/drivers/s390/block/mdisk.h
4 * ...............: by Hartmunt Penner <hpenner@de.ibm.com>
5 * Bugreports.to..: <Linux390@de.ibm.com>
a53c8fab 6 * Copyright IBM Corp. 1999, 2000
1da177e4 7 *
1da177e4
LT
8 */
9
10#define MDSK_WRITE_REQ 0x01
11#define MDSK_READ_REQ 0x02
12
13#define INIT_BIO 0x00
14#define RW_BIO 0x01
15#define TERM_BIO 0x02
16
17#define DEV_CLASS_FBA 0x01
18#define DEV_CLASS_ECKD 0x04
19
fd49f41a
HH
20#define DASD_DIAG_CODE_31BIT 0x03
21#define DASD_DIAG_CODE_64BIT 0x07
22
23#define DASD_DIAG_RWFLAG_ASYNC 0x02
24#define DASD_DIAG_RWFLAG_NOCACHE 0x01
25
26#define DASD_DIAG_FLAGA_FORMAT_64BIT 0x80
27
1da177e4
LT
28struct dasd_diag_characteristics {
29 u16 dev_nr;
30 u16 rdc_len;
31 u8 vdev_class;
32 u8 vdev_type;
33 u8 vdev_status;
34 u8 vdev_flags;
35 u8 rdev_class;
36 u8 rdev_type;
37 u8 rdev_model;
38 u8 rdev_features;
39} __attribute__ ((packed, aligned(4)));
40
fd49f41a
HH
41#define DASD_DIAG_FLAGA_DEFAULT DASD_DIAG_FLAGA_FORMAT_64BIT
42
43typedef u64 blocknum_t;
44typedef s64 sblocknum_t;
45
46struct dasd_diag_bio {
47 u8 type;
48 u8 status;
49 u8 spare1[2];
50 u32 alet;
51 blocknum_t block_number;
86b368a5 52 void *buffer;
fd49f41a
HH
53} __attribute__ ((packed, aligned(8)));
54
55struct dasd_diag_init_io {
56 u16 dev_nr;
57 u8 flaga;
58 u8 spare1[21];
59 u32 block_size;
60 u8 spare2[4];
61 blocknum_t offset;
62 sblocknum_t start_block;
63 blocknum_t end_block;
64 u8 spare3[8];
65} __attribute__ ((packed, aligned(8)));
66
67struct dasd_diag_rw_io {
68 u16 dev_nr;
69 u8 flaga;
70 u8 spare1[21];
71 u8 key;
72 u8 flags;
73 u8 spare2[2];
74 u32 block_count;
75 u32 alet;
76 u8 spare3[4];
77 u64 interrupt_params;
86b368a5 78 struct dasd_diag_bio *bio_list;
fd49f41a
HH
79 u8 spare4[8];
80} __attribute__ ((packed, aligned(8)));