tree b69bbf7431ea9fc14ab8f68b63be19ea556a2227
parent 7f760b3612724da522ead354527785aa3df47a07
author Sridevi Ramesh <sridevra@in.ibm.com> 1628855478 -0500
committer Jayashankar Padath <jayashankarpadath@gmail.com> 1632301001 +0000

PDR: Add effecter support for fault LEDS.

Also, contains update for card, dimm and CPU entity info for
identify effecter LED.

Tested Result:

1. Example for fault LED:
=========================

pldmtool platform getpdr -d 193
{
    "nextRecordHandle": 194,
    "responseCount": 29,
    "recordHandle": 193,
    "PDRHeaderVersion": 1,
    "PDRType": "State Effecter PDR",
    "recordChangeNumber": 0,
    "dataLength": 19,
    "PLDMTerminusHandle": 1,
    "effecterID": 103,
    "entityType": "[Physical] Chassis front panel board(control panel)",
    "entityInstanceNumber": 1,
    "containerID": 3,
    "effecterSemanticID": 0,
    "effecterInit": "noInit",
    "effecterDescriptionPDR": false,
    "compositeEffecterCount": 1,
    "stateSetID[0]": "Operational Fault Status(10)",
    "possibleStatesSize[0]": 1,
    "possibleStates[0]": [
        "Normal(1)",
        "Stressed(2)"
    ]
}

busctl get-property xyz.openbmc_project.Inventory.Manager /xyz/openbmc_project/inventory/system/chassis/motherboard/base_op_panel_blyth xyz.openbmc_project.State.Decorator.OperationalStatus Functional
b true

pldmtool platform SetStateEffecterStates -i 103 -c 1 -d 1 2                                                   {
    "Response": "SUCCESS"
}

busctl get-property xyz.openbmc_project.Inventory.Manager /xyz/openbmc_project/inventory/system/chassis/motherboard/base_op_panel_blyth xyz.openbmc_project.State.Decorator.OperationalStatus Functional
b false

l platform getpdr -d 415
{
    "nextRecordHandle": 416,
    "responseCount": 29,
    "recordHandle": 415,
    "PDRHeaderVersion": 1,
    "PDRType": "State Effecter PDR",
    "recordChangeNumber": 0,
    "dataLength": 19,
    "PLDMTerminusHandle": 1,
    "effecterID": 120,
    "entityType": "[Physical] Memory Chip",
    "entityInstanceNumber": 1,
    "containerID": 3,
    "effecterSemanticID": 0,
    "effecterInit": "noInit",
    "effecterDescriptionPDR": false,
    "compositeEffecterCount": 1,
    "stateSetID[0]": "Operational Fault Status(10)",
    "possibleStatesSize[0]": 1,
    "possibleStates[0]": [
        "Normal(1)",
        "Stressed(2)"
    ]
}

 busctl get-property xyz.openbmc_project.Inventory.Manager /xyz/openbmc_project/inventory/system/chassis/motherboard/dimm0 xyz.openbmc_project.State.Decorator.OperationalStatus Functional
b false

pldmtool platform SetStateEffecterStates -i 120 -c 1 -d 1 1                                                                {
    "Response": "SUCCESS"
}

busctl get-property xyz.openbmc_project.Inventory.Manager /xyz/openbmc_project/inventory/system/chassis/motherboard/dimm0 xyz.openbmc_project.State.Decorator.OperationalStatus Functional
b true

2. Example for dimm update for identify effecter
====================================================

Set Memory Chip -1 (Identify State - effecter) and verify with corresponding Memory chip -1 (Identify State - sensor)

pldmtool platform GetStateSensorReadings -i 24 -r 0
{
    "compositeSensorCount": 1,
    "sensorOpState[0]": "Sensor Enabled",
    "presentState[0]": "Sensor Normal",
    "previousState[0]": "Sensor Unknown",
    "eventState[0]": "Sensor Warning"
}
pldmtool platform SetStateEffecterStates -i 21 -c 1 -d 1 1
{
    "Response": "SUCCESS"
}
pldmtool platform GetStateSensorReadings -i 24 -r 0
{
    "compositeSensorCount": 1,
    "sensorOpState[0]": "Sensor Enabled",
    "presentState[0]": "Sensor Normal",
    "previousState[0]": "Sensor Unknown",
    "eventState[0]": "Sensor Normal"

3. Example for cable card update for identify effecter
======================================================

pldmtool platform getpdr -d 305
{
    "nextRecordHandle": 306,
    "responseCount": 29,
    "recordHandle": 305,
    "PDRHeaderVersion": 1,
    "PDRType": "State Effecter PDR",
    "recordChangeNumber": 0,
    "dataLength": 19,
    "PLDMTerminusHandle": 1,
    "effecterID": 10,
    "entityType": "[Physical] Connector",
    "entityInstanceNumber": 1,
    "containerID": 10,
    "effecterSemanticID": 0,
    "effecterInit": "noInit",
    "effecterDescriptionPDR": false,
    "compositeEffecterCount": 1,
    "stateSetID[0]": "Identify State(17)",
    "possibleStatesSize[0]": 1,
    "possibleStates[0]": [
        "Identify State Unasserted(1)",
        "Identify State Asserted(2)"
    ]
}

pldmtool platform GetStateSensorReadings -i 13 -r 0
{
    "compositeSensorCount": 1,
    "sensorOpState[0]": "Sensor Enabled",
    "presentState[0]": "Sensor Normal",
    "previousState[0]": "Sensor Unknown",
    "eventState[0]": "Sensor Normal"
}

pldmtool platform SetStateEffecterStates -i 10 -c 1 -d 1 2
{
    "Response": "SUCCESS"
}

 pldmtool platform GetStateSensorReadings -i 13 -r 0
{
    "compositeSensorCount": 1,
    "sensorOpState[0]": "Sensor Enabled",
    "presentState[0]": "Sensor Normal",
    "previousState[0]": "Sensor Unknown",
    "eventState[0]": "Sensor Warning"
}

4. Example for CPU update for identify LED
======================================

Set CPU -1 (Identify State - effecter) and verify with corresponding
CPU -1 (Identify State - sensor)

pldmtool platform GetStateSensorReadings -i 15 -r 0
{
    "compositeSensorCount": 1,
    "sensorOpState[0]": "Sensor Enabled",
    "presentState[0]": "Sensor Normal",
    "previousState[0]": "Sensor Unknown",
    "eventState[0]": "Sensor Normal"
}

pldmtool platform SetStateEffecterStates -i 12 -c 1 -d 1 2
{
    "Response": "SUCCESS"
}

pldmtool platform GetStateSensorReadings -i 15 -r 0
{
    "compositeSensorCount": 1,
    "sensorOpState[0]": "Sensor Enabled",
    "presentState[0]": "Sensor Normal",
    "previousState[0]": "Sensor Unknown",
    "eventState[0]": "Sensor Warning"
}

5. Example for CPU fault LED
============================

pldmtool platform getpdr -d 205
{
    "nextRecordHandle": 206,
    "responseCount": 29,
    "recordHandle": 205,
    "PDRHeaderVersion": 1,
    "PDRType": "State Effecter PDR",
    "recordChangeNumber": 0,
    "dataLength": 19,
    "PLDMTerminusHandle": 1,
    "effecterID": 115,
    "entityType": "[Physical] Processor",
    "entityInstanceNumber": 3,
    "containerID": 4,
    "effecterSemanticID": 0,
    "effecterInit": "noInit",
    "effecterDescriptionPDR": false,
    "compositeEffecterCount": 1,
    "stateSetID[0]": "Operational Fault Status(10)",
    "possibleStatesSize[0]": 1,
    "possibleStates[0]": [
        "Normal(1)",
        "Stressed(2)"
    ]
}

 busctl get-property xyz.openbmc_project.Inventory.Manager /xyz/openbmc_project/inventory/system/chassis/motherboard/dcm1/cpu0 xyz.openbmc_project.State.Decorator.OperationalStatus Functional
b true

 pldmtool platform SetStateEffecterStates -i 115 -c 1 -d 1 2                                                                {
    "Response": "SUCCESS"
}

busctl get-property xyz.openbmc_project.Inventory.Manager /xyz/openbmc_project/inventory/system/chassis/motherboard/dcm1/cpu0 xyz.openbmc_project.State.Decorator.OperationalStatus Functional
b false

Change-Id: I2ad28d985fe190b3bbfbca3e2ed5347b05851ffb
Signed-off-by: Sridevi Ramesh <sridevra@in.ibm.com>
