@@ -5,7 +5,7 @@ ndctl-update-firmware(1)
NAME
----
-ndctl-update-firmware - provides for updating the firmware on an NVDIMM
+ndctl-update-firmware - update the firmware the given device
SYNOPSIS
--------
@@ -15,9 +15,24 @@ SYNOPSIS
DESCRIPTION
-----------
Provide a generic interface for updating NVDIMM firmware. The use of this
-depends on support from the underlying libndctl, kernel, as well as the
-platform itself.
+depends on support for the NVDIMM "family" in libndctl, the kernel needs
+to enable that command set, and the device itself needs to implement the
+command. Use "ndctl list -DF" to interrogate if firmware
+update is enabled. For example:
+[verse]
+ndctl list -DFu -d nmem1
+{
+ "dev":"nmem1",
+ "id":"cdab-0a-07e0-ffffffff",
+ "handle":"0",
+ "phys_id":"0",
+ "security":"disabled",
+ "firmware":{
+ "current_version":"0",
+ "can_update":true
+ }
+}
OPTIONS
-------
@@ -46,6 +46,11 @@ struct json_object *util_dimm_firmware_to_json(struct ndctl_dimm *dimm,
if (jobj)
json_object_object_add(jfirmware, "current_version", jobj);
+ rc = ndctl_dimm_fw_update_supported(dimm);
+ jobj = json_object_new_boolean(rc == 0);
+ if (jobj)
+ json_object_object_add(jfirmware, "can_update", jobj);
+
next = ndctl_cmd_fw_info_get_updated_version(cmd);
if (next == ULLONG_MAX) {
jobj = util_json_object_hex(-1, flags);
Given all the components that need to be lined up to support firmware update, add a "can_update" flag to indicate that all the proper plumbing is in place. Signed-off-by: Dan Williams <dan.j.williams@intel.com> --- Documentation/ndctl/ndctl-update-firmware.txt | 21 ++++++++++++++++++--- ndctl/util/json-firmware.c | 5 +++++ 2 files changed, 23 insertions(+), 3 deletions(-)