Add CPLD class for Mihawk platform
If PGOOD signal is abnormal when chassis power_on, read
Mihawk's CPLD-register via I2C to confirm the error.
First, confirm whether the power_on_error signal is 1
when chassis power_on(1 means abnormal).
If the signal is 1, read the error-code-register to
analysis reason.
Second, runtime to confirm whether the power_ready_error
signal is 1 after chassis power_on(1 means abnormal).
If the signal is 1, read the error-code-register to
analysis reason and shutdown the chassis.
Tested:
Use command "obmcutil chassiskill" to trigger PGOOD error
action analysis during chassis power on.
Signed-off-by: Andy YF Wang <Andy_YF_Wang@wistron.com>
Change-Id: I5f9c0d508627324a6c784ded125c28f0437bf52d
Signed-off-by: Alvin Wang <alvinwang@msn.com>
diff --git a/org/open_power/Witherspoon/Fault.errors.yaml b/org/open_power/Witherspoon/Fault.errors.yaml
index 668568d..37b69a4 100644
--- a/org/open_power/Witherspoon/Fault.errors.yaml
+++ b/org/open_power/Witherspoon/Fault.errors.yaml
@@ -24,6 +24,117 @@
- name: PowerOnFailure
description: System power failed to turn on
+- name: ErrorCode0
+ description: Read CPLD-register fail
+
+- name: ErrorCode1
+ description: CPLD's error reason is PSU0_PGOOD fail
+
+- name: ErrorCode2
+ description: CPLD's error reason is PSU1_PGOOD fail
+
+- name: ErrorCode3
+ description: CPLD's error reason is 240Va_Fault_A fail
+
+- name: ErrorCode4
+ description: CPLD's error reason is 240Va_Fault_B fail
+
+- name: ErrorCode5
+ description: CPLD's error reason is 240Va_Fault_C fail
+
+- name: ErrorCode6
+ description: CPLD's error reason is 240Va_Fault_D fail
+
+- name: ErrorCode7
+ description: CPLD's error reason is 240Va_Fault_E fail
+
+- name: ErrorCode8
+ description: CPLD's error reason is 240Va_Fault_F fail
+
+- name: ErrorCode9
+ description: CPLD's error reason is 240Va_Fault_G fail
+
+- name: ErrorCode10
+ description: CPLD's error reason is 240Va_Fault_H fail
+
+- name: ErrorCode11
+ description: CPLD's error reason is 240Va_Fault_J fail
+
+- name: ErrorCode12
+ description: CPLD's error reason is 240Va_Fault_K fail
+
+- name: ErrorCode13
+ description: CPLD's error reason is 240Va_Fault_L fail
+
+- name: ErrorCode14
+ description: CPLD's error reason is P5V_pgood fail
+
+- name: ErrorCode15
+ description: CPLD's error reason is P3V3_pgood fail
+
+- name: ErrorCode16
+ description: CPLD's error reason is P1V8_pgood fail
+
+- name: ErrorCode17
+ description: CPLD's error reason is P1V1_pgood fail
+
+- name: ErrorCode18
+ description: CPLD's error reason is P0V9_pgood fail
+
+- name: ErrorCode19
+ description: CPLD's error reason is P2V5A_pgood fail
+
+- name: ErrorCode20
+ description: CPLD's error reason is P2V5B_pgood fail
+
+- name: ErrorCode21
+ description: CPLD's error reason is Vdn0_pgood fail
+
+- name: ErrorCode22
+ description: CPLD's error reason is Vdn1_pgood fail
+
+- name: ErrorCode23
+ description: CPLD's error reason is P1V5_pgood fail
+
+- name: ErrorCode24
+ description: CPLD's error reason is Vio0_pgood fail
+
+- name: ErrorCode25
+ description: CPLD's error reason is Vio1_pgood fail
+
+- name: ErrorCode26
+ description: CPLD's error reason is Vdd0_pgood fail
+
+- name: ErrorCode27
+ description: CPLD's error reason is Vcs0_pgood fail
+
+- name: ErrorCode28
+ description: CPLD's error reason is Vdd1_pgood fail
+
+- name: ErrorCode29
+ description: CPLD's error reason is Vcs1_pgood fail
+
+- name: ErrorCode30
+ description: CPLD's error reason is Vddr0_pgood fail
+
+- name: ErrorCode31
+ description: CPLD's error reason is Vtt0_pgood fail
+
+- name: ErrorCode32
+ description: CPLD's error reason is Vddr1_pgood fail
+
+- name: ErrorCode33
+ description: CPLD's error reason is Vtt1_pgood fail
+
+- name: ErrorCode34
+ description: CPLD's error reason is GPU0_pgood fail
+
+- name: ErrorCode35
+ description: CPLD's error reason is GPU1_pgood fail
+
+- name: ErrorCode36
+ description: CPLD's error reason is PSU0&PSU1_pgood fail
+
- name: PowerSequencerVoltageFault
description: The power sequencer chip detected a voltage fault
diff --git a/org/open_power/Witherspoon/Fault.metadata.yaml b/org/open_power/Witherspoon/Fault.metadata.yaml
index c8bfab8..44ff969 100644
--- a/org/open_power/Witherspoon/Fault.metadata.yaml
+++ b/org/open_power/Witherspoon/Fault.metadata.yaml
@@ -52,6 +52,117 @@
- name: PowerOnFailure
level: ERR
+- name: ErrorCode0
+ level: ERR
+
+- name: ErrorCode1
+ level: ERR
+
+- name: ErrorCode2
+ level: ERR
+
+- name: ErrorCode3
+ level: ERR
+
+- name: ErrorCode4
+ level: ERR
+
+- name: ErrorCode5
+ level: ERR
+
+- name: ErrorCode6
+ level: ERR
+
+- name: ErrorCode7
+ level: ERR
+
+- name: ErrorCode8
+ level: ERR
+
+- name: ErrorCode9
+ level: ERR
+
+- name: ErrorCode10
+ level: ERR
+
+- name: ErrorCode11
+ level: ERR
+
+- name: ErrorCode12
+ level: ERR
+
+- name: ErrorCode13
+ level: ERR
+
+- name: ErrorCode14
+ level: ERR
+
+- name: ErrorCode15
+ level: ERR
+
+- name: ErrorCode16
+ level: ERR
+
+- name: ErrorCode17
+ level: ERR
+
+- name: ErrorCode18
+ level: ERR
+
+- name: ErrorCode19
+ level: ERR
+
+- name: ErrorCode20
+ level: ERR
+
+- name: ErrorCode21
+ level: ERR
+
+- name: ErrorCode22
+ level: ERR
+
+- name: ErrorCode23
+ level: ERR
+
+- name: ErrorCode24
+ level: ERR
+
+- name: ErrorCode25
+ level: ERR
+
+- name: ErrorCode26
+ level: ERR
+
+- name: ErrorCode27
+ level: ERR
+
+- name: ErrorCode28
+ level: ERR
+
+- name: ErrorCode29
+ level: ERR
+
+- name: ErrorCode30
+ level: ERR
+
+- name: ErrorCode31
+ level: ERR
+
+- name: ErrorCode32
+ level: ERR
+
+- name: ErrorCode33
+ level: ERR
+
+- name: ErrorCode34
+ level: ERR
+
+- name: ErrorCode35
+ level: ERR
+
+- name: ErrorCode36
+ level: ERR
+
- name: PowerSequencerVoltageFault
level: ERR
meta: