xref: /openbmc/phosphor-power/phosphor-regulators/README.md (revision cde5b16c3dcaa2a416fd0c0281b22a49f98ced19)
1*cde5b16cSGeorge Liu# phosphor-regulators
2*cde5b16cSGeorge Liu
391090e41SShawn McCarney## Overview
491090e41SShawn McCarney
591090e41SShawn McCarneyThe `phosphor-regulators` application configures and monitors voltage
691090e41SShawn McCarneyregulators. The application is controlled by a JSON configuration file.
791090e41SShawn McCarney
891090e41SShawn McCarneyThe application does not control how voltage regulators are enabled or how to
991090e41SShawn McCarneymonitor their Power Good (pgood) status. Those operations are typically
1091090e41SShawn McCarneyperformed by power sequencer hardware and related firmware.
1191090e41SShawn McCarney
1291090e41SShawn McCarney## Configuring Voltage Regulators
1391090e41SShawn McCarney
1491090e41SShawn McCarneyThe configuration of voltage regulators can be modified. Configuration changes
1591090e41SShawn McCarneyusually override hardware default settings.
1691090e41SShawn McCarney
1791090e41SShawn McCarneyThe most common configuration change is setting the output voltage for a
1891090e41SShawn McCarneyregulator rail. Other examples include modifying pgood thresholds and
1991090e41SShawn McCarneyovercurrent settings.
2091090e41SShawn McCarney
2191090e41SShawn McCarneyThe configuration changes are applied early in the boot process before
2291090e41SShawn McCarneyregulators are enabled.
2391090e41SShawn McCarney
2491090e41SShawn McCarney## Monitoring Voltage Regulators
2591090e41SShawn McCarney
2691090e41SShawn McCarneyTwo types of regulator monitoring are supported:
270dbce568SPatrick Williams
280dbce568SPatrick Williams- Sensor monitoring
290dbce568SPatrick Williams- Phase fault monitoring
3091090e41SShawn McCarney
3191090e41SShawn McCarney### Sensor Monitoring
3291090e41SShawn McCarney
3391090e41SShawn McCarneyThe sensor values for a voltage rail are read, such as voltage output, current
3491090e41SShawn McCarneyoutput, and temperature. Sensor values are measured, actual values rather than
3591090e41SShawn McCarneytarget values.
3691090e41SShawn McCarney
3791090e41SShawn McCarneySensors are read once per second. The sensor values are stored on D-Bus on the
3891090e41SShawn McCarneyBMC, making them available to external interfaces like Redfish.
3991090e41SShawn McCarney
4091090e41SShawn McCarney### Phase Fault Monitoring
4191090e41SShawn McCarney
4291090e41SShawn McCarneySome voltage regulators contain redundant phases. If a redundant phase fails,
4391090e41SShawn McCarneythe regulator can continue functioning normally. However redundancy has been
4491090e41SShawn McCarneylost, and the regulator may fail if another phase fails.
4591090e41SShawn McCarney
4691090e41SShawn McCarneyVoltage regulators can be monitored for redundant phase faults. If a fault is
4791090e41SShawn McCarneydetected, an error is logged on the BMC.
4891090e41SShawn McCarney
4991090e41SShawn McCarney## JSON Configuration File
5091090e41SShawn McCarney
5191090e41SShawn McCarneyThe JSON configuration file defines the following:
520dbce568SPatrick Williams
530dbce568SPatrick Williams- Voltage regulators in the system.
540dbce568SPatrick Williams- Operations to perform on those regulators, such as configuration or sensor
5591090e41SShawn McCarney  monitoring.
5691090e41SShawn McCarney
5791090e41SShawn McCarneyConfiguration files are stored in the `config_files` directory.
5891090e41SShawn McCarney
5991090e41SShawn McCarneySee the [configuration file documentation](docs/config_file/README.md) for
6091090e41SShawn McCarneyinformation on the file format, validation tool, and installation directories.
61