xref: /openbmc/phosphor-power/phosphor-regulators/docs/configuration.md (revision 80689db1ed2f4677bd3ea3fc3b74f26900bf44d9)
1*80689db1SShawn McCarney# Regulator Configuration
2*80689db1SShawn McCarney
3*80689db1SShawn McCarney## Overview
4*80689db1SShawn McCarney
5*80689db1SShawn McCarneyThe configuration of voltage regulators can be modified. Configuration changes
6*80689db1SShawn McCarneyusually override hardware default settings.
7*80689db1SShawn McCarney
8*80689db1SShawn McCarneyThe most common configuration change is setting the output voltage for a
9*80689db1SShawn McCarneyregulator rail. Other examples include modifying pgood thresholds and
10*80689db1SShawn McCarneyovercurrent settings.
11*80689db1SShawn McCarney
12*80689db1SShawn McCarneyRegulator configuration occurs early in the system boot before regulators have
13*80689db1SShawn McCarneybeen enabled (turned on).
14*80689db1SShawn McCarney
15*80689db1SShawn McCarney## How configuration is defined
16*80689db1SShawn McCarney
17*80689db1SShawn McCarneyConfiguration is defined for a voltage regulator using the
18*80689db1SShawn McCarney[configuration](config_file/configuration.md) object in the
19*80689db1SShawn McCarney[JSON config file](config_file/README.md).
20*80689db1SShawn McCarney
21*80689db1SShawn McCarneyThis object specifies actions to run, such as
22*80689db1SShawn McCarney[pmbus_write_vout_command](config_file/pmbus_write_vout_command.md) and
23*80689db1SShawn McCarney[i2c_write_byte](config_file/i2c_write_byte.md).
24*80689db1SShawn McCarney
25*80689db1SShawn McCarney## How configuration is initiated
26*80689db1SShawn McCarney
27*80689db1SShawn McCarneyDuring the system boot, the systemd service file
28*80689db1SShawn McCarney[phosphor-regulators-config.service](../../services/phosphor-regulators-config.service)
29*80689db1SShawn McCarneyis started. This runs the `regsctl` utility. This utility invokes the D-Bus
30*80689db1SShawn McCarney`configure` method on the `phosphor-regulators` application.
31*80689db1SShawn McCarney`phosphor-regulators` will perform the configuration defined in the JSON config
32*80689db1SShawn McCarneyfile.
33*80689db1SShawn McCarney
34*80689db1SShawn McCarney## Error handling
35*80689db1SShawn McCarney
36*80689db1SShawn McCarneyIf an error occurs while executing actions to perform configuration:
37*80689db1SShawn McCarney
38*80689db1SShawn McCarney- The error will be logged.
39*80689db1SShawn McCarney- Any remaining actions for the current voltage regulator/rail will be skipped.
40*80689db1SShawn McCarney- Configuration changes will still be applied to all remaining voltage
41*80689db1SShawn McCarney  regulators in the system.
42*80689db1SShawn McCarney- The system boot will continue.
43