aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/nvme.h
diff options
context:
space:
mode:
authorMatthew Wilcox <matthew.r.wilcox@intel.com>2011-01-26 10:01:21 -0500
committerMatthew Wilcox <matthew.r.wilcox@intel.com>2011-11-04 15:52:52 -0400
commit7b4fe9b1cb4b9a6f4ae23a12ef96d08d96e2a5da (patch)
treec5e89185b80fe59e2b66a5425816cfa5d430170c /include/linux/nvme.h
parent36c14ed9caa957c686d4a48fd598a5ec2aa0331b (diff)
NVMe: Make nvme_common_command more featureful
Add prp1, prp2 and the metadata prp to the common command, since the fields are generally used this way. Signed-off-by: Matthew Wilcox <matthew.r.wilcox@intel.com>
Diffstat (limited to 'include/linux/nvme.h')
-rw-r--r--include/linux/nvme.h20
1 files changed, 12 insertions, 8 deletions
diff --git a/include/linux/nvme.h b/include/linux/nvme.h
index 9ba53584f722..1c0b5ef08959 100644
--- a/include/linux/nvme.h
+++ b/include/linux/nvme.h
@@ -142,6 +142,18 @@ enum nvme_opcode {
142 nvme_cmd_dsm = 0x09, 142 nvme_cmd_dsm = 0x09,
143}; 143};
144 144
145struct nvme_common_command {
146 __u8 opcode;
147 __u8 flags;
148 __u16 command_id;
149 __le32 nsid;
150 __u64 rsvd2;
151 __le64 metadata;
152 __le64 prp1;
153 __le64 prp2;
154 __u32 rsvd10[6];
155};
156
145struct nvme_rw_command { 157struct nvme_rw_command {
146 __u8 opcode; 158 __u8 opcode;
147 __u8 flags; 159 __u8 flags;
@@ -284,14 +296,6 @@ struct nvme_delete_queue {
284 __le32 rsvd11[5]; 296 __le32 rsvd11[5];
285}; 297};
286 298
287struct nvme_common_command {
288 __u8 opcode;
289 __u8 flags;
290 __u16 command_id;
291 __le32 nsid;
292 __u32 rsvd2[14];
293};
294
295struct nvme_command { 299struct nvme_command {
296 union { 300 union {
297 struct nvme_common_command common; 301 struct nvme_common_command common;