The following patch does the following:
Fixed bug with not all alarms enabled.
Added ability to read battery voltage
Select temperature sensor type at module load time.
Added setting for Inside Technologies 786LCD board to example config file
I also fixed what looked like a typo in the existing it87 section where
in6_min/max was set twice and in7 was not set. As commented I think
the equation for the negative voltages are wrong but without that motherboard
I can't verify.
With the 786LCD board sensors-detect reports a lm78 which doesn't
exist and a sis5595 which may be part of the SIS630 chip but doesn't
perform the monitoring. The it8705F/SIS950 which is on the board is
reported as a misdetect. I didn't know enough about the various chips
to figure out how to get correct detections.
David Gesswein
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@1146 7894878c-1315-0410-8ee3-d5d059ff63e0
patch from Christian Zuckschwerdt:
Hi,
On Fri, 15 Jun 2001, Mark D. Studebaker wrote:
> I looked at the patch and I see there are separate
> /proc entries for the 9 and 12 bit outputs.
> Why not just make the 12 bit output the only output using "temp"??
> I don't understand the need for all the new /proc entries,
> except perhaps for debugging inside #ifdef DEBUG.
> Would you or Jan be willing to develop a patch that way?
> I'm all for increased accuracy as a standard feature - why not?
Ok. I rewrote the patch to support standard (9bit) and enhanced (12bit)
accuracy via the "temp" entry. The "raw" interface is also gone.
There are some quirks needed for the sensors app. It seems that
prog/sensors/chips.c fixes the output to %+3.1f
Thats not good for 12bit mode which gives you 2 decimals and therefor
wrong scaling.
Precision is .062 with 12bit (4 decimal bits) instead of .5 with 9bit (1
decimal bit). That way 2 decimals seem a natural choice.
On the other hand I see no obvious reason not to fix decimals to 1...
I'm lost there -- suggestions anyone?
Another problem is that 12bit is slow and laggy. I don't recommend making
it the default mode.
cu.
:
Christian
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@1145 7894878c-1315-0410-8ee3-d5d059ff63e0
Leave the files there for now.
Remove old installed sensors.o in kernel/Module.mk.
sensors.c was moved to i2c-proc.c in the i2c package.
i2c-isa.h was appended to i2c.h in the i2c package.
Delete all but the SYSCTL and ALARMS definitions in sensors.h,
as the rest of the file was moved to i2c-proc.h in the i2c package.
Remove #include "i2c-isa.h" lines in all chip drivers and
in bus driver i2c-isa.c.
This all probably breaks mkpatch.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@1015 7894878c-1315-0410-8ee3-d5d059ff63e0
on both platforms). LM87 support is very far along, and should work
for a majority of users, but some minor tweaks are still on the to-do list.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@963 7894878c-1315-0410-8ee3-d5d059ff63e0
perfectly with the adm1023, but didn't take advantage of it's extra precision
for the remote temp sensor. Now, if an adm1023 is detected, it will.
For example, my adm1021 remote_temp looks like this:
phil@penn phil]$ cat /proc/sys/dev/sensors/adm1021*/remote_temp
60 20 23
My 1023 looks like this:
[root@penn lm_sensors2]# cat /proc/sys/dev/sensors/adm1023-i2c-2-2a/remote_temp
60.125 20.250 1.500 20.875
(Both from the same inserted driver)
Notice the extra 3 digit precision (actually, it's in increments of 0.125).
And, also notice the extra 'limit'. It's actually an offset register.
Right now it's adding 1.5 degrees to the reading for the remote_temp. This
same functionality could easily be done by editing /etc/sensors.conf, but
Analog Devices decided to put it into the chip instead. :')
Things to do: edit the default sensors.conf, and sensors-detect for this
new chip.
Oh, I also added SENSORS_INSMOD_7 into sensors.h. This was the first
driver to need it, apparently.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@904 7894878c-1315-0410-8ee3-d5d059ff63e0
Set DESTDIR if you want to install at some other place then where you
will run everything from.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@675 7894878c-1315-0410-8ee3-d5d059ff63e0
* Improved monitoring of /proc directories
Instead of doing:
proc_bus_i2c->fill_inode = &monitor_bus_i2c;
void monitor_bus_i2c(struct inode *inode, int fill)
{
if (fill)
MOD_INC_USE_COUNT;
else
MOD_DEC_USE_COUNT;
}
you can now simply set:
proc_bus_i2c->owner = THIS_MODULE;
and this is just as good!
* An old 2.3 problem seemingly never was resolved yet: instead of using
a *wait_queue directly, you have to use a wait_queue_head_t and
initialize it properly:
#if (LINUX_VERSION_CODE < 0x020301)
static struct wait_queue *pcf_wait = NULL;
#else
static wait_queue_head_t pcf_wait;
#endif
#if (LINUX_VERSION_CODE >= 0x020301)
init_waitqueue_head(&pcf_wait);
#endif
except for this, semantics remain the same (but using a plain
wait_queue_head_t instead of a pointer to a wait_queue)
* I had to change the semantics of sensors_register_entry slightly,
to make the monitoring of /proc/sys/dev/* files possible for kernels
2.3.27 and newer. It now takes an additional parameter, which you
can specify as THIS_MODULE.
* THIS_MODULE is only defined in kernels 2.3.13 and later; added
it to compat.h and the compatibility section of mkpatch.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@640 7894878c-1315-0410-8ee3-d5d059ff63e0
* Removed several superfluous (struct i2c_client *) casts (they were left
from the time we had separate structs for smbus and isa)
* Removed the internal lists of registered clients
They have not been used for quite some time now, took memory space,
and limited the maximum number of clients that could be registered.
Also removed two small Makefile errors - I am happy I caught them before
the next release!
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@582 7894878c-1315-0410-8ee3-d5d059ff63e0
The Makefile now examine $(LINUX)/.config to see what modules need to be
compiled. It compiles only those modules which were either not configured
in at all, or were built as modules (ie. drivers which are built-in in the
kernel are not built, as they can not be overruled).
The above is still potentially dangerous, if we break the interface of
our modules. Still, it is much better than it was.
C
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@575 7894878c-1315-0410-8ee3-d5d059ff63e0
Most important change: GL518SM-rev00 can't use kernel threads on 2.0 and
early 2.1 kernels
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@563 7894878c-1315-0410-8ee3-d5d059ff63e0
* mkpatch now correctly works when kernel-side files do not yet exist.
I forgot to propagate a change in the i2c version.
* __init* handling in mkpatch and compat.h
* New i801 defines added to mkpatch
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@545 7894878c-1315-0410-8ee3-d5d059ff63e0
* removed algorithm registration in i2c-isa
* renamed i2c-via2.o to i2c-viapro.o in the driver messages
* added detection for new drivers in sensors-detect script
* minor gl518sm fix
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@522 7894878c-1315-0410-8ee3-d5d059ff63e0
* gl518sm document simplified for rev 0x00 & 0x80
* gl518sm & gl520sm libsensors interface updates
BTW: Revision is no longer part of the name, so old sensors.conf
will not work at all with gl518sm.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@511 7894878c-1315-0410-8ee3-d5d059ff63e0
* i2c-isa simplified, by using the addr field in the client structure,
instead of a new field. This means we do not need `struct isa_*'
anymore
* All clients changed to reflect the new isa code. Many are much
simplified now.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@505 7894878c-1315-0410-8ee3-d5d059ff63e0
* The i2c package can no longer be compiled as part of the lm_sensors tree
* The archive of the i2c package is removed
* smbus, i2c-dev and i2c-proc modules and headers have been removed; they
are now completely integrated into the i2c package
* The fake i2c.h header has been removed; this also allowed us to remove
the ugly LM_SENSORS and TBD defines.
* A new variable I2C_HEADERS is introduced in the Makefile. This allows
us to install the i2c headers in, for example, /usr/local/include/linux.
* All files now include <linux/i2c.h> instead of "i2c.h" and "smbus.h"
Status: 'make dep' works, all the right include files are found. 'make all'
does not yet work.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@496 7894878c-1315-0410-8ee3-d5d059ff63e0
is right now, it should clear the LCD screen. But, I discovered that
the display simply can't cope with I2C read commands - it completely
locks up *both* the data and the *clock* lines! (That's new.) So,
it kills the bus when probes or other reads are done to the device.
Matrix-Orbital has to fix this before we can get anything
usable working. :'(
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@464 7894878c-1315-0410-8ee3-d5d059ff63e0