aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/linux/nvme.h2
-rw-r--r--include/uapi/linux/nvme.h16
2 files changed, 18 insertions, 0 deletions
diff --git a/include/linux/nvme.h b/include/linux/nvme.h
index 19a5d4b23209..cca264db2478 100644
--- a/include/linux/nvme.h
+++ b/include/linux/nvme.h
@@ -121,6 +121,7 @@ struct nvme_ns {
121 unsigned ns_id; 121 unsigned ns_id;
122 int lba_shift; 122 int lba_shift;
123 int ms; 123 int ms;
124 int pi_type;
124 u64 mode_select_num_blocks; 125 u64 mode_select_num_blocks;
125 u32 mode_select_block_len; 126 u32 mode_select_block_len;
126}; 127};
@@ -138,6 +139,7 @@ struct nvme_iod {
138 int nents; /* Used in scatterlist */ 139 int nents; /* Used in scatterlist */
139 int length; /* Of data, in bytes */ 140 int length; /* Of data, in bytes */
140 dma_addr_t first_dma; 141 dma_addr_t first_dma;
142 struct scatterlist meta_sg[1]; /* metadata requires single contiguous buffer */
141 struct scatterlist sg[0]; 143 struct scatterlist sg[0];
142}; 144};
143 145
diff --git a/include/uapi/linux/nvme.h b/include/uapi/linux/nvme.h
index 26386cf3db44..406bfc95652c 100644
--- a/include/uapi/linux/nvme.h
+++ b/include/uapi/linux/nvme.h
@@ -124,10 +124,22 @@ struct nvme_id_ns {
124 124
125enum { 125enum {
126 NVME_NS_FEAT_THIN = 1 << 0, 126 NVME_NS_FEAT_THIN = 1 << 0,
127 NVME_NS_FLBAS_LBA_MASK = 0xf,
128 NVME_NS_FLBAS_META_EXT = 0x10,
127 NVME_LBAF_RP_BEST = 0, 129 NVME_LBAF_RP_BEST = 0,
128 NVME_LBAF_RP_BETTER = 1, 130 NVME_LBAF_RP_BETTER = 1,
129 NVME_LBAF_RP_GOOD = 2, 131 NVME_LBAF_RP_GOOD = 2,
130 NVME_LBAF_RP_DEGRADED = 3, 132 NVME_LBAF_RP_DEGRADED = 3,
133 NVME_NS_DPC_PI_LAST = 1 << 4,
134 NVME_NS_DPC_PI_FIRST = 1 << 3,
135 NVME_NS_DPC_PI_TYPE3 = 1 << 2,
136 NVME_NS_DPC_PI_TYPE2 = 1 << 1,
137 NVME_NS_DPC_PI_TYPE1 = 1 << 0,
138 NVME_NS_DPS_PI_FIRST = 1 << 3,
139 NVME_NS_DPS_PI_MASK = 0x7,
140 NVME_NS_DPS_PI_TYPE1 = 1,
141 NVME_NS_DPS_PI_TYPE2 = 2,
142 NVME_NS_DPS_PI_TYPE3 = 3,
131}; 143};
132 144
133struct nvme_smart_log { 145struct nvme_smart_log {
@@ -261,6 +273,10 @@ enum {
261 NVME_RW_DSM_LATENCY_LOW = 3 << 4, 273 NVME_RW_DSM_LATENCY_LOW = 3 << 4,
262 NVME_RW_DSM_SEQ_REQ = 1 << 6, 274 NVME_RW_DSM_SEQ_REQ = 1 << 6,
263 NVME_RW_DSM_COMPRESSED = 1 << 7, 275 NVME_RW_DSM_COMPRESSED = 1 << 7,
276 NVME_RW_PRINFO_PRCHK_REF = 1 << 10,
277 NVME_RW_PRINFO_PRCHK_APP = 1 << 11,
278 NVME_RW_PRINFO_PRCHK_GUARD = 1 << 12,
279 NVME_RW_PRINFO_PRACT = 1 << 13,
264}; 280};
265 281
266struct nvme_dsm_cmd { 282struct nvme_dsm_cmd {