Add initial sensor interfaces

xyz.openbmc_project.Sensor.Value
xyz.openbmc_project.Sensor.Threshold.Warning
xyz.openbmc_project.Sensor.Threshold.Critical

Change-Id: Ib3e993d0b2e87387993d7b6c1c8b1a47e71b5af1
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
diff --git a/xyz/openbmc_project/Sensor/Value.interface.yaml b/xyz/openbmc_project/Sensor/Value.interface.yaml
new file mode 100644
index 0000000..f8c1585
--- /dev/null
+++ b/xyz/openbmc_project/Sensor/Value.interface.yaml
@@ -0,0 +1,53 @@
+description: >
+    Implement to provide sensor readings.  Objects implementing
+    Sensor.Value must be instantiated in the correct
+    hierarchy within the sensors namespace.  The following sensor
+    hierarchies are recognized:
+      temperature
+      fan_tach
+      voltage
+      altitude
+
+    Any service implementing Sensor.Value on one or more objects must
+    implement org.freedesktop.DBus.ObjectManager on the sensors namespace root.
+
+    All Sensor.Value properties are read-only.
+
+properties:
+    - name: Value
+      type: int64
+      description: >
+          The sensor reading.
+    - name: Unit
+      type: enum[self.Unit]
+      description: >
+          The unit of the reading.
+          For objects in the temperature namespace, Unit must be "DegreesC".
+          For objects in the fan_tach namespace, Unit must be "RPMS".
+          For objects in the voltage namespace, Unit must be "Volts".
+          For objects in the altitude namespace, Unit must be "Meters".
+    - name: Scale
+      type: int64
+      description: >
+          The reading scaling factor N, where the actual reading is Value * 10^N.
+
+enumerations:
+    - name: Unit
+      description: >
+        A sensor reading unit.
+      values:
+        - name: DegreesC
+          description: >
+            Temperature as degrees Celsius.
+        - name: RPMS
+          description: >
+            Frequency of rotation as revolutions per minute.
+        - name: Volts
+          description: >
+            Electomotive force as volts.
+        - name: Meters
+          description: >
+            Length as meters.
+
+
+# vim: tabstop=8 expandtab shiftwidth=4 softtabstop=4