aboutsummaryrefslogtreecommitdiffstats
path: root/include/uapi/linux
diff options
context:
space:
mode:
authorDimitri John Ledkov <dimitri.ledkov@canonical.com>2014-05-07 15:55:30 -0400
committerMatthew Wilcox <matthew.r.wilcox@intel.com>2014-05-09 18:50:53 -0400
commitf2727f7eb9132803d06309839a95de3dad82d237 (patch)
tree3292a70af5dc1e79ae7c3a02f4585dd478a3a521 /include/uapi/linux
parent53562be74bd06bbe74d2acf3caca5398f8eeb160 (diff)
NVMe: Update namespace and controller identify structures to the 1.1a spec
Controller: add CNTLID, AVSCC, APSTA, NVSCC, ACWU, SGLS fields. Namespace: add NMIC, RESCAP, EUI64 fields. EUI64 is specifically interesting, since it can be used to construct an UEFI NVMe device path for a boot entry. As per NVM Express 1.1a spec: http://www.nvmexpress.org/wp-content/uploads/NVM-Express-1_1a.pdf Signed-off-by: Dimitri John Ledkov <dimitri.ledkov@canonical.com> Signed-off-by: Matthew Wilcox <matthew.r.wilcox@intel.com>
Diffstat (limited to 'include/uapi/linux')
-rw-r--r--include/uapi/linux/nvme.h19
1 files changed, 15 insertions, 4 deletions
diff --git a/include/uapi/linux/nvme.h b/include/uapi/linux/nvme.h
index f090336d5bad..e74da782d69c 100644
--- a/include/uapi/linux/nvme.h
+++ b/include/uapi/linux/nvme.h
@@ -45,7 +45,8 @@ struct nvme_id_ctrl {
45 __u8 ieee[3]; 45 __u8 ieee[3];
46 __u8 mic; 46 __u8 mic;
47 __u8 mdts; 47 __u8 mdts;
48 __u8 rsvd78[178]; 48 __u16 cntlid;
49 __u8 rsvd80[176];
49 __le16 oacs; 50 __le16 oacs;
50 __u8 acl; 51 __u8 acl;
51 __u8 aerl; 52 __u8 aerl;
@@ -53,7 +54,9 @@ struct nvme_id_ctrl {
53 __u8 lpa; 54 __u8 lpa;
54 __u8 elpe; 55 __u8 elpe;
55 __u8 npss; 56 __u8 npss;
56 __u8 rsvd264[248]; 57 __u8 avscc;
58 __u8 apsta;
59 __u8 rsvd266[246];
57 __u8 sqes; 60 __u8 sqes;
58 __u8 cqes; 61 __u8 cqes;
59 __u8 rsvd514[2]; 62 __u8 rsvd514[2];
@@ -64,7 +67,12 @@ struct nvme_id_ctrl {
64 __u8 vwc; 67 __u8 vwc;
65 __le16 awun; 68 __le16 awun;
66 __le16 awupf; 69 __le16 awupf;
67 __u8 rsvd530[1518]; 70 __u8 nvscc;
71 __u8 rsvd531;
72 __le16 acwu;
73 __u8 rsvd534[2];
74 __le32 sgls;
75 __u8 rsvd540[1508];
68 struct nvme_id_power_state psd[32]; 76 struct nvme_id_power_state psd[32];
69 __u8 vs[1024]; 77 __u8 vs[1024];
70}; 78};
@@ -92,7 +100,10 @@ struct nvme_id_ns {
92 __u8 mc; 100 __u8 mc;
93 __u8 dpc; 101 __u8 dpc;
94 __u8 dps; 102 __u8 dps;
95 __u8 rsvd30[98]; 103 __u8 nmic;
104 __u8 rescap;
105 __u8 rsvd32[88];
106 __u8 eui64[8];
96 struct nvme_lbaf lbaf[16]; 107 struct nvme_lbaf lbaf[16];
97 __u8 rsvd192[192]; 108 __u8 rsvd192[192];
98 __u8 vs[3712]; 109 __u8 vs[3712];