1description: >
2    Implement to provide control of voltage regulator devices from dbus
3    Control.VoltageRegulatorProfile.Supported is read only.  Implementation of
4    the Supported property populates the list of supported modes.  In the case
5    where the VR has a well defined default, implementations should place the
6    default in index 0. Control.VoltageRegulatorProfile.Current is read/write
7    and sets the implementation specific mode for the voltage regulator to run
8    in.  The definitions of said enum are implementation defined, as systems
9    likely will have a multitude of possible states.  Some examples of naming
10    might be "HighPower" or "LowPower" in the case of bipolar power states, or
11    might be something more complex like, "Profile 1", "Profile 2", "Profile 3"
12    if the VR itself defines the interfaces. Implementations may implement this
13    alongside to a VoltageRegulatorControl interface, and may react to the
14    results of changes to the Control interface.
15
16    Any service implementing Control.VoltageRegulatorControlMode on one or more
17    objects must implement org.freedesktop.DBus.ObjectManager on
18    /xyz/openbmc_project/vr. DBus objects must fall under this path so that they
19    can be found through the GetManagedObjects DBus method.
20
21properties:
22    - name: Supported
23      type: array[string]
24      flags:
25          - readonly
26      description: >
27          An implementation specific list of supported modes that the voltage
28          regulator control application can be configured to provide for a
29          platform.
30    - name: Selected
31      type: string
32      default: "Default"
33      description: >
34          The current mode the voltage regulator control application should
35          use.  This can be read to verify the current mode, or written to
36          change to a new mode.
37