mirror of
https://github.com/lm-sensors/lm-sensors.git
synced 2026-11-14 19:03:13 +00:00
Add support for fan[1-*]_max, fan[1-*]_min_alarm and fan[1-*]_max_alarm
attributes. These are defined in the standard sysfs interface for quite some time, and at least three drivers (max6650, lm63 and applesmc) implement them so we should support them. git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@6029 7894878c-1315-0410-8ee3-d5d059ff63e0
This commit is contained in:
1 parent
8695f0f515
commit
a3e40509e0
4 files changed
+34
-13
No files matched your search
@@ -16,6 +16,9 @@ SVN HEAD
|
||||
enum sensors_subfeature_type SENSORS_SUBFEATURE_CURR_AVERAGE
|
||||
enum sensors_subfeature_type SENSORS_SUBFEATURE_CURR_LOWEST
|
||||
enum sensors_subfeature_type SENSORS_SUBFEATURE_CURR_HIGHEST
|
||||
enum sensors_subfeature_type SENSORS_SUBFEATURE_FAN_MAX
|
||||
enum sensors_subfeature_type SENSORS_SUBFEATURE_FAN_MIN_ALARM
|
||||
enum sensors_subfeature_type SENSORS_SUBFEATURE_FAN_MAX_ALARM
|
||||
0x431 lm-sensors 3.3.0 to 3.3.1
|
||||
* Added support for intrusion detection
|
||||
enum sensors_feature_type SENSORS_FEATURE_INTRUSION
|
||||
|
||||
@@ -169,11 +169,14 @@ typedef enum sensors_subfeature_type {
|
||||
|
||||
SENSORS_SUBFEATURE_FAN_INPUT = SENSORS_FEATURE_FAN << 8,
|
||||
SENSORS_SUBFEATURE_FAN_MIN,
|
||||
SENSORS_SUBFEATURE_FAN_MAX,
|
||||
SENSORS_SUBFEATURE_FAN_ALARM = (SENSORS_FEATURE_FAN << 8) | 0x80,
|
||||
SENSORS_SUBFEATURE_FAN_FAULT,
|
||||
SENSORS_SUBFEATURE_FAN_DIV,
|
||||
SENSORS_SUBFEATURE_FAN_BEEP,
|
||||
SENSORS_SUBFEATURE_FAN_PULSES,
|
||||
SENSORS_SUBFEATURE_FAN_MIN_ALARM,
|
||||
SENSORS_SUBFEATURE_FAN_MAX_ALARM,
|
||||
|
||||
SENSORS_SUBFEATURE_TEMP_INPUT = SENSORS_FEATURE_TEMP << 8,
|
||||
SENSORS_SUBFEATURE_TEMP_MAX,
|
||||
|
||||
@@ -271,9 +271,12 @@ static const struct subfeature_type_match in_matches[] = {
|
||||
static const struct subfeature_type_match fan_matches[] = {
|
||||
{ "input", SENSORS_SUBFEATURE_FAN_INPUT },
|
||||
{ "min", SENSORS_SUBFEATURE_FAN_MIN },
|
||||
{ "max", SENSORS_SUBFEATURE_FAN_MAX },
|
||||
{ "div", SENSORS_SUBFEATURE_FAN_DIV },
|
||||
{ "pulses", SENSORS_SUBFEATURE_FAN_PULSES },
|
||||
{ "alarm", SENSORS_SUBFEATURE_FAN_ALARM },
|
||||
{ "min_alarm", SENSORS_SUBFEATURE_FAN_MIN_ALARM },
|
||||
{ "max_alarm", SENSORS_SUBFEATURE_FAN_MAX_ALARM },
|
||||
{ "fault", SENSORS_SUBFEATURE_FAN_FAULT },
|
||||
{ "beep", SENSORS_SUBFEATURE_FAN_BEEP },
|
||||
{ NULL, 0 }
|
||||
|
||||
+25
-13
@@ -408,7 +408,7 @@ static void print_chip_fan(const sensors_chip_name *name,
|
||||
const sensors_feature *feature,
|
||||
int label_size)
|
||||
{
|
||||
const sensors_subfeature *sf, *sfmin, *sfdiv;
|
||||
const sensors_subfeature *sf, *sfmin, *sfmax, *sfdiv;
|
||||
double val;
|
||||
char *label;
|
||||
|
||||
@@ -435,24 +435,36 @@ static void print_chip_fan(const sensors_chip_name *name,
|
||||
|
||||
sfmin = sensors_get_subfeature(name, feature,
|
||||
SENSORS_SUBFEATURE_FAN_MIN);
|
||||
sfmax = sensors_get_subfeature(name, feature,
|
||||
SENSORS_SUBFEATURE_FAN_MAX);
|
||||
sfdiv = sensors_get_subfeature(name, feature,
|
||||
SENSORS_SUBFEATURE_FAN_DIV);
|
||||
if (sfmin && sfdiv)
|
||||
printf(" (min = %4.0f RPM, div = %1.0f)",
|
||||
get_value(name, sfmin),
|
||||
get_value(name, sfdiv));
|
||||
else if (sfmin)
|
||||
printf(" (min = %4.0f RPM)",
|
||||
get_value(name, sfmin));
|
||||
else if (sfdiv)
|
||||
printf(" (div = %1.0f)",
|
||||
get_value(name, sfdiv));
|
||||
if (sfmin || sfmax || sfdiv) {
|
||||
printf(" (");
|
||||
if (sfmin)
|
||||
printf("min = %4.0f RPM",
|
||||
get_value(name, sfmin));
|
||||
if (sfmax)
|
||||
printf("%smax = %4.0f RPM",
|
||||
sfmin ? ", " : "",
|
||||
get_value(name, sfmax));
|
||||
if (sfdiv)
|
||||
printf("%sdiv = %1.0f",
|
||||
(sfmin || sfmax) ? ", " : "",
|
||||
get_value(name, sfdiv));
|
||||
printf(")");
|
||||
}
|
||||
|
||||
sf = sensors_get_subfeature(name, feature,
|
||||
SENSORS_SUBFEATURE_FAN_ALARM);
|
||||
if (sf && get_value(name, sf)) {
|
||||
sfmin = sensors_get_subfeature(name, feature,
|
||||
SENSORS_SUBFEATURE_FAN_MIN_ALARM);
|
||||
sfmax = sensors_get_subfeature(name, feature,
|
||||
SENSORS_SUBFEATURE_FAN_MAX_ALARM);
|
||||
if ((sf && get_value(name, sf)) ||
|
||||
(sfmin && get_value(name, sfmin)) ||
|
||||
(sfmax && get_value(name, sfmax)))
|
||||
printf(" ALARM");
|
||||
}
|
||||
|
||||
printf("\n");
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user