diff options
author | Jens Axboe <axboe@fb.com> | 2015-02-21 01:12:02 -0500 |
---|---|---|
committer | Jens Axboe <axboe@fb.com> | 2015-02-21 01:12:02 -0500 |
commit | decf6d79de84e427d409ff74156af2e77ffadd84 (patch) | |
tree | 45801481c596ecd0b05c719025e29fa028aaceee /include/uapi | |
parent | 045c47ca306acf30c740c285a77a4b4bda6be7c5 (diff) | |
parent | 0c0f9b95c8b710b74772edd9693fe7ab5419a75a (diff) |
Merge branch 'for-3.20' of git://git.infradead.org/users/kbusch/linux-nvme into for-linus
Merge 3.20 NVMe changes from Keith.
Diffstat (limited to 'include/uapi')
-rw-r--r-- | include/uapi/linux/nvme.h | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/include/uapi/linux/nvme.h b/include/uapi/linux/nvme.h index 26386cf3db44..aef9a81b2d75 100644 --- a/include/uapi/linux/nvme.h +++ b/include/uapi/linux/nvme.h | |||
@@ -115,7 +115,13 @@ struct nvme_id_ns { | |||
115 | __le16 nawun; | 115 | __le16 nawun; |
116 | __le16 nawupf; | 116 | __le16 nawupf; |
117 | __le16 nacwu; | 117 | __le16 nacwu; |
118 | __u8 rsvd40[80]; | 118 | __le16 nabsn; |
119 | __le16 nabo; | ||
120 | __le16 nabspf; | ||
121 | __u16 rsvd46; | ||
122 | __le64 nvmcap[2]; | ||
123 | __u8 rsvd64[40]; | ||
124 | __u8 nguid[16]; | ||
119 | __u8 eui64[8]; | 125 | __u8 eui64[8]; |
120 | struct nvme_lbaf lbaf[16]; | 126 | struct nvme_lbaf lbaf[16]; |
121 | __u8 rsvd192[192]; | 127 | __u8 rsvd192[192]; |
@@ -124,10 +130,22 @@ struct nvme_id_ns { | |||
124 | 130 | ||
125 | enum { | 131 | enum { |
126 | NVME_NS_FEAT_THIN = 1 << 0, | 132 | NVME_NS_FEAT_THIN = 1 << 0, |
133 | NVME_NS_FLBAS_LBA_MASK = 0xf, | ||
134 | NVME_NS_FLBAS_META_EXT = 0x10, | ||
127 | NVME_LBAF_RP_BEST = 0, | 135 | NVME_LBAF_RP_BEST = 0, |
128 | NVME_LBAF_RP_BETTER = 1, | 136 | NVME_LBAF_RP_BETTER = 1, |
129 | NVME_LBAF_RP_GOOD = 2, | 137 | NVME_LBAF_RP_GOOD = 2, |
130 | NVME_LBAF_RP_DEGRADED = 3, | 138 | NVME_LBAF_RP_DEGRADED = 3, |
139 | NVME_NS_DPC_PI_LAST = 1 << 4, | ||
140 | NVME_NS_DPC_PI_FIRST = 1 << 3, | ||
141 | NVME_NS_DPC_PI_TYPE3 = 1 << 2, | ||
142 | NVME_NS_DPC_PI_TYPE2 = 1 << 1, | ||
143 | NVME_NS_DPC_PI_TYPE1 = 1 << 0, | ||
144 | NVME_NS_DPS_PI_FIRST = 1 << 3, | ||
145 | NVME_NS_DPS_PI_MASK = 0x7, | ||
146 | NVME_NS_DPS_PI_TYPE1 = 1, | ||
147 | NVME_NS_DPS_PI_TYPE2 = 2, | ||
148 | NVME_NS_DPS_PI_TYPE3 = 3, | ||
131 | }; | 149 | }; |
132 | 150 | ||
133 | struct nvme_smart_log { | 151 | struct nvme_smart_log { |
@@ -261,6 +279,10 @@ enum { | |||
261 | NVME_RW_DSM_LATENCY_LOW = 3 << 4, | 279 | NVME_RW_DSM_LATENCY_LOW = 3 << 4, |
262 | NVME_RW_DSM_SEQ_REQ = 1 << 6, | 280 | NVME_RW_DSM_SEQ_REQ = 1 << 6, |
263 | NVME_RW_DSM_COMPRESSED = 1 << 7, | 281 | NVME_RW_DSM_COMPRESSED = 1 << 7, |
282 | NVME_RW_PRINFO_PRCHK_REF = 1 << 10, | ||
283 | NVME_RW_PRINFO_PRCHK_APP = 1 << 11, | ||
284 | NVME_RW_PRINFO_PRCHK_GUARD = 1 << 12, | ||
285 | NVME_RW_PRINFO_PRACT = 1 << 13, | ||
264 | }; | 286 | }; |
265 | 287 | ||
266 | struct nvme_dsm_cmd { | 288 | struct nvme_dsm_cmd { |
@@ -549,6 +571,8 @@ struct nvme_passthru_cmd { | |||
549 | __u32 result; | 571 | __u32 result; |
550 | }; | 572 | }; |
551 | 573 | ||
574 | #define NVME_VS(major, minor) (((major) << 16) | ((minor) << 8)) | ||
575 | |||
552 | #define nvme_admin_cmd nvme_passthru_cmd | 576 | #define nvme_admin_cmd nvme_passthru_cmd |
553 | 577 | ||
554 | #define NVME_IOCTL_ID _IO('N', 0x40) | 578 | #define NVME_IOCTL_ID _IO('N', 0x40) |