All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jerry Hoemann <jerry.hoemann@hpe.com>
To: dan.j.williams@intel.com
Cc: linux-kernel@vger.kernel.org, linux-nvdimm@lists.01.org
Subject: [PATCH v2 6/7] libnvdimm: New ACPI 6.2 DSM functions
Date: Tue, 20 Jun 2017 10:51:25 -0600	[thread overview]
Message-ID: <1f95797092f647a92ee382e80b9b739b18518ee3.1497939166.git.jerry.hoemann@hpe.com> (raw)
In-Reply-To: <cover.1497939166.git.jerry.hoemann@hpe.com>
In-Reply-To: <cover.1497939166.git.jerry.hoemann@hpe.com>

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

Update the definition of nd_cmd_ars_cap to match the 6.2 spec.

Add the new 6.2 functions names to nvdimm_bus_cmd_name.

Signed-off-by: Jerry Hoemann <jerry.hoemann@hpe.com>
---
 include/uapi/linux/ndctl.h | 40 +++++++++++++++++++++++++++++++++++++++-
 1 file changed, 39 insertions(+), 1 deletion(-)

diff --git a/include/uapi/linux/ndctl.h b/include/uapi/linux/ndctl.h
index e23c37f..e15768f 100644
--- a/include/uapi/linux/ndctl.h
+++ b/include/uapi/linux/ndctl.h
@@ -105,7 +105,8 @@ struct nd_cmd_ars_cap {
 	__u32 status;
 	__u32 max_ars_out;
 	__u32 clear_err_unit;
-	__u32 reserved;
+	__u16 flags;
+	__u16 reserved;
 } __packed;
 
 struct nd_cmd_ars_start {
@@ -144,6 +145,43 @@ struct nd_cmd_clear_error {
 	__u64 cleared;
 } __packed;
 
+struct nd_cmd_trans_spa {
+	__u64 spa;
+	__u32 status;
+	__u8  flags;
+	__u8  _reserved[3];
+	__u64 trans_length;
+	__u32 num_nvdimms;
+	struct nd_nvdimm_device {
+		__u32 nfit_device_handle;
+		__u32 _reserved;
+		__u64 dpa;
+	} __packed devices[0];
+
+} __packed;
+
+struct nd_cmd_ars_err_inj {
+	__u64 err_inj_spa_range_base;
+	__u64 err_inj_spa_range_length;
+	__u8  err_inj_options;
+	__u32 status;
+} __packed;
+
+struct nd_cmd_ars_err_inj_clr {
+	__u64 err_inj_clr_spa_range_base;
+	__u64 err_inj_clr_spa_range_length;
+	__u32 status;
+} __packed;
+
+struct nd_cmd_ars_err_inj_stat {
+	__u32 status;
+	__u32 inj_err_rec_count;
+	struct nd_error_stat_query_record {
+		__u64 err_inj_stat_spa_range_base;
+		__u64 err_inj_stat_spa_range_length;
+	} __packed record[0];
+} __packed;
+
 enum {
 	ND_CMD_IMPLEMENTED = 0,
 
-- 
1.8.5.6

_______________________________________________
Linux-nvdimm mailing list
Linux-nvdimm@lists.01.org
https://lists.01.org/mailman/listinfo/linux-nvdimm

WARNING: multiple messages have this Message-ID (diff)
From: Jerry Hoemann <jerry.hoemann@hpe.com>
To: dan.j.williams@intel.com
Cc: linux-nvdimm@lists.01.org, linux-kernel@vger.kernel.org,
	Jerry Hoemann <jerry.hoemann@hpe.com>
Subject: [PATCH v2 6/7] libnvdimm: New ACPI 6.2 DSM functions
Date: Tue, 20 Jun 2017 10:51:25 -0600	[thread overview]
Message-ID: <1f95797092f647a92ee382e80b9b739b18518ee3.1497939166.git.jerry.hoemann@hpe.com> (raw)
In-Reply-To: <cover.1497939166.git.jerry.hoemann@hpe.com>
In-Reply-To: <cover.1497939166.git.jerry.hoemann@hpe.com>

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

Update the definition of nd_cmd_ars_cap to match the 6.2 spec.

Add the new 6.2 functions names to nvdimm_bus_cmd_name.

Signed-off-by: Jerry Hoemann <jerry.hoemann@hpe.com>
---
 include/uapi/linux/ndctl.h | 40 +++++++++++++++++++++++++++++++++++++++-
 1 file changed, 39 insertions(+), 1 deletion(-)

diff --git a/include/uapi/linux/ndctl.h b/include/uapi/linux/ndctl.h
index e23c37f..e15768f 100644
--- a/include/uapi/linux/ndctl.h
+++ b/include/uapi/linux/ndctl.h
@@ -105,7 +105,8 @@ struct nd_cmd_ars_cap {
 	__u32 status;
 	__u32 max_ars_out;
 	__u32 clear_err_unit;
-	__u32 reserved;
+	__u16 flags;
+	__u16 reserved;
 } __packed;
 
 struct nd_cmd_ars_start {
@@ -144,6 +145,43 @@ struct nd_cmd_clear_error {
 	__u64 cleared;
 } __packed;
 
+struct nd_cmd_trans_spa {
+	__u64 spa;
+	__u32 status;
+	__u8  flags;
+	__u8  _reserved[3];
+	__u64 trans_length;
+	__u32 num_nvdimms;
+	struct nd_nvdimm_device {
+		__u32 nfit_device_handle;
+		__u32 _reserved;
+		__u64 dpa;
+	} __packed devices[0];
+
+} __packed;
+
+struct nd_cmd_ars_err_inj {
+	__u64 err_inj_spa_range_base;
+	__u64 err_inj_spa_range_length;
+	__u8  err_inj_options;
+	__u32 status;
+} __packed;
+
+struct nd_cmd_ars_err_inj_clr {
+	__u64 err_inj_clr_spa_range_base;
+	__u64 err_inj_clr_spa_range_length;
+	__u32 status;
+} __packed;
+
+struct nd_cmd_ars_err_inj_stat {
+	__u32 status;
+	__u32 inj_err_rec_count;
+	struct nd_error_stat_query_record {
+		__u64 err_inj_stat_spa_range_base;
+		__u64 err_inj_stat_spa_range_length;
+	} __packed record[0];
+} __packed;
+
 enum {
 	ND_CMD_IMPLEMENTED = 0,
 
-- 
1.8.5.6

  parent reply	other threads:[~2017-06-20 16:50 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-06-20 16:51 [PATCH v2 0/7] Enable DSM pass thru for root functions Jerry Hoemann
2017-06-20 16:51 ` Jerry Hoemann
2017-06-20 16:51 ` [PATCH v2 1/7] libnvdimm: passthru functions clear to send Jerry Hoemann
2017-06-20 16:51   ` Jerry Hoemann
2017-06-20 16:51 ` [PATCH v2 2/7] acpi, nfit: Enable DSM pass thru for root functions Jerry Hoemann
2017-06-20 16:51   ` Jerry Hoemann
2017-06-20 16:51 ` [PATCH v2 3/7] libnvdimm: Add bus level dsm mask Jerry Hoemann
2017-06-20 16:51   ` Jerry Hoemann
2017-06-20 16:51 ` [PATCH v2 4/7] acpi, nfit: Use bus_dsm_mask for passthru Jerry Hoemann
2017-06-20 16:51   ` Jerry Hoemann
2017-06-28 21:09   ` Dan Williams
2017-06-28 21:09     ` Dan Williams
2017-06-20 16:51 ` [PATCH v2 5/7] acpi, nfit: Show bus_dsm_mask Jerry Hoemann
2017-06-20 16:51   ` Jerry Hoemann
2017-06-28 21:07   ` Dan Williams
2017-06-28 21:07     ` Dan Williams
2017-06-28 23:15     ` Jerry Hoemann
2017-06-28 23:15       ` Jerry Hoemann
2017-06-28 23:29       ` Dan Williams
2017-06-28 23:29         ` Dan Williams
2017-06-28 23:31         ` Dan Williams
2017-06-28 23:31           ` Dan Williams
2017-06-20 16:51 ` Jerry Hoemann [this message]
2017-06-20 16:51   ` [PATCH v2 6/7] libnvdimm: New ACPI 6.2 DSM functions Jerry Hoemann
2017-06-28 21:11   ` Dan Williams
2017-06-28 21:11     ` Dan Williams
2017-06-20 16:51 ` [PATCH v2 7/7] acpi, nfit: override mask Jerry Hoemann
2017-06-20 16:51   ` Jerry Hoemann
2017-06-26 17:37 ` [PATCH v2 0/7] Enable DSM pass thru for root functions Jerry Hoemann
2017-06-26 17:37   ` Jerry Hoemann

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1f95797092f647a92ee382e80b9b739b18518ee3.1497939166.git.jerry.hoemann@hpe.com \
    --to=jerry.hoemann@hpe.com \
    --cc=dan.j.williams@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-nvdimm@lists.01.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.