xyz.openbmc_project.Control.ThermalMode interface

With the addition of the Control.ThermalMode interface, a supported list
of thermal modes and the current mode being used by the thermal control
application is available. A current mode of "Default" is always provided
by the chosen thermal control application. Then the thermal control
application is configured to populate the list of supported modes for
the given platform. This allows flexibility in the thermal control
application to provide only the modes that it supports for any given
platform and the names chosen for those modes.

Requires commits:
    openbmc/sdbusplus f0dd3b5a3c6c54b4f38844b573e3f157f8064088
        (https://gerrit.openbmc-project.xyz/18073)

Change-Id: Ieff3ff6e328bfa2e850f52abaad6409b362ae7e7
Signed-off-by: Matthew Barth <msbarth@us.ibm.com>
diff --git a/xyz/openbmc_project/Control/ThermalMode.interface.yaml b/xyz/openbmc_project/Control/ThermalMode.interface.yaml
new file mode 100644
index 0000000..8ec8eba
--- /dev/null
+++ b/xyz/openbmc_project/Control/ThermalMode.interface.yaml
@@ -0,0 +1,26 @@
+description: >
+    Implement to provide alternative thermal control modes of a system
+    that can be enabled, overriding the system defaults.
+
+    Control.ThermalMode.Supported is read only.
+        Implementation of this interface populates the list of supported modes.
+    Control.ThermalMode.Current is read/write.
+        Implementation specific mode for the thermal control application
+        to run in.
+
+properties:
+    - name: Supported
+      type: array[string]
+      flags:
+          - const
+      description: >
+          An implemention specific list of supported modes that the thermal
+          control application can be configured to provide for a platform.
+    - name: Current
+      type: string
+      default: "Default"
+      description: >
+          The current mode the thermal control application should execute in
+          selected from the supported modes provided.
+
+# vim: tabstop=8 expandtab shiftwidth=4 softtabstop=4