Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: 2.18.0-dev
# c5f3a0fa 22-Nov-2024 Yikai Tsai <yikai.tsai.wiwynn@gmail.com>

meta-facebook: yosemite4: recovery CPLD alert pin after NIC power fault

Summary:
After NIC power fault occurs, it is possible that CPLD keeps holding
alert pin, and only the first fault will be reco

meta-facebook: yosemite4: recovery CPLD alert pin after NIC power fault

Summary:
After NIC power fault occurs, it is possible that CPLD keeps holding
alert pin, and only the first fault will be recorded.
If other faults occur later, they will not be recorded.
Thus, BMC needs to recovery CPLD alert pin after NIC power fault.

Test Plan:
Trigger NIC power fault and check logs.

Testing:
1. Clear logs
root@bmc:~# mfg-tool log-clear
<6> Calling DeleteAll on Logging service
"success"

2. Check if any NIC got power fault
root@bmc:~# i2ctransfer -f -y 28 w1@0x25 0x01 r1
0x00

3. Trigger NIC0 & NIC2 power fault
root@bmc:~# i2ctransfer -f -y 28 w2@0x25 0x0a 0x5

4. Check NIC power fault
root@bmc:~# i2ctransfer -f -y 28 w1@0x25 0x01 r1
0x05

5. Check logs
root@bmc:~# mfg-tool log-display | grep -i NIC
<6> Finding log entries.
<7> Iterating over entries.
<6> Examining xyz.openbmc_project.Logging.Entry at /xyz/openbmc_project/logging/entry/1.
<6> Examining xyz.openbmc_project.Logging.Entry at /xyz/openbmc_project/logging/entry/2.
<6> Examining xyz.openbmc_project.Logging.Entry at /xyz/openbmc_project/logging/entry/3.
"NIC0 Power Fault=1"
"message": "NIC0 Power Fault",
"NIC2 Power Fault=1"
"message": "NIC2 Power Fault",

6. Deassert & trigger NIC0 power fault
root@bmc:~# i2ctransfer -f -y 28 w2@0x25 0x0a 0x0
root@bmc:~# i2ctransfer -f -y 28 w2@0x25 0x0a 0x1

7. Check NIC power fault
root@bmc:~# i2ctransfer -f -y 28 w1@0x25 0x01 r1
0x01

8. Check logs
root@bmc:~# mfg-tool log-display | grep -i NIC
<6> Finding log entries.
<7> Iterating over entries.
<6> Examining xyz.openbmc_project.Logging.Entry at /xyz/openbmc_project/logging/entry/1.
<6> Examining xyz.openbmc_project.Logging.Entry at /xyz/openbmc_project/logging/entry/2.
<6> Examining xyz.openbmc_project.Logging.Entry at /xyz/openbmc_project/logging/entry/3.
<6> Examining xyz.openbmc_project.Logging.Entry at /xyz/openbmc_project/logging/entry/4.
"NIC0 Power Fault=1"
"message": "NIC0 Power Fault",
"NIC2 Power Fault=1"
"message": "NIC2 Power Fault",
"NIC0 Power Fault=1"
"message": "NIC0 Power Fault",

Change-Id: Id8cd8e2bc32757d9f95eebd9d9cd3a8c0ffe56cc
Signed-off-by: Yikai Tsai <yikai.tsai.wiwynn@gmail.com>

show more ...


# 248da882 30-Sep-2024 Rush Chen <rush.chen.wiwynn@gmail.com>

meta-facebook: yosemite4: NIC[0~3] power fault event log

Summary:
The system shall register an event when NIC[0~3] power fault.
BMC monitors GPIO "ALT_SMB_BMC_CPLD2_N" and then read IOE pin.

Test P

meta-facebook: yosemite4: NIC[0~3] power fault event log

Summary:
The system shall register an event when NIC[0~3] power fault.
BMC monitors GPIO "ALT_SMB_BMC_CPLD2_N" and then read IOE pin.

Test Plan:
With a testing CPLD firmware, set IOE pin high to trigger NIC power fault.

Testing:
1. trigger NIC1 power fault by setting IOE reg 0x0a, bit1 = 1:
root@bmc:~# i2ctransfer -f -y 28 w2@0x25 0x0a 0x02 r1
0x00

2. read IOE reg 0x01 (bit1 = 1):
root@bmc:~# i2ctransfer -f -y 28 w1@0x25 0x01 r1
0x02

3. Check event log
root@bmc:~# mfg-tool log-display
"2": {
"additional_data": [
"NIC1 Power Fault=1"
],
"event_id": "",
"message": "NIC1 Power Fault",
"resolution": "",
"resolved": false,
"severity": "xyz.openbmc_project.Logging.Entry.Level.Error",
"timestamp": "2024-08-19T07:50:01.311000000Z",
"updated_timestamp": "2024-08-19T07:50:01.311000000Z"
},

Change-Id: I12b297b14b8be4c97c1f7d0949b0b6c16b91fa40
Signed-off-by: Rush Chen <rush.chen.wiwynn@gmail.com>

show more ...