summaryrefslogtreecommitdiffstats
path: root/mof
diff options
context:
space:
mode:
authorRadek Novacek <rnovacek@redhat.com>2012-07-30 09:47:34 +0200
committerRadek Novacek <rnovacek@redhat.com>2012-07-30 09:47:34 +0200
commit4c44beca56b4334a50518a91a7ce2835e00bc00e (patch)
treea62d32707f9ff39585f2f3f27a80dc1ac5a553c8 /mof
parent91821cba81c92e9a204fb3d9637d3fe5dbfd73c0 (diff)
downloadopenlmi-providers-4c44beca56b4334a50518a91a7ce2835e00bc00e.tar.gz
openlmi-providers-4c44beca56b4334a50518a91a7ce2835e00bc00e.tar.xz
openlmi-providers-4c44beca56b4334a50518a91a7ce2835e00bc00e.zip
fan: port Fan provider to KonkretCMPI
Diffstat (limited to 'mof')
-rw-r--r--mof/Linux_Fan.mof112
1 files changed, 112 insertions, 0 deletions
diff --git a/mof/Linux_Fan.mof b/mof/Linux_Fan.mof
new file mode 100644
index 0000000..33dc7d1
--- /dev/null
+++ b/mof/Linux_Fan.mof
@@ -0,0 +1,112 @@
+//
+// Linux_Fan.mof
+//
+
+#pragma locale ("en_US")
+//#pragma namespace ("root/cimv2")
+
+// ===================================================================
+// Linux_Fan
+// ===================================================================
+
+[ Provider("cmpi:cmpiLinux_FanProvider") ]
+class Linux_Fan : CIM_Fan {
+
+ [ Key, Override("DeviceID"),
+ Description("Uniquely identifies fan. It is a composition of
+ SysPath and Name glued with slash ('/').") ]
+ string DeviceID;
+
+ [ Override("Name"),
+ Description("Name of fan provided by system.") ]
+ string Name;
+
+ [ Description("Array of fan features, that are exposed through system
+ interface. In other words: those that are readible/writable."),
+ ValueMap { "1", "2", "3", "4", "5", "6", "7", "8" },
+ Values { "MinSpeed", "MaxSpeed", "Divisor", "Pulses", "Beep",
+ "Alarm", "MinAlarm", "MaxAlarm" }
+ ]
+ uint16 AccessibleFeatures[];
+
+ [ Description("Minimum speed value."),
+ Write,
+ Units("Revolutions per Minute") ]
+ uint64 MinSpeed;
+
+ [ Description("Maximum speed value."),
+ Write,
+ Units("Revolutions per Minute") ]
+ uint64 MaxSpeed;
+
+ [ Description("Fan divisisor. It affects Minimum and Maximum speed value
+ and accuracy of readings.
+ The drivers account for the 'fan divisor' in their calculation
+ of RPM. So changing the fan divisor will NOT change the
+ nominal RPM reading, it will only affect the minimum and maximum
+ readings and the accuracy of the readings.
+ The actual formula is RPM = (60 * 22500) / (count * divisor)"),
+ Write ]
+ uint32 Divisor;
+
+ [ Description("Number of tachometer pulses per fan revolution.
+ Integer value, typically between 1 and 4.
+ This value is a characteristic of the fan connected to the
+ device's input, so it has to be set in accordance with the fan
+ model."),
+ Write ]
+ uint32 Pulses;
+
+ [ Description("This indicates, whether a PC's speaker should beep
+ when an alarm occurs."),
+ Write ]
+ boolean Beep;
+
+ [ Description("ALARM warning indicating, that current speed is out of
+ range. This information is supplied by fan's chip driver.") ]
+ boolean Alarm;
+
+ [ Description("ALARM warning indicating, that current speed is below
+ the critical level. This information is supplied by fan's chip driver.")
+ ]
+ boolean MinAlarm;
+
+ [ Description("ALARM warning indicating, that current speed is above
+ the critical level. This information is supplied by fan's chip driver.")
+ ]
+ boolean MaxAlarm;
+
+};
+
+// ===================================================================
+// Linux_FanSensor
+// ===================================================================
+[ Provider("cmpi:cmpiLinux_FanSensorProvider") ]
+class Linux_FanSensor : CIM_NumericSensor {
+
+ [ Key, Override("DeviceID"),
+ Description("Uniquely identifies fan. It is a composition of
+ SysPath and Name glued with slash ('/').") ]
+ string DeviceID;
+
+ [ Override("Name"),
+ Description("Name of fan provided by system.") ]
+ string Name;
+
+};
+
+
+// ===================================================================
+// Associations
+// ===================================================================
+[ Association,
+ Provider("cmpi:cmpiLinux_FanAssociatedSensorProvider") ]
+class Linux_FanAssociatedSensor : CIM_AssociatedSensor {
+
+ [ Override("Antecedent") ]
+ Linux_FanSensor REF Antecedent;
+
+ [ Override("Dependent") ]
+ Linux_Fan REF Dependent;
+
+};