Commit Graph
55 Commits
Author SHA1 Message Date
Jean Delvare 7a2ab38ecf Move sensors_proc_read and sensors_proc_write to sysfs.c, and rename them
to something more in line with what they do.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4553 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-07-05 15:03:22 +00:00
Hans de Goede eeee6f9bb7 Add support for foo#_label sysfs files
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4550 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-07-04 07:54:37 +00:00
Jean Delvare b79274babd Add some more warning flags, and fix these warnings.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4545 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-07-03 16:03:22 +00:00
Jean Delvare c7c77845d2 Make a few libsensors functions static.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4544 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-07-03 14:26:26 +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 dced776a12 Use sscanf instead of regex to match the feature names. This is much faster.
As a side effect, this fixes a memory leak (the regex engine data was never
freed.)


git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4538 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-07-03 08:18:21 +00:00
Jean Delvare 78d9053547 There are no sensor* sysfs files.
The VID value is in cpu*_vid, not vid.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4520 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-06-29 11:46:20 +00:00
Jean Delvare 0c46611b20 Drop two unused macros.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4519 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-06-29 08:21:38 +00:00
Jean Delvare e08eabe33c We no longer need alternative sysfs file names and magnitudes, as they are
the real name and magnitude now.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4513 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-06-28 18:19:58 +00:00
Jean Delvare 92b5982180 With the new dynamic chip features enumeration code, the sensors_proc_chips
and sensors_chip_features_list arrays tend to track the same information.
So it's much more simple, and more efficient, to have a single array. I
decided to keep sensors_proc_chips, because it already has memory management
helpers. One nice side effect is that the arbitrary limit to the number of
supported chips is now gone. Another one is that some of the memory leaks
were fixed.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4510 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-06-28 14:39:34 +00:00
Jean Delvare 063f4b91d4 Use complete chip names (prefix + bus + address) as the keys of
sensors_chip_features_list[]. Using only the prefix (as was done before)
makes it impossible to properly support multiple chips with the same prefix
but a different feature set.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4508 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-06-28 12:09:00 +00:00
Jean Delvare 8138489a72 struct sensors_proc_chips_entry now has a single member, so we may
as well use this member directly for slightly more simple code.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4474 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-06-26 11:33:09 +00:00
Jean Delvare 24f6b62c3f Delete all remnants of algorithm names.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4465 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-06-25 14:21:01 +00:00
Jean Delvare 33a3d6fba2 Drop SENSORS_FEATURE_TEMP_OVER, SENSORS_FEATURE_TEMP_HIGH and
SENSORS_FEATURE_TEMP_LOW, they don'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@4427 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-05-29 16:23:19 +00:00
Jean Delvare a08cf956fb Fixes to the dynamic chip support:
* Fix the handling of temperature hysteresis. Hysteresis is not a
  temperature limit by itself, but a property of temperature limit.
* Handle per-limit temperature alarms.
With these fixes, the ADM1032 is properly supported by the new code.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4423 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-05-28 14:22:58 +00:00
Hans de Goede bd74aa2390 -rewrite dyn chip code, it now uses sensors_feature_get_type() to
identify sysfs entries. Reasons for this rewrite / bugs fixed:
 -Don't give features like alarms / sensor type / fault flag a
  compute mapping only a normal mapping
 -Don't generate features for sysfs entries like uvent, modalias, etc.
  instead only generate features for features known by
  sensors_feature_get_type()
 -Sort the list of found features logically instead of sorted in alphabet order
  of the sysfs entry. So now it starts with all in entries, then all fan and
  then all temp. Just like the order of most entries in lib/chips.c. Also
  this means that it now contains in0 - in10 in that order and not in0, in10,
  in1 - in9


git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4368 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-04-10 11:51:07 +00:00
Hans de Goede 16408d8665 -comment abituguru entry in lib/chips.c and prog/sensors/main.c, as the
abituguru seems to work well with the new dynamic chip support and generic
 chip printroutines. note: the abituguru code should be completly removed in
 the future.
-comment k8temp entry in lib/chips.c and prog/sensors/main.c, as the
 k8temp seems to work well with the new dynamic chip support and generic
 chip printroutines. note: the k8temp code should be completly removed in
 the future.
-make the match for the subtype exact instead of a strncmp, otherwise
 an alarm_enable flag gets classified as an alarm, leading to all sensors who
 have their alarm enabled getting an alarm reported, as the alarm_enabled gets
 read as alarm.
-and do the same for the _input match to check if this is a main or subfeature


git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4367 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-04-09 18:07:07 +00:00
Hans de Goede ba5140b3d8 Generic chip support / get featuretype fixes just received from Bob Schlarmann, as the version I committed wasn't the latest version
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4366 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-04-09 17:48:57 +00:00
Hans de Goede 78a521b1a8 Some fixes for problems with the dyn chip support / generic printing routines which showed up while testing with the abituguru driver
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4364 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-04-09 14:52:28 +00:00
Hans de Goede 05087736f8 add sensors_feature_get_type method, by Bob Schlarmann and Luuk Kleiweg
git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4360 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-04-09 14:40:05 +00:00
Mark M. Hoffman 6968eb16fe The sensors library relied on one structure having an identical layout in
memory as part of another structure.  This rather large patch fixes that by
making the smaller piece an explicit member of the larger.

I brought this patch into sync with the latest SVN, and tested it by comparing
objects files from the tree pre- and post- patch.

The remaining 99% of the credit goes to Bob Schlärmann <bob2@dsv.nl> for
creating the original patch... thanks Bob!

* Bob Schlärmann <bob2@dsv.nl> [2006-12-24 18:29:39 +0100]:
> The following patch changes all of the lib/chips.c entries and any function
> that uses sensors_chip_feature. Most of the conversion was done through a
> perl script, so if you don't agree with the syntax it'll be easy to change.



git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@4287 7894878c-1315-0410-8ee3-d5d059ff63e0
2007-01-09 02:46:13 +00:00
Jean Delvare 0a36a5daa3 Better parse error messages.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@4266 7894878c-1315-0410-8ee3-d5d059ff63e0
2006-12-21 07:48:08 +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 6270cf381a libsensors: Drop support for algorithm names.
I2C algorithms no longer have names in Linux 2.6, and anyway they are
implementation details user-space doesn't care about. No third party
application is known to have ever used this particular feature of
libsensors. "sensord" and "sensors" no longer do.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@4208 7894878c-1315-0410-8ee3-d5d059ff63e0
2006-10-13 19:55:41 +00:00
Rudolf Marek 3027d75a12 Add PCI bus support
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@4098 7894878c-1315-0410-8ee3-d5d059ff63e0
2006-08-19 15:23:10 +00:00
Mark M. Hoffman 0705e4d581 Reformat of lib/access.c:
First ran .../scripts/Lindent from Linux 2.6.x, then fixed up some
things that were particularly ugly.  Verified the final result by
rebuilding and running 'objdump -d' on the before and after; there
were no differences.



git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@4073 7894878c-1315-0410-8ee3-d5d059ff63e0
2006-07-25 02:12:37 +00:00
Mark M. Hoffman b4598af0aa Remove a workaround for sysfs support that is no longer needed.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@3113 7894878c-1315-0410-8ee3-d5d059ff63e0
2005-10-01 15:31:35 +00:00
Mark M. Hoffman 87fba1c487 (mmh)
This patch adds the files lib/sysfs.h and lib/sysfs.c, beginning with a rewrite
of the sysfs detection code (using libsyfs).  In the process, I replaced two
poorly named globals with better names, and moved them to sysfs.c.  The sysfs
detection now happens very early during library init, rather than later.

The long term plan is for the two global variables to disappear anyway, as
everything to do with sysfs should get moved into lib/sysfs.c.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@3093 7894878c-1315-0410-8ee3-d5d059ff63e0
2005-09-18 20:30:44 +00:00
Jean Delvare 57e3589237 Declare foundsysfs in proc.h.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@3080 7894878c-1315-0410-8ee3-d5d059ff63e0
2005-09-10 20:09:42 +00:00
Jean Delvare f98d12b4b5 Fix memory leak in sensors_get_label(). Reported by John Naylon.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@3031 7894878c-1315-0410-8ee3-d5d059ff63e0
2005-07-15 08:57:43 +00:00
Jean Delvare 26f600b2aa Fix a bug in libsensors which caused some failed feature writes
("set lines") to go unnoticed. lm78's fan3_div (which is read-only
        but stored in a R/W file in procfs) was one of them.
        Make sensors' error message in this case more explicit.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2692 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-09-19 17:37:18 +00:00
Mark M. Hoffman 71a96916d5 Patch by Philipp Thomas <pth@suse.de>:
> Current gcc versions warn when type punning is used, as this breaks the
> strict aliasing analysis gcc 3.3 does by default. When checking the causes
> for these warnings I discovered that sensors_malloc_array,
> sensors_free_array, sensors_add_array_el and sensors_add_array_els in
> lib/general.c all take a 'void **' for the list. This is plain wrong as
> the C standard only allow 'char *' and 'void *' to alias any other type, so
> if these functions should take a generic pointer, it *must* be a 'void *'
> that's internally cast to a 'void **'.
>
> The attached patch does this and adapts all places where these functions are
> called. Note that when done correctly, no cast what-so-ever in the calling
> code is needed.
>
> The patch is against current lm_sensors2 cvs version.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2345 7894878c-1315-0410-8ee3-d5d059ff63e0
2004-03-08 04:39:50 +00:00
Mark D. Studebaker 86a6cdbb06 retrieve i2c adapter name from sysfs
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2060 7894878c-1315-0410-8ee3-d5d059ff63e0
2003-11-16 19:43:05 +00:00
Mark D. Studebaker 27e9877012 Add preliminary sysfs support. Two entries added to struct sensors_chip_feature.
chips.c support added only for w83781d as an example.
      Advance library version to 3.0.0.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2059 7894878c-1315-0410-8ee3-d5d059ff63e0
2003-11-16 17:57:29 +00:00
Mark D. Studebaker 96045bea38 Add separate error returns and messages for read and write errors.
Add missing message for "general parse error" - a nasty bug.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@1979 7894878c-1315-0410-8ee3-d5d059ff63e0
2003-08-25 00:28:26 +00:00
Mark D. Studebaker 1d0d09cc26 add library support for logarithms and exponents (!) to support
vt1211 / vt8235 thermistor calculations. Add such calculations to
      vt1211/vt8235 section in sensors.conf; bump library version to 1.4.0.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@1667 7894878c-1315-0410-8ee3-d5d059ff63e0
2002-12-09 02:55:58 +00:00
Mark D. Studebaker 5a24ce81e4 sensors support for ipmi. Includes limited support for
add'l dummy adaps in libsensors


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@1606 7894878c-1315-0410-8ee3-d5d059ff63e0
2002-11-16 03:12:18 +00:00
Mark D. Studebaker 5ef460df5c fix access mode checking
reported by Jean Delvare


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@1456 7894878c-1315-0410-8ee3-d5d059ff63e0
2002-07-15 01:42:17 +00:00
Frodo Looijaard 8199abde46 New sensors.conf keyword 'ignore'
This often-asked for, long-planned and somewhat-forgotten feature
makes it possible to tell libsensors-linked applications (like
the sensors program) that certain features should not be displayed.
This is very nice for things like unconnected temperature sensors
or fans.

Modifications to the library code, to the sensors program and to
the documentation and example sensors.conf file.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@676 7894878c-1315-0410-8ee3-d5d059ff63e0
1999-12-24 22:44:41 +00:00
Frodo Looijaard 296ac5f517 Oops, corrupted access.c in the last commit...
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@650 7894878c-1315-0410-8ee3-d5d059ff63e0
1999-12-01 21:12:03 +00:00
Frodo Looijaard 59bd758cd7 Something in the README about ways to determine your chips
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@649 7894878c-1315-0410-8ee3-d5d059ff63e0
1999-12-01 21:07:51 +00:00
Frodo Looijaard 24792039f6 Adrian's copyright patch applied
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@207 7894878c-1315-0410-8ee3-d5d059ff63e0
1999-02-08 22:50:29 +00:00
Frodo Looijaard 566c22c058 Command-line chip specifications introduced in prog/sensors; minor
lib problem resolved.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@140 7894878c-1315-0410-8ee3-d5d059ff63e0
1998-12-29 20:33:34 +00:00
Frodo Looijaard c2b1fec9fc Library and application support for 'set' statements
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@138 7894878c-1315-0410-8ee3-d5d059ff63e0
1998-12-29 19:48:43 +00:00
Frodo Looijaard 1654f21fc5 Some library cleanup; no interface changes
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@120 7894878c-1315-0410-8ee3-d5d059ff63e0
1998-12-25 22:15:48 +00:00
Frodo Looijaard faa996f454 Moved some library functions around, to put them in more logical files.
No external changes.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@119 7894878c-1315-0410-8ee3-d5d059ff63e0
1998-12-25 21:51:59 +00:00
Frodo Looijaard 2b415b8690 Unknown chip support
Some basic support, in the form of sensors_get_all_features(), for chips that
are known to the library, but unknown to the application. prog/sensors has
a demo of how to use this, in function print_unknown_chip in chips.c.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@110 7894878c-1315-0410-8ee3-d5d059ff63e0
1998-12-24 18:40:58 +00:00
Frodo Looijaard 1c12665831 Expanded expressions, slightly new syntax
An expression can now refer to the value it has to compute (@), but also to
other values. This is now perfectly valid as an expression:
  vid + in_min - in_max * 2 / @
Not that this is very sensible, but you get the idea. Please install the
new example config file, or replace all old 'val' occurences with '@'.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@107 7894878c-1315-0410-8ee3-d5d059ff63e0
1998-12-24 01:13:44 +00:00
Frodo Looijaard eb21cf98d5 Corrected sensors_get_feature expression search
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@105 7894878c-1315-0410-8ee3-d5d059ff63e0
1998-12-23 01:05:45 +00:00
Frodo Looijaard 3a6f543366 Library/program updates.
YES! It now pretty-prints the LM75 and LM78 data.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@104 7894878c-1315-0410-8ee3-d5d059ff63e0
1998-12-23 00:25:53 +00:00