// Copyright (c) 2018, Intel Corporation.
// SPDX-License-Identifier: BSD-3-Clause

ifdef::manpage[]
ipmctl-show-firmware(1)
=======================
endif::manpage[]

NAME
----
ipmctl-show-firmware - Shows detailed information about the firmware

SYNOPSIS
--------
[listing]
ipmctl show [OPTIONS] -firmware [TARGETS]

DESCRIPTION
-----------
Shows detailed information about the firmware on one or more PMem modules.

OPTIONS
-------
-a::
-all::
  Shows all attributes.

NOTE: The all and display options are exclusive and may not be used together.

-d (attributes)::
-display (attributes)::
  Filters the returned attributes by explicitly specifying a comma-separated
  list of any of the attributes defined in the Return Data section.

NOTE: The all and display options are exclusive and may not be used together.

-h::
-help::
  Displays help for the command.

-ddrt::
  Used to specify DDRT as the desired transport protocol for the current invocation of ipmctl.

-smbus::
  Used to specify SMBUS as the desired transport protocol for the current invocation of ipmctl.

NOTE: The -ddrt and -smbus options are mutually exclusive and may not be used together.

ifdef::os_build[]
-o (text|nvmxml)::
-output (text|nvmxml)::
  Changes the output format. One of: "text" (default) or "nvmxml".
endif::os_build[]

TARGETS
-------
-dimm [DimmIDs]::
  Restricts output to the firmware information for specific PMem modules by supplying
  one or more comma-separated PMem module identifiers. The default is to display the
  firmware information for all manageable PMem modules.

EXAMPLES
--------
Shows the firmware information for all PMem modules in the server.
[listing]
ipmctl show -dimm -firmware

LIMITATIONS
-----------
In order to successfully execute this command:

- The caller must have the appropriate privileges.

- The specified PMem modules must be manageable by the host software.

RETURN DATA
-----------
The default behavior is to display a table with the default attributes listed
below; the options can be used to expand or restrict the output.

DimmID::
  (Default) The PMem module identifier

ActiveFWVersion::
  (Default) The BCD-formatted revision of the active firmware in the format
  PN.RN.SV.bbbb where:
  - PN = 2-digit product number
  - RN = 2-digit revision number
  - SV = 2-digit security version number
  - bbbb = 4-digit build version

StagedFWVersion::
  (Default) The BCD-formatted revision of the firmware staged for execution on
  the next power cycle in the format PN.RN.SV.bbbb where:
  - PN = 2-digit product number
  - RN = 2-digit revision number
  - SV = 2-digit security version number
  - bbbb = 4-digit build version

StagedFWActivatable::
  The state of whether the staged firmware is activatable or not, where:
  - 0 = Not activatable, reboot is required
  - 1 = Activatable

FWUpdateStatus::
  The status of the last firmware update operation. One of:
  - Unknown
  - Staged successfully
  - Update loaded successfully
  - Update failed to load, fell back to previous firmware

FWImageMaxSize::
  The maximum size of a firmware image.

QuiesceRequired::
  The state of whether activating the firmware requires the host
  to quiesce traffic prior to calling the command.
  - 0 = No traffic quiesce required prior to activate
  - 1 = Traffic quiesce required prior to activate

ActivationTime::
  The estimated activation time, in ms, required for activating the firmware.