ipmctl-show-device - Man Page

Shows information about one or more PMem modules

Synopsis

ipmctl show [OPTIONS] -dimm [TARGETS]

Description

Shows information about 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.

-o (text|nvmxml), -output (text|nvmxml)

Changes the output format. One of: "text" (default) or "nvmxml".

-u (B|MB|MiB|GB|GiB|TB| TiB), -units (B|MB|MiB|GB|GiB|TB| TiB)

Changes the units that capacities are displayed in for this command. One of: bytes (B), megabytes (MB), mebibytes (MiB), gigabytes (GB), gibibytes (GiB), terabytes (TB) or tebibytes (TiB).

Targets

-dimm [DimmIDs]

Restricts output to specific PMem modules by supplying the PMem module target and one or more comma separated PMem module identifiers. The default is to display all PMem modules.

-socket [SocketIDs]

Restricts output to the PMem modules installed on specific sockets by supplying the socket target and one or more comma separated socket identifiers. The default is to display all sockets.
Note

If ACPI PMTT table is not present, then DDR4 memory will not be displayed in the filtered socket list.

Examples

Lists a few key fields for each PMem module.

ipmctl show -dimm

Lists all properties for PMem module 0x0001.

ipmctl show -a -dimm 0x0001

Retrieves specific properties for each PMem module.

ipmctl show -d HealthState,LockState -dimm

Return Data

The default behavior is to display a table with the default attributes listed below; applying options changes the output to a more detailed format. Limited information (noted in the table below) is applicable if the PMem module is not manageable by the software as indicated by the "ManageabilityState" property.

Note

Some data is endian swapped for human readability.

DimmID

(Default) The PMem module identifier.

Capacity

(Default) The usable capacity of the PMem module as reported by the firmware.

HealthState

(Default) Overall PMem module health. One of:

  • Healthy
  • Noncritical: Maintenance may be required.
  • Critical: Features or performance are degraded due to failure.
  • Fatal: Critical internal state failure (DPA Failure, Internal Buffer Failure, AIT Failure, etc.) is non-recoverable and data loss has occurred or is imminent. In this case, the firmware will disable the media and access to user data and operations that require use of the media will fail.
  • Non-functional: The PMem module is detected and manageable, though some commands and capabilities may be limited. The PMem module has limited communication or another error preventing complete functionality. Common causes include:

    • DDRT memory interface training failure
    • Expected region mapping to SPA range unable to be found
  • Unmanageable: The PMem module has an incompatible firmware API version or hardware revision or is unresponsive (possibly due to a communication interface failure or a firmware/hardware error).
  • Unknown: Unable to determine the PMem module health state. Refer to HealthStateReason for HealthState details.
HealthStateReason

Indicates why the PMem module is in the current Health State. One or more of:

  • None
  • Percentage Remaining less than 1%
  • Package Sparing occurred
  • CAP Self-Test warning
  • Percentage Remaining is 0
  • Die Failure
  • AIT DRAM disabled
  • CAP Self-Test failure
  • Critical internal state failure
  • Performance degraded
  • CAP Self-Test communication failure

    Refer to the Intel™ Optane™ Persistent Memory Firmware Interface Specification, document number 556488, Section 4.8 SMART and Health.

InterfaceFormatCode

A comma-delimited list of the JEDEC standard format interface codes for the PMem module where each code is formatted as: code (JEDEC Description or "Unknown").

ManageabilityState

Ability of the PMem module host software to manage the PMem module. Manageability is determined by the interface format code, the vendor identifier, device identifier and the firmware API version. One of:

  • Manageable: The PMem module is manageable by the software.
  • Unmanageable: The PMem module is not supported by this version of the software.
PopulationViolation

Memory populations are evaluated based on the "Enforce Population POR" setup option in UEFI Firmware. If enforcement of POR populations is selected, then some PMem module memory may be in population violation. See [PMem modules in non-POR configuration] for details. One of:

  • Yes: The PMem module is in population violation.
  • No: The PMem module is not in population violation.
PhysicalID

The PMem module physical identifier (i.e., SMBIOS Type 17 handle).

DimmHandle

The PMem module handle formatted as 0xABCD.

  • A = Socket
  • B = Memory Controller
  • C = Channel
  • D = Slot
DimmUID

The unique identifier of the PMem module formatted as VVVV-ML-MMYYSNSNSNSN or VVVV-SNSNSNSN (if the manufacturing information is not available) where:

  • VVVV = VendorID
  • ML = ManufacturingLocation
  • MMYY = ManufacturingDate
  • SNSNSNSN = SerialNumber
SocketID

The processor socket identifier (i.e., NUMA node) where the PMem module is installed.

MemControllerID

The associated memory controller identifier.

ChannelID

The associated channel.

ChannelPos

The PMem module position in the channel.

MemoryType

The memory type. One of:

  • Unknown
  • DDR4
  • Logical Non-Volatile Device
VendorID

The vendor identifier of the PMem module. This value is presented in big endian format.

DeviceID

The device identifier of the PMem module. This value is presented in big endian format.

RevisionID

The revision identifier of the PMem module.

SubsystemVendorID

The vendor identifier of the non-volatile memory subsystem controller. This value is presented in big endian format.

SubsystemDeviceID

The device identifier of the non-volatile memory subsystem controller.

SubsystemRevisionID

The revision identifier of the non-volatile memory subsystem controller retrieved from NFIT. This field uses a different encoding than ControllerRevisionID.

ManufacturingInfoValid

If the manufacturing location and date are valid. One of:

  • 0: Not valid
  • 1: Valid
ManufacturingLocation

The manufacturing location assigned by the vendor or "N/A" if ManufacturingInfoValid is 0.

ManufacturingDate

The manufacturing date assigned by the vendor or "N/A" if ManufacturingInfoValid is 0.

SerialNumber

The serial number assigned by the vendor. This value is presented in big endian format.

PartNumber

The part number assigned by the vendor

DeviceLocator

A string describing the physically labeled socket or board position where the memory device is located from the SMBIOS Type 17 Memory Device table.

BankLabel

A string that identifies the physically labeled bank where the memory device is located from the SMBIOS Type 17 Memory Device table.

DataWidth

The width in bits used to store user data from the SMBIOS Type 17 Memory Device table.

TotalWidth

The width in bits for data and error correction and/or data redundancy from the SMBIOS Type 17 Memory Device table.

Speed

The maximum capable speed of the device in megatransfers per second (MT/s) from the SMBIOS Type 17 Memory Device table.

FormFactor

The PMem module form factor (i.e., SMBIOS Type 17 Memory Device Form Factor). One of:

  • Unknown
  • DIMM
  • SODIMM
LockState

The current security state of the persistent memory on the PMem module. One ore more of:

  • Unknown - The security state cannot be determined (e.g., when the PMem module is not manageable by the software).
  • Disabled - Security is not enabled.
  • Unlocked - Security is enabled and unlocked.
  • Locked - Security is enabled and locked.
  • Frozen - A reboot is required to change the security state.
  • Exceeded - The passphrase limit has been reached. A power cycle is required to change the security state.
  • MP Exceeded - The master passphrase limit has been reached. A power cycle is required to change the security state.
  • Not Supported - Security is not supported on the PMem module.
SVNDowngrade

The Opt-in value of SVN Downgrade security opt-in feature for PMem module. One of :

  • Unknown
  • Disabled
  • Enabled
SecureErasePolicy

The Opt-in value of Secure erase policy opt-in feature for PMem module. One of :

  • Unknown
  • No Master Passphrase
  • Master Passphrase Enabled
S3ResumeOptIn

The Opt-in value of S3 Resume security opt-in feature for PMem module. One of :

  • Unknown
  • UnsecureS3
  • SecureS3
FwActivateOptIn

The Opt-in value of Fw Activate security opt-in feature for PMem module. One of :

  • Unknown
  • Disabled
  • Enabled
FWVersion

(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
  • SN = 2-digit security revision number
  • bbbb = 4-digit build version

    Value may be N/A if the PMem module is not manageable by the software.
FWAPIVersion

The firmware supported interface revision in the format aa.bb where:

  • aa = 2-digit major version
  • bb = 2-digit minor version

    The firmware interface is intended to be backwards compatible. Therefore, the host software allows management of PMem modules where this version is less than or equal to the version stored in the host software. Value may be N/A if the PMem module is not manageable by the software.

The following information is only applicable when the PMem module is manageable by the software as indicated by the "ManageabilityState".

FWActiveAPIVersion

The firmware interface revision locked in the BIOS API handshake in the format aa.bb where:

  • aa = 2-digit major version
  • bb = 2-digit minor version

    Value may be N/A if the PMem module is not manageable by the software.

ManufacturerID

The manufacturer identifier of the PMem module. This value is presented in big endian format.

ControllerRevisionID

The controller stepping and revision ID retrieved from the controller FW. This field uses a different encoding than SubsystemRevisionID.

IsNew

Whether or not the PMem module is incorporated with the rest of the PMem module in the system. One of:

  • 0: Configured
  • 1: The PMem module requires configuration.
MemoryCapacity

Usable PMem module Memory Mode capacity.

AppDirectCapacity

Usable PMem module App Direct capacity.

UnconfiguredCapacity

PMem module capacity that is inaccessible because it is not mapped into the system physical address space.

InaccessibleCapacity

PMem module capacity that is inaccessible due to:

  • Licensing issue
  • Platform configuration prevents accessing this capacity. For example, MemoryCapacity is configured and available on a PMem module but MemoryMode is not enabled by BIOS.
ReservedCapacity

PMem module capacity reserved for proper alignment.

AvgPowerLimit

If the PMem module firmware power management policy is enabled, the power limit in mW used for average power. Refer to FIS for allowable range and default value.

MemoryBandwidthBoostFeature

Returns if the Memory Bandwidth Boost Feature is currently enabled or not. One of:

  • 0x0: Disabled
  • 0x1: Enabled
MemoryBandwidthBoostMaxPowerLimit

The power limit used for limiting the Memory Bandwidth Boost Feature’s power consumption [mW].

MemoryBandwidthBoostAveragePowerTimeConstant

The value used as a base time window for average power throttle [ms]. This range can be checked in the Max Memory Bandwidth Boost Average Time Constant and Average Power Time Constant Step from the Get Device Characteristics command.

  • Default: 15000 ms
MaxAveragePowerLimit

Maximum average power limit [mW] supported by the PMem module.

MaxMemoryBandwidthBoostMaxPowerLimit

Maximum Memory Bandwidth Boost Power value [mW] that can be set for the PMem module. Will return 0 if unsupported by current FIS.

MaxAveragePowerTimeConstant

This field returns the maximum supported value of the Average Power Time Constant and Average Power Reporting Time constant [ms] that can be set via the Set Power Management Policy and the Optional Configuration Data Policy Commands.

AveragePowerTimeConstantStep

This field returns the increments in milliseconds allowed by the firmware when setting the Average Power Time Constant and Average Power Reporting Time Constant via the Set Power Management Policy and the Optional Configuration Data Policy Commands.

AveragePower

This field returns the average power in milliwatts that each PMem module consumes over the Average Power Reporting Time constant.

Average12vPower

This field returns the 12V average power in milliwatts that each PMem module consumes over the Average Power Reporting Time constant.

Average1_2vPower

This field returns the 1.2V average power in milliwatts that each PMem module consumes over the Average Power Reporting Time constant.

PackageSparingCapable

Whether or not the PMem module supports package sparing. One of:

  • 0: False
  • 1: True
PackageSparingEnabled

Whether or not the PMem module package sparing policy is enabled. One of:

  • 0: Disabled
  • 1: Enabled
PackageSparesAvailable

The number of spare devices available for package sparing.

LatchedLastShutdownStatus

The status of the last shutdown of the PMem module. One or more of:

  • Unknown: The last shutdown status cannot be determined.
  • PM ADR Command Received: Power management ADR command received.
  • PM S3 Received: Power management S3 command received.
  • PM S5 Received: Power management S5 command received.
  • DDRT Power Fail Command Received: DDR power fail command received.
  • PMIC 12V/DDRT 1.2V Power Loss (PLI)
  • PM Warm Reset Received: Power management warm reset received.
  • Thermal Shutdown Received: Thermal shutdown triggered.
  • Controller’s FW State Flush Complete: Flush Completed.
  • Viral Interrupt Received: Viral interrupt received.
  • Surprise Clock Stop Received: Surprise clock stop received.
  • Write Data Flush Complete: Write data flush completed.
  • PM S4 Received: Power management S4 command received.
  • PM Idle Received: Power management idle received.
  • DDRT Surprise Reset Received: Surprise reset received.
  • Extended Flush Not Complete.
  • Extended Flush Complete.
UnlatchedLastShutdownStatus

The status of the last shutdown status of the PMem module. Same fields as the Latched Last Shutdown Status with the only difference that LLS details on a dirty shutdown is logged, even if the Latch System Shutdown Status was not enabled. One or more of:

  • Unknown: The last shutdown status cannot be determined.
  • PM ADR Command Received: Power management ADR command received.
  • PM S3 Received: Power management S3 command received.
  • PM S5 Received: Power management S5 command received.
  • DDRT Power Fail Command Received: DDR power fail command received.
  • PMIC 12V/DDRT 1.2V Power Loss (PLI)
  • PM Warm Reset Received: Power management warm reset received.
  • Thermal Shutdown Received: Thermal shutdown triggered.
  • Controller’s FW State Flush Complete: Flush Completed.
  • Viral Interrupt Received: Viral interrupt received.
  • Surprise Clock Stop Received: Surprise clock stop received.
  • Write Data Flush Complete: Write data flush completed.
  • PM S4 Received: Power management S4 command received.
  • PM Idle Received: Power management idle received.
  • DDRT Surprise Reset Received: Surprise reset received.
  • Extended Flush Not Complete.
  • Extended Flush Complete.
ThermalThrottleLossPercent

The average performance loss percentage due to thermal throttling in current boot of the PMem module.

LastShutdownTime

The time the system was last shutdown.

ModesSupported

A list of the modes supported by the PMem module. Refer to the command Show System Capabilities to determine the modes supported by the platform. One or more of:

  • Memory Mode: PMem modules act as system memory under the control of the operating system. In Memory Mode, any DDR in the platform will act as a cache working in conjunction with the PMem module.
  • App Direct: PMem modules and DDR act as independent memory resources under direct load/store control of the application.
SecurityCapabilities

The security features supported by the PMem module. Zero or more of:

  • Encryption: The PMem module supports persistent memory encryption by setting a passphrase.
  • Erase: The PMem module is erasable.
MasterPassphraseEnabled

This property indicates if master passphrase is enabled. If it is disabled, then it cannot be enabled. One of:

  • 0: Disabled - Cannot be enabled.
  • 1: Enabled - Master passphrase can be changed. Cannot be disabled.
ConfigurationStatus

The status of the PMem module memory configuration. One of:

  • Valid: The configuration is valid.
  • Not Configured: The PMem module has not been configured.
  • Failed - Bad configuration: The configuration is corrupt.
  • Failed - Broken interleave: This PMem module is part of an interleave set that is not complete.
  • Failed - Reverted: The configuration failed and was reverted to the last known good configuration.
  • Failed - Unsupported: The configuration is not compatible with the installed BIOS.
  • Unknown: The configuration cannot be determined.
SKUViolation

The configuration of the PMem module is unsupported due to a license issue. One of:

  • 0: False
  • 1: True
ARSStatus

The address range scrub (ARS) operation status for the PMem module. The status is a reflection of the last requested ARS, but not necessarily within the current platform power cycle. One of:

  • Unknown - The ARS operation status cannot be determined.
  • Not started - An ARS operation has not started.
  • In progress - An ARS operation is currently in progress.
  • Completed - The last ARS operation has completed.
  • Aborted - The last ARS operation was aborted.
OverwriteStatus

The overwrite PMem module operation status for the PMem module. One of:

  • Unknown - The overwrite PMem module operation status cannot be determined. This may occur if the status gets overwritten due to a different long operation running on this PMem module.
  • Not started - An overwrite PMem module operation was not started on the last boot.
  • In progress - An overwrite PMem module operation is currently in progress.
  • Completed - An overwrite PMem module operation completed and a reboot is required to use the PMem module.
AveragePowerReportingTimeConstantMultiplier

The value that is used to multiply the base time value used for average power consumption measurements. Can be set to a value between 0 and 32. The default value is 0.

AveragePowerReportingTimeConstant

The value, in milliseconds, used to determine the time constant for reporting the average power consumption measurements. Can be set to a value between 100 and 12000, by increments of 100. The default value is 1000.

ViralPolicy

Whether viral policies are enabled on the PMem module. One of:

  • 0: Disabled - This is the default.
  • 1: Enabled - The persistent memory on the PMem module will be put into read-only mode if the host operating system software detects an uncorrectable error situation and indicates a viral state in order to prevent the spread of damage.
ViralState

Whether the PMem module is currently viral. One of:

  • 0: Not Viral
  • 1: Viral - The viral policies of the PMem module have switched the persistent memory to read-only mode due to the host operating system software detecting an uncorrectable error situation and indicating a viral state.
AitDramEnabled

If the PMem module AIT DRAM is enabled. One of:

  • 0: Disabled - The device will suffer performance degradation if the AIT DRAM becomes disabled.
  • 1: Enabled
BootStatus

The initialization status of the PMem module as reported by the firmware in the boot status register. One or more of:

  • Unknown - The boot status register cannot be read.
  • Success - No errors were reported during initialization.

    The following statuses indicate that the media is not functional and, therefore, access to user data and operations that require use of the media will fail.

  • Media Not Ready - The firmware did not complete media training.
  • Media Error - The firmware detected an error during media training.
  • Media Disabled - The firmware disabled the media due to a critical issue.

    The following statuses indicate that communication with the firmware is not functional.

  • FW Assert - The firmware reported an assert during initialization.
BootStatusRegister

The raw hex value of the PMem module Boot Status Register of the PMem module

LatchSystemShutdownState

Status of the latch. Specifies whether the PMem module will latch the SMART Last Shutdown Status and SMART Dirty Shutdown Count.

  • 0: Disabled - This is the default.
  • 1: Enabled
PreviousPowerCycleLatchSystemShutdownState

The status of the latch during the previous power cycle.

  • 0: Disabled - This is the default.
  • 1: Enabled
ExtendedAdrEnabled

Specifies whether extended ADR flow is enabled in the FW.

  • 0: Disabled
  • 1: Enabled
PpcExtendedAdrEnabled

Specifies whether extended ADR flow was enabled in the FW during the last power cycle.

  • 0: Disabled
  • 1: Enabled
ErrorInjectionEnabled

Error injection status.

  • 0: Disabled - This is the default.
  • 1: Enabled
MediaTemperatureInjectionEnabled

Media temperature injection status.

  • 0: Disabled - This is the default.
  • 1: Enabled
SoftwareTriggersEnabled

Software trigger status.

  • 0: Disabled - This is the default.
  • 1: At least one software trigger enabled.
SoftwareTriggersEnabledDetails

Comma separated list of software triggers currently enabled. One or more of:

  • None
  • Package Sparing
  • Fatal Error
  • Percentage Remaining
  • Dirty Shutdown
PoisonErrorInjectionsCounter

This counter is incremented each time the set poison error is successfully executed.

PoisonErrorClearCounter

This counter is incremented each time the clear poison error is successfully executed.

MediaTemperatureInjectionsCounter

This counter is incremented each time the media temperature is injected.

SoftwareTriggersCounter

This counter is incremented each time a software trigger is enabled.

MaxMediaTemperature

The highest die temperature reported in degrees Celsius. This value is persistent through Power Loss as well as not effected by Overwrite PMem module or Media Temperature Error Injection.

MaxControllerTemperature

The highest controller temperature reported in degrees Celsius. This value is persistent through Power Loss as well as not effected by Overwrite PMem module.

MixedSKU

One or more PMem modules in the system have different SKUs. One of:

  • 0: False
  • 1: True - In this case, the host software operates in a read-only mode and does not allow changes to the PMem modules and their associated capacity.

Referenced By

ipmctl(1).

2020-10-15 ipmctl