xref: /openbmc/phosphor-power/phosphor-power-sequencer/docs/monitoring_chassis_pgood.md (revision 27ae70b8219cd292f3d8d9b3d5ff2a9ee18b1f37)
1*27ae70b8SShawn McCarney# Monitoring Chassis Power Good
2*27ae70b8SShawn McCarney
3*27ae70b8SShawn McCarney## Overview
4*27ae70b8SShawn McCarney
5*27ae70b8SShawn McCarneyThe power sequencer device provides a chassis power good (pgood) signal. This
6*27ae70b8SShawn McCarneyindicates that all of the main (non-standby) voltage rails are powered on.
7*27ae70b8SShawn McCarney
8*27ae70b8SShawn McCarneyThe `phosphor-power-sequencer` application periodically reads (polls) the
9*27ae70b8SShawn McCarneychassis pgood signal from a named GPIO. For more information, see
10*27ae70b8SShawn McCarney[Named GPIOs](named_gpios.md).
11*27ae70b8SShawn McCarney
12*27ae70b8SShawn McCarneyThe resulting chassis pgood value is used to set the `pgood` property for the
13*27ae70b8SShawn McCarneychassis. See [Chassis Status](chassis_status.md) for more information on this
14*27ae70b8SShawn McCarneyproperty.
15*27ae70b8SShawn McCarney
16*27ae70b8SShawn McCarneyIf the chassis pgood state is false when it should be true, a chassis power good
17*27ae70b8SShawn McCarney(pgood) fault has occurred. See [Power Good Faults](pgood_faults.md) for more
18*27ae70b8SShawn McCarneyinformation.
19*27ae70b8SShawn McCarney
20*27ae70b8SShawn McCarney## Unable to read chassis power good signal
21*27ae70b8SShawn McCarney
22*27ae70b8SShawn McCarney`phosphor-power-sequencer` may become unable to read the chassis power good
23*27ae70b8SShawn McCarneysignal from the named GPIO due to:
24*27ae70b8SShawn McCarney
25*27ae70b8SShawn McCarney- Hardware communication problems
26*27ae70b8SShawn McCarney  - Unable to read from named GPIO after multiple retries.
27*27ae70b8SShawn McCarney- The `Available` property of the chassis changes to false.
28*27ae70b8SShawn McCarney
29*27ae70b8SShawn McCarney### During power on
30*27ae70b8SShawn McCarney
31*27ae70b8SShawn McCarneyIf `phosphor-power-sequencer` is unable to read the chassis power good signal
32*27ae70b8SShawn McCarneyduring a power on attempt, the application will do the following:
33*27ae70b8SShawn McCarney
34*27ae70b8SShawn McCarney- If this is a single chassis system:
35*27ae70b8SShawn McCarney  - Log an error specifying the power on attempt failed due to an inability to
36*27ae70b8SShawn McCarney    read the chassis power good status.
37*27ae70b8SShawn McCarney  - `phosphor-chassis-state-manager` will [power off](powering_off.md) the
38*27ae70b8SShawn McCarney    system.
39*27ae70b8SShawn McCarney- If this is a multiple chassis system:
40*27ae70b8SShawn McCarney  - If the chassis is experiencing a blackout:
41*27ae70b8SShawn McCarney    - Log an error specifying an input power problem.
42*27ae70b8SShawn McCarney  - If the chassis is not experiencing a blackout:
43*27ae70b8SShawn McCarney    - Log an error specifying the power on attempt failed due to an inability to
44*27ae70b8SShawn McCarney      read the chassis power good status.
45*27ae70b8SShawn McCarney    - If the read failure was due to hardware communication problems, add the
46*27ae70b8SShawn McCarney      inventory path of the chassis to the error log. This may result in
47*27ae70b8SShawn McCarney      hardware isolation, which will cause the `Enabled` property of the chassis
48*27ae70b8SShawn McCarney      to be false.
49*27ae70b8SShawn McCarney  - `phosphor-chassis-state-manager` will power the system
50*27ae70b8SShawn McCarney    [off](powering_off.md) and then [on](powering_on.md) again. If the chassis's
51*27ae70b8SShawn McCarney    `Available` or `Enabled` property is false, the chassis will not be powered
52*27ae70b8SShawn McCarney    on.
53*27ae70b8SShawn McCarney
54*27ae70b8SShawn McCarney### After power on
55*27ae70b8SShawn McCarney
56*27ae70b8SShawn McCarneyIf `phosphor-power-sequencer` is unable to read the chassis power good signal
57*27ae70b8SShawn McCarneyafter the chassis powered on, the application will do the following:
58*27ae70b8SShawn McCarney
59*27ae70b8SShawn McCarney- If this is a single chassis system:
60*27ae70b8SShawn McCarney  - Log an error specifying an inability to read the chassis power good status.
61*27ae70b8SShawn McCarney  - Do **not** power off the system.
62*27ae70b8SShawn McCarney  - Leave the `pgood` property set to the value 1.
63*27ae70b8SShawn McCarney- If this is a multiple chassis system:
64*27ae70b8SShawn McCarney  - If the chassis is experiencing a blackout:
65*27ae70b8SShawn McCarney    - Set `pgood` value to 0.
66*27ae70b8SShawn McCarney    - Log an error specifying an input power problem.
67*27ae70b8SShawn McCarney    - Power the system off and then on again. If the chassis's `Available`
68*27ae70b8SShawn McCarney      property is false, the chassis will not be powered on.
69*27ae70b8SShawn McCarney  - If the chassis is not experiencing a blackout:
70*27ae70b8SShawn McCarney    - Log an error specifying an inability to read the chassis power good
71*27ae70b8SShawn McCarney      status.
72*27ae70b8SShawn McCarney    - Do **not** power off the system.
73*27ae70b8SShawn McCarney    - Leave the `pgood` property set to the value 1.
74