Jean Delvare
e01466d993
New public library function: sensors_get_subfeature(). Applications can
...
use it to retrieve a specific subfeature by type. While it is slighly
less efficient than looping over sensors_get_all_subfeatures(), it
often makes the application code much more elegant.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4846 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-09-23 12:30:28 +00:00
Jean Delvare
da7b4e48da
Introduce a separate type for main features. Make subfeatures map to
...
the real main feature rather than the first subfeature.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4838 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-09-23 12:16:50 +00:00
Jean Delvare
65f1d1f1cd
Rename subfeature types from *_FEATURE_* to *_SUBFEATURE_*, to better
...
reflect what they represent.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4837 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-09-23 12:12:19 +00:00
Jean Delvare
96c914bfda
Define a separate structure to represent main features. This allows
...
for faster main features lookup. One side effect of this change is
that subfeatures can no longer have labels nor be ignored. I do not
think that this is a problem in practice, and actually this makes a
lot of sense.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4834 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-09-23 12:05:16 +00:00
Jean Delvare
bfe337fe76
Store current temperature, voltage and fan values together with
...
the rest of the subfeatures. This makes the code more simple, and
prepares for current values to be subfeatures like any others (i.e.
they can be missing.)
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4833 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-09-23 12:02:59 +00:00
Jean Delvare
79086fb7b8
Rename struct sensors_feature_data to sensors_subfeature. This is a
...
first step towards a clean separation between main features and
subfeatures.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4832 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-09-23 12:02:22 +00:00
Jean Delvare
eba601a964
Split sensors_get_all_features() into two distinct functions, one to
...
get the list of all main features, and one to get the list of all the
subfeatures of a given main feature. This is a more logical interface for
applications to use. The current implementation is admittedly less than
optimal, because the storage structures weren't meant for it, but this
issue can (and will) be addressed later.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4831 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-09-23 12:00:59 +00:00
Jean Delvare
a46211007e
Better error handling when a feature value can't be read.
...
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4822 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-09-19 16:53:16 +00:00
Jean Delvare
0464f51062
Fix fan fault handling. We were testing for fan fault before actually
...
retrieving the fan features, so faults could not be detected. Swapping
the instructions fixes it.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4801 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-09-18 09:38:14 +00:00
Jean Delvare
3ff2df927b
Fix sensors output when a temperature channel has a critical limit but
...
no max limit (for example the coretemp driver.)
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4791 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-09-08 10:47:03 +00:00
Jean Delvare
8b30917c16
Don't print an error message when libsensors returns a feature
...
we don't know. Just ignore that feature.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4774 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-09-05 15:56:28 +00:00
Jean Delvare
29bea1e843
Add support for the standard beep_enable attribute ( #2248 ).
...
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4766 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-09-05 12:28:31 +00:00
Jean Delvare
87efbc06c5
Rename sensors_feature_data.mode to flags, as we plan to use it to
...
store non-mode flags soon.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4757 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-09-05 08:13:15 +00:00
Jean Delvare
5b1068a007
Rename SENSORS_FEATURE_TEMP_SENS to SENSORS_FEATURE_TEMP_TYPE. This
...
better reflects what this feature is, in line with the sysfs file name.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4730 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-08-29 14:08:47 +00:00
Jean Delvare
2ee12591df
Remove "generic" from all printing function names. This is the default
...
mode now so no need to mention it explicitly.
Rename print_vid_info to print_chip_vid and move it around for
consistency.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4728 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-08-26 21:26:20 +00:00
Jean Delvare
eaeaffb89b
Fix a memory leak on error in raw print mode.
...
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4726 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-08-26 21:14:37 +00:00
Jean Delvare
4e5d695411
Don't print the feature name for subfeatures in raw mode. Subfeatures
...
typically don't have a label so printing their label is equivalent
to printing their name, so printing it again is redundant.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4725 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-08-26 21:10:42 +00:00
Jean Delvare
deb41a945d
Move print_chip_raw() at the top of the file, as it is indepdendent from
...
all the other functions.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4724 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-08-26 20:55:36 +00:00
Jean Delvare
9fe77731a9
Fix error message in print_chip_raw().
...
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4723 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-08-26 20:52:24 +00:00
Jean Delvare
60b2bafabd
Drop function get_feature_value, it wasn't adding much value.
...
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4720 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-08-26 20:41:53 +00:00
Jean Delvare
868fd8d093
Avoid the conversions from double to float.
...
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4719 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-08-26 20:41:03 +00:00
Jean Delvare
4716a8c8f1
Change print_temp_limits() to expose a sane interface. This lets us get
...
rid of arbitrary constants. Now we can reuse the same code to display
the extra temperature limits.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4718 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-08-26 20:37:15 +00:00
Jean Delvare
9da5883c98
Move the printing of the current temperature out of print_temp_info().
...
That way we don't need to use an arbitrary value to carry the fault
information.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4717 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-08-26 20:36:46 +00:00
Jean Delvare
02e4d6fe83
print_temp_info is only ever called with precision values of 1, so we
...
can hard-code this precision for improved performance.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4716 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-08-26 20:35:26 +00:00
Jean Delvare
2cc20c4487
Only consider the main features when computing how much room we need
...
to print the labels. This is both a fix (beforehand we would leave
enough room to print possibly long subfeature names, even though we
do not actually print subfeature names at all) and a significant
performance boost. This change alone shrinks the CPU cost of a sensors
run by 4.5%.
I am still worried that this feature causes us to allocate each label
string twice, but I guess this overhead is now acceptable.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4715 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-08-26 20:34:55 +00:00
Jean Delvare
f0f3df8a48
Labels do fit in the imparted space by construction now, so no need
...
to check.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4714 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-08-26 20:33:21 +00:00
Jean Delvare
7ba794d9ba
Clean up the global variables:
...
* do_sets, do_raw and hide_adapter are only used in main.c and could
thus be declared static.
* fahrenheit and degstr are used in chips.c as well, so they should be
declared in a header file.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4713 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-08-26 13:24:46 +00:00
Jean Delvare
c649ae5ac3
Merge chips_generic.c into chips.c. The boundary between both files was
...
only historical, and prevents us from doing a number of cleanups.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4710 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-08-26 12:19:07 +00:00
Jean Delvare
252c5faf86
Mass reindent and coding style cleanups.
...
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4708 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-08-26 10:57:16 +00:00
Jean Delvare
bf1ff10ab4
Relabel "sensors -u" from "unknown chip" to "raw chip". sensors uses generic
...
code to display all the chips now so the notion of "unknown chip" no longer
exists, however this raw output format can still be useful for debugging.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4698 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-08-23 07:45:58 +00:00
Jean Delvare
b0fb417996
sensors_get_value() and sensors_set_value(), respectively.
...
The new names better reflect what the functions do.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4695 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-08-22 17:06:13 +00:00
Jean Delvare
8bcdc331a0
Change the prototype of sensors_get_label(). Errors can be reported
...
with a NULL pointer.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4694 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-08-22 17:05:01 +00:00
Jean Delvare
3bab00fff9
Change the libsensors API so that all structures are passed by
...
reference. This is more efficient that way.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4666 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-08-13 20:16:03 +00:00
Jean Delvare
9896986247
We no longer need sensors_get_label_and_valid(), as it does hardly
...
more than sensors_get_label(). This allows for some cleanups.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4645 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-07-24 08:21:23 +00:00
Jean Delvare
e9c8c5fb06
Let libsensors handle ignore statements by itself, rather than
...
delegating the task to the user applications.
For now, I am calling sensors_get_ignored() in
sensors_get_all_features(), because this is the least intrusive way.
This is in no way optimal though, it would be better to not add
ignored features to the feature list in the first place. However,
doing so would require that the configuration file is read before
sysfs is scanned for features, which isn't currently the case. So
this improvement is left for later.
Note that this patch adds a small cost in terms of performance. This
is because we now honor ignore statements on all features (main ones
and subfeatures) while in practice "sensors" was only checking for
main features. It would be trivial to stop checking for subfeatures,
but it seems to me that supporting ignore on subfeatures is a good
move, as the user may actually want to ignore a specific subfeature.
Individual alarms come to mind. This will also be handy to debug the
generic print code in "sensors".
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4644 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-07-24 08:20:53 +00:00
Jean Delvare
6505fef0fd
The way we build the feature lists guarantees that subfeatures always
...
immediately follow their main feature. This makes it possible to simplify
sensors_get_all_features() quite a bit. We no longer need to maintain
separate pointers for the last main feature and the last subfeature,
we can simply walk the list linearly.
Note that I am still not entirely happy with this API. It was obviously
designed for debugging purposes (sensors -u) and without performance
concernes nor interface cleanliness in mind. I believe that we want to
tag main features and subfeatures as such, and let the application ask
specifically for the list of main features, and for each feature, for
its list of subfeatures (i.e. two functions instead of one.)
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4643 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-07-24 08:19:59 +00:00
Jean Delvare
3549a94232
Right-align FAULT flags.
...
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4578 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-07-07 15:26:12 +00:00
Hans de Goede
4d2fa4eadd
Better generic print fault handling
...
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4559 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-07-05 21:03:06 +00:00
Jean Delvare
7cc03f5029
Drop VRM reporting and selection support from libsensors. Since kernel
...
2.6.9, the right VID conversion formula is selected automatically
depending on the CPU model, so the user shouldn't have to care.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4543 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-07-03 13:22:28 +00:00
Jean Delvare
56e9e2da88
Delete needless forward declarations and wrapper.
...
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4505 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-06-28 09:02:12 +00:00
Jean Delvare
6a6cf217d4
Drop all the chip-specific handling and printing code from sensors. The
...
generic printing code should work now, and what doesn't work, will get
fixed.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4503 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-06-28 08:52:37 +00:00
Jean Delvare
768be0b9c0
Drop SENSORS_FEATURE_TEMP_LIM, it doesn't correspond to anything in the
...
standard sysfs interface.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4428 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-05-29 16:49:06 +00:00
Jean Delvare
2eece824c8
Fix alignment of alarm for one-limit temperatures.
...
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4421 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-05-28 13:26:07 +00:00
Jean Delvare
0f479b535c
Fix alignment of lm85 voltages.
...
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4376 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-04-26 08:54:39 +00:00
Hans de Goede
99c2d0194c
generic in/temp/fan printing routines for sensors prog, by Bob Schlarmann and Luuk Kleiweg
...
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4361 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-04-09 14:41:52 +00:00
Mark M. Hoffman
c5ffa7b635
Merge from trunk (4303:4355) out to 3.0.0 branch.
...
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4357 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-04-03 12:55:30 +00:00
Jean Delvare
26483311f4
sensors: Hide error on missing w83793 temp. Patch from Gong Jun (Winbond).
...
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@4291 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-01-12 10:29:25 +00:00
Jean Delvare
73922b2883
Add user-space support for the ADM1029. Patch contributed by
...
Corentin Labbe.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@4270 7894878c-1315-0410-8ee3-d5d059ff63e0
2006-12-22 21:11:07 +00:00
Jean Delvare
6310ee1f03
Add support for the w83627dhg. Original patch by David Holl.
...
This closes ticket #2157 .
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@4264 7894878c-1315-0410-8ee3-d5d059ff63e0
2006-12-18 07:43:00 +00:00
Jean Delvare
53cb805e44
Add user-space support for the Fintek F71872F/FG (chip name f71872f).
...
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@4232 7894878c-1315-0410-8ee3-d5d059ff63e0
2006-11-12 13:17:32 +00:00