1*27ae70b8SShawn McCarney# Powering On 2*27ae70b8SShawn McCarney 3*27ae70b8SShawn McCarney## Initiating a power on 4*27ae70b8SShawn McCarney 5*27ae70b8SShawn McCarneyThe system can be powered on by several methods, such as the `obmcutil` tool, a 6*27ae70b8SShawn McCarneyRedfish command, or a power button on the system enclosure. 7*27ae70b8SShawn McCarney 8*27ae70b8SShawn McCarneyWhichever method is used, it sets the `state` property to 1 on the 9*27ae70b8SShawn McCarney`org.openbmc.control.Power` D-Bus interface. The D-Bus object path is 10*27ae70b8SShawn McCarney`/org/openbmc/control/power0`, which represents the entire system. See 11*27ae70b8SShawn McCarney[Chassis Status](chassis_status.md) for more information. 12*27ae70b8SShawn McCarney 13*27ae70b8SShawn McCarneyThe `phosphor-power-sequencer` application only supports powering on the entire 14*27ae70b8SShawn McCarneysystem. In a multiple chassis system, `phosphor-power-sequencer` does not 15*27ae70b8SShawn McCarneysupport powering on individual chassis independent of the rest of the system. 16*27ae70b8SShawn McCarney 17*27ae70b8SShawn McCarney## Determining which chassis to power on 18*27ae70b8SShawn McCarney 19*27ae70b8SShawn McCarneyIn a single chassis system, `phosphor-power-sequencer` will always attempt to 20*27ae70b8SShawn McCarneypower on the chassis. 21*27ae70b8SShawn McCarney 22*27ae70b8SShawn McCarneyIn a multiple chassis system, `phosphor-power-sequencer` will only attempt to 23*27ae70b8SShawn McCarneypower on chassis with the proper status: 24*27ae70b8SShawn McCarney 25*27ae70b8SShawn McCarney- `Present` property is true 26*27ae70b8SShawn McCarney- `Enabled` property is true (if interface exists) 27*27ae70b8SShawn McCarney- `Available` property is true (if interface exists) 28*27ae70b8SShawn McCarney- `Status` property is `Good` (if interface exists) 29*27ae70b8SShawn McCarney 30*27ae70b8SShawn McCarney`phosphor-power-sequencer` will set the `state` property to 1 for each chassis 31*27ae70b8SShawn McCarneythat is being powered on. It will set `state` to 0 for each chassis not being 32*27ae70b8SShawn McCarneypowered on. 33*27ae70b8SShawn McCarney 34*27ae70b8SShawn McCarneyIf no chassis are in the proper status to power on, `phosphor-power-sequencer` 35*27ae70b8SShawn McCarneywill log an error. `phosphor-chassis-state-manager` will 36*27ae70b8SShawn McCarney[power off](powering_off.md) the system. 37*27ae70b8SShawn McCarney 38*27ae70b8SShawn McCarneySee [Chassis Status](chassis_status.md) for more information on these 39*27ae70b8SShawn McCarneyproperties. 40*27ae70b8SShawn McCarney 41*27ae70b8SShawn McCarney## Powering on the voltage rails 42*27ae70b8SShawn McCarney 43*27ae70b8SShawn McCarney`phosphor-power-sequencer` powers on the main (non-standby) voltage rails in a 44*27ae70b8SShawn McCarneychassis by toggling a named GPIO to the power sequencer device in the chassis. 45*27ae70b8SShawn McCarneyFor more information, see [Named GPIOs](named_gpios.md). 46*27ae70b8SShawn McCarney 47*27ae70b8SShawn McCarneyIn each chassis being powered on, the power sequencer device powers on the 48*27ae70b8SShawn McCarneyindividual voltage rails in the correct order. 49*27ae70b8SShawn McCarney 50*27ae70b8SShawn McCarney## Determining when power on is complete 51*27ae70b8SShawn McCarney 52*27ae70b8SShawn McCarneyWhen all voltage rails have been successfully powered on in a chassis, the power 53*27ae70b8SShawn McCarneysequencer device will set the chassis power good (pgood) signal to true. 54*27ae70b8SShawn McCarney 55*27ae70b8SShawn McCarney`phosphor-power-sequencer` reads the chassis pgood signal from a named GPIO. For 56*27ae70b8SShawn McCarneymore information, see 57*27ae70b8SShawn McCarney[Monitoring Chassis Power Good](monitoring_chassis_pgood.md). 58*27ae70b8SShawn McCarney 59*27ae70b8SShawn McCarneyWhen the chassis power good signal changes to true, `phosphor-power-sequencer` 60*27ae70b8SShawn McCarneywill set the `pgood` property to 1 on the `org.openbmc.control.Power` interface 61*27ae70b8SShawn McCarneyfor the **chassis** object path. The power on has finished for that chassis. 62*27ae70b8SShawn McCarney 63*27ae70b8SShawn McCarneyWhen all chassis that were being powered on have finished, 64*27ae70b8SShawn McCarney`phosphor-power-sequencer` will set the `pgood` property to 1 on the 65*27ae70b8SShawn McCarney`org.openbmc.control.Power` interface for the **system** object path. 66*27ae70b8SShawn McCarney 67*27ae70b8SShawn McCarneySee [Chassis Status](chassis_status.md) for more information on the `pgood` 68*27ae70b8SShawn McCarneyproperty. 69*27ae70b8SShawn McCarney 70*27ae70b8SShawn McCarneyAfter all chassis have powered on, the rest of the boot process continues. The 71*27ae70b8SShawn McCarneyhost operating system will eventually be started. 72*27ae70b8SShawn McCarney 73*27ae70b8SShawn McCarney## Handling errors 74*27ae70b8SShawn McCarney 75*27ae70b8SShawn McCarney### Power good fault 76*27ae70b8SShawn McCarney 77*27ae70b8SShawn McCarneyWhen the power sequencer device is powering on the main voltage rails, one of 78*27ae70b8SShawn McCarneythe rails may fail to power on. Similarly, after the system has powered on, one 79*27ae70b8SShawn McCarneyof the voltage rails that had been providing power to the chassis might suddenly 80*27ae70b8SShawn McCarneypower off. 81*27ae70b8SShawn McCarney 82*27ae70b8SShawn McCarneyIn both cases the result is a pgood fault. See 83*27ae70b8SShawn McCarney[Power Good Faults](pgood_faults.md) for information on how the error is 84*27ae70b8SShawn McCarneyhandled. 85*27ae70b8SShawn McCarney 86*27ae70b8SShawn McCarney### Unable to read chassis power good signal 87*27ae70b8SShawn McCarney 88*27ae70b8SShawn McCarney`phosphor-power-sequencer` may become unable to read the chassis power good 89*27ae70b8SShawn McCarneysignal from the named GPIO due to: 90*27ae70b8SShawn McCarney 91*27ae70b8SShawn McCarney- Hardware communication problems. 92*27ae70b8SShawn McCarney- The `Available` property of the chassis changes to false. 93*27ae70b8SShawn McCarney 94*27ae70b8SShawn McCarneySee [Monitoring Chassis Power Good](monitoring_chassis_pgood.md) for more 95*27ae70b8SShawn McCarneyinformation on how the error is handled. 96