xref: /openbmc/phosphor-power/phosphor-regulators/README.md (revision 91090e41032e4f606df9aae44377f1b3c9a48e4f)
1*91090e41SShawn McCarney## Overview
2*91090e41SShawn McCarney
3*91090e41SShawn McCarneyThe `phosphor-regulators` application configures and monitors voltage
4*91090e41SShawn McCarneyregulators.  The application is controlled by a JSON configuration file.
5*91090e41SShawn McCarney
6*91090e41SShawn McCarneyThe application does not control how voltage regulators are enabled or how to
7*91090e41SShawn McCarneymonitor their Power Good (pgood) status.  Those operations are typically
8*91090e41SShawn McCarneyperformed by power sequencer hardware and related firmware.
9*91090e41SShawn McCarney
10*91090e41SShawn McCarney
11*91090e41SShawn McCarney## Configuring Voltage Regulators
12*91090e41SShawn McCarney
13*91090e41SShawn McCarneyThe configuration of voltage regulators can be modified.  Configuration changes
14*91090e41SShawn McCarneyusually override hardware default settings.
15*91090e41SShawn McCarney
16*91090e41SShawn McCarneyThe most common configuration change is setting the output voltage for a
17*91090e41SShawn McCarneyregulator rail.  Other examples include modifying pgood thresholds and
18*91090e41SShawn McCarneyovercurrent settings.
19*91090e41SShawn McCarney
20*91090e41SShawn McCarneyThe configuration changes are applied early in the boot process before
21*91090e41SShawn McCarneyregulators are enabled.
22*91090e41SShawn McCarney
23*91090e41SShawn McCarney
24*91090e41SShawn McCarney## Monitoring Voltage Regulators
25*91090e41SShawn McCarney
26*91090e41SShawn McCarneyTwo types of regulator monitoring are supported:
27*91090e41SShawn McCarney* Sensor monitoring
28*91090e41SShawn McCarney* Phase fault monitoring
29*91090e41SShawn McCarney
30*91090e41SShawn McCarney### Sensor Monitoring
31*91090e41SShawn McCarney
32*91090e41SShawn McCarneyThe sensor values for a voltage rail are read, such as voltage output, current
33*91090e41SShawn McCarneyoutput, and temperature.  Sensor values are measured, actual values rather than
34*91090e41SShawn McCarneytarget values.
35*91090e41SShawn McCarney
36*91090e41SShawn McCarneySensors are read once per second.  The sensor values are stored on D-Bus on the
37*91090e41SShawn McCarneyBMC, making them available to external interfaces like Redfish.
38*91090e41SShawn McCarney
39*91090e41SShawn McCarney### Phase Fault Monitoring
40*91090e41SShawn McCarney
41*91090e41SShawn McCarneySome voltage regulators contain redundant phases.  If a redundant phase fails,
42*91090e41SShawn McCarneythe regulator can continue functioning normally.  However redundancy has been
43*91090e41SShawn McCarneylost, and the regulator may fail if another phase fails.
44*91090e41SShawn McCarney
45*91090e41SShawn McCarneyVoltage regulators can be monitored for redundant phase faults.  If a fault is
46*91090e41SShawn McCarneydetected, an error is logged on the BMC.
47*91090e41SShawn McCarney
48*91090e41SShawn McCarney
49*91090e41SShawn McCarney## JSON Configuration File
50*91090e41SShawn McCarney
51*91090e41SShawn McCarneyThe JSON configuration file defines the following:
52*91090e41SShawn McCarney* Voltage regulators in the system.
53*91090e41SShawn McCarney* Operations to perform on those regulators, such as configuration or sensor
54*91090e41SShawn McCarney  monitoring.
55*91090e41SShawn McCarney
56*91090e41SShawn McCarneyConfiguration files are stored in the `config_files` directory.
57*91090e41SShawn McCarney
58*91090e41SShawn McCarneySee the [configuration file documentation](docs/config_file/README.md) for
59*91090e41SShawn McCarneyinformation on the file format, validation tool, and installation directories.
60