History

libnvdimm: New ACPI 6.2 DSM functions

ACPI 6.2 added new NVDIMM root DSM functions. Define their data structures.

Jerry Hoemann committed 9 years ago

Commit 759d6a91 parent 41f95db1 file · +39 −1Browse files

Showing the changes to include/uapi/linux (1 of 1 file). Show all

Unified · Split

include/uapi/linux/ndctl.h+39−1
@@ -105,7 +105,8 @@ struct nd_cmd_ars_cap { · 104 unmodified lines
105 __u32 status;105 __u32 status;
106 __u32 max_ars_out;106 __u32 max_ars_out;
107 __u32 clear_err_unit;107 __u32 clear_err_unit;
108 __u32 reserved;108 __u16 flags;
109 __u16 reserved;
109} __packed;110} __packed;
110 111
111struct nd_cmd_ars_start {112struct nd_cmd_ars_start {
@@ -144,6 +145,43 @@ struct nd_cmd_clear_error { · 32 unmodified lines
144 __u64 cleared;145 __u64 cleared;
145} __packed;146} __packed;
146 147
148struct nd_cmd_trans_spa {
149 __u64 spa;
150 __u32 status;
151 __u8 flags;
152 __u8 _reserved[3];
153 __u64 trans_length;
154 __u32 num_nvdimms;
155 struct nd_nvdimm_device {
156 __u32 nfit_device_handle;
157 __u32 _reserved;
158 __u64 dpa;
159 } __packed devices[0];
160
161} __packed;
162
163struct nd_cmd_ars_err_inj {
164 __u64 err_inj_spa_range_base;
165 __u64 err_inj_spa_range_length;
166 __u8 err_inj_options;
167 __u32 status;
168} __packed;
169
170struct nd_cmd_ars_err_inj_clr {
171 __u64 err_inj_clr_spa_range_base;
172 __u64 err_inj_clr_spa_range_length;
173 __u32 status;
174} __packed;
175
176struct nd_cmd_ars_err_inj_stat {
177 __u32 status;
178 __u32 inj_err_rec_count;
179 struct nd_error_stat_query_record {
180 __u64 err_inj_stat_spa_range_base;
181 __u64 err_inj_stat_spa_range_length;
182 } __packed record[0];
183} __packed;
184
147enum {185enum {
148 ND_CMD_IMPLEMENTED = 0,186 ND_CMD_IMPLEMENTED = 0,
149 187