summaryrefslogtreecommitdiffstats
path: root/src/fan/mof
diff options
context:
space:
mode:
authorRadek Novacek <rnovacek@redhat.com>2012-07-23 12:41:11 +0200
committerRadek Novacek <rnovacek@redhat.com>2012-07-23 12:41:11 +0200
commit7bc4421f26954c2acd817c690cbbde03a4391878 (patch)
tree85bd87c085bab9fe8bf8c62ee8e41f95d283e977 /src/fan/mof
parent8061ba1c48f6b8448a458d1919cd6520e2e4a658 (diff)
downloadopenlmi-providers-7bc4421f26954c2acd817c690cbbde03a4391878.tar.gz
openlmi-providers-7bc4421f26954c2acd817c690cbbde03a4391878.tar.xz
openlmi-providers-7bc4421f26954c2acd817c690cbbde03a4391878.zip
Move all providers to src/ directory
Diffstat (limited to 'src/fan/mof')
-rw-r--r--src/fan/mof/Linux_Fan.mof112
-rw-r--r--src/fan/mof/Linux_Fan.reg18
2 files changed, 130 insertions, 0 deletions
diff --git a/src/fan/mof/Linux_Fan.mof b/src/fan/mof/Linux_Fan.mof
new file mode 100644
index 0000000..02766e6
--- /dev/null
+++ b/src/fan/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;
+
+ [ Key, 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;
+
+};
diff --git a/src/fan/mof/Linux_Fan.reg b/src/fan/mof/Linux_Fan.reg
new file mode 100644
index 0000000..9d21edb
--- /dev/null
+++ b/src/fan/mof/Linux_Fan.reg
@@ -0,0 +1,18 @@
+[Linux_Fan]
+ provider: Linux_FanProvider
+ location: cmpiLinux_FanProvider
+ type: instance method
+ namespace: root/cimv2
+
+[Linux_FanSensor]
+ provider: Linux_FanSensorProvider
+ location: cmpiLinux_FanSensorProvider
+ type: instance
+ namespace: root/cimv2
+
+[Linux_FanAssociatedSensor]
+ provider: Linux_FanAssociatedSensorProvider
+ location: cmpiLinux_FanAssociatedSensorProvider
+ type: instance association
+ namespace: root/cimv2
+