Commit Graph
26 Commits
Author SHA1 Message Date
Kyosti Malkki 1cfe63804a (Kyösti) Cleanups
Copy sysctl enums to chip drivers from sensors.h for now,
   as seen in drivers included in 2.5 tree. File no longer included
   from kernel side.

   Apply i2c-proc change in CVS tagged -km2.

   Partial clean and sort of includes everywhere.

   Add i2c-dev.h, as a partial copy from i2c.
   Add to sensors.h from i2c-proc.h to compile things.
   Remove i2c-isa.h.

   Reflect header file changes to lib/ and prog/.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@1705 7894878c-1315-0410-8ee3-d5d059ff63e0
2003-01-21 20:01:27 +00:00
Kyosti Malkki 39391ba6ea (Kyösti) some cleanups for 2.4+
Module refcounting using .owner, removing of inc/dec_use.
   These require (yet unreleased) i2c 2.8.0+.

   Named initializers everywhere. Unified namespace.

   Cleanup for 2.5, remove EXPORT_NO_SYMBOLS, declare everything
   static. Apply initcalls.

   PCI device registration changes for busses started, replicating
   from i2c-amd*. While everything does compile, nothing really
   works. Well, maybe i2c-amd* ported back from 2.5 tree.

   After updating your work directory, run
    > cvs diff -u -r LAST-PRE-2-8-I2C > lm-2.8-patches-1

   BEWARE: I have not even insmoded any of these yet.

   To compile, you need i2c from cvs too.
   For 2.4 kernel :
    > cvs co -r lk2-4 i2c

   For 2.5 kernel :
    > cvs co i2c


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@1698 7894878c-1315-0410-8ee3-d5d059ff63e0
2003-01-17 01:19:52 +00:00
Mark D. Studebaker 877bf15087 THIS_MODULE patch for kernel 2.2.18 from
Jean Delvare <delvare@ensicaen.ismra.fr>


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@1317 7894878c-1315-0410-8ee3-d5d059ff63e0
2002-02-09 22:36:26 +00:00
Mark D. Studebaker 7bd97f4667 Add MODULE_LICENSE("GPL") to all modules
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@1201 7894878c-1315-0410-8ee3-d5d059ff63e0
2001-10-13 17:48:43 +00:00
Mark D. Studebaker 5c91c75f11 malloc.h -> slab.h
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@1193 7894878c-1315-0410-8ee3-d5d059ff63e0
2001-09-29 18:32:15 +00:00
Mark D. Studebaker a21694024e Change from sensors_x to i2c_x for x =
_sysctl_real
		_register_entry
		_proc_real
		_detect
		_deregister_entry
		_chips_data
      which were the global symbols renamed in i2c-proc.[ch] in the
      i2c package.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@1101 7894878c-1315-0410-8ee3-d5d059ff63e0
2001-05-27 22:49:28 +00:00
Mark D. Studebaker b5d014bd46 Disable sensors.c and i2c-isa.h in the Module.mk files.
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
2001-02-06 02:53:46 +00:00
Frodo Looijaard aa0c8f6768 Updated the MUTEX definitions again - they are now guarded by
the horrible
         #if (LINUX_VERSION_CODE < KERNEL_VERSION(2,2,18)) || \
             (LINUX_VERSION_CODE == KERNEL_VERSION(2,3,0))
        They should now both work with 2.3 kernels (including 2.4 prepatches)
        and very new 2.2 kernels (ie. 2.2.18 prepatches)


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@933 7894878c-1315-0410-8ee3-d5d059ff63e0
2000-11-22 23:54:39 +00:00
Frodo Looijaard 6a2c82b491 `indent -kr -i8' on all kernel sources
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@707 7894878c-1315-0410-8ee3-d5d059ff63e0
2000-01-24 20:37:01 +00:00
Frodo Looijaard 888d32f50b Removing kernel 2.0 and 2.1 compatibility pass 2
Eliminated compat.h


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@705 7894878c-1315-0410-8ee3-d5d059ff63e0
2000-01-24 20:07:29 +00:00
Frodo Looijaard 9480bb5988 Removal of kernel 2.1 and 2.2 compatibility: pass one
Removed many #if statements


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@704 7894878c-1315-0410-8ee3-d5d059ff63e0
2000-01-24 19:30:08 +00:00
Frodo Looijaard fd545796ee Changes regarding the new i2c_check_addr function
Changes in sensors.c:

  sensors_detect now skips addresses which are already taken. Even a
  force parameter can not override this, as it could lead to major
  problems.
  For ISA addresses, the same is done; but the client drivers still need
  a check if they claim more than one ISA address (as all of the current
  ISA clients do).

Changes in chip drivers:

  Removed the comment about needing address registration

Changes in i2cdetect.c:

  Marks addresses which are already claimed

Changes in sensors-detect:

  Warns when an address is already claimed, and skips it.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@667 7894878c-1315-0410-8ee3-d5d059ff63e0
1999-12-08 20:37:09 +00:00
Frodo Looijaard 5059c482fd Just to make sure, added `#include <linux/version.h>' at several
other places.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@645 7894878c-1315-0410-8ee3-d5d059ff63e0
1999-12-01 00:48:34 +00:00
Frodo Looijaard 52b2ce8f52 Patches to make it compatible with kernel 2.3.27 and newer
* 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
1999-11-30 20:48:43 +00:00
Frodo Looijaard 52781e50b4 Preparations for better 10-bit address support
Updated for the changes in i2c_smbus_* functions


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@585 7894878c-1315-0410-8ee3-d5d059ff63e0
1999-09-27 16:01:24 +00:00
Frodo Looijaard 9d88e65c71 `functionality' checking for clients implemented
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@584 7894878c-1315-0410-8ee3-d5d059ff63e0
1999-09-27 14:19:46 +00:00
Frodo Looijaard 68a31e3480 Some code cleanups
* 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
1999-09-27 13:20:45 +00:00
Frodo Looijaard acd5a15556 (Frodo) Massive commit of all things related to mkpatch. Let's just say
it works great now.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@516 7894878c-1315-0410-8ee3-d5d059ff63e0
1999-07-23 23:43:13 +00:00
Frodo Looijaard fcbe78a669 First step to make it possible to integrate lm_sensors modules into
the kernel.

* <kernel/init.h> is now included for all modules
* Initialization-time only functions and variables are marked with __init
* EXPORT_SYMBOL or EXPORT_NO_SYMBOLS declarations added


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@513 7894878c-1315-0410-8ee3-d5d059ff63e0
1999-07-23 11:43:58 +00:00
Kyosti Malkki 3014204a0d (Kyösti)
* renamed every smbus_*  access to i2c_smbus_*
 * everything in lm_sensors2/kernel/* compiles nicely :)


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@499 7894878c-1315-0410-8ee3-d5d059ff63e0
1999-07-20 22:46:49 +00:00
Frodo Looijaard 24e547b88e First round of lm_sensors changes for the new I2C tree
* 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
1999-07-19 11:45:27 +00:00
Philip Edelbrock 63a083da8e (Phil) It works! So, I'll commit it. Here's the skinny:
There is only one file 'disp'.  To send bytes (like chars to be displayed)
you send a series of unsigned base-10 values separated by spaces.
For example:

echo "hi there" | perl -e \
 '$_=<STDIN>; while (/(.)/gc) { print ord($1)," "; }' \
 > /proc/sys/dev/sensors/matorb*/disp

This is equivelent to doing:

echo "104 105 32 116 104 101 114 101" > /proc/sys/dev/sensors/matorb*/disp

I was going to create more files for doing things like clearing the screen,
but it is easier and probably better to do this in user-space.  For example,
to clean the screen, you can do:

echo "254 88" > /proc/sys/dev/sensors/matorb*/disp

(As documented in the manual from Matrix-Orbital)

If the folks at Matrix-Orbital added device ID on a read (we talked about
this), then I will add an ID file to indicate that info.

TODO: finish detection.  Right now it looks for a device at a particular
address and assumes it is a display.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@482 7894878c-1315-0410-8ee3-d5d059ff63e0
1999-06-16 05:40:35 +00:00
Frodo Looijaard 7ad0562dc3 Made sure i2c-voodoo3 does not export more symbols than strictly
necessary. Resolved one remaining warning in matorb.c


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@473 7894878c-1315-0410-8ee3-d5d059ff63e0
1999-06-06 22:24:36 +00:00
Frodo Looijaard 86ba0c96fd (Frodo) Several minor things
* Made i2c-voodoo3.c compile with 2.0 kernels
    It should also run without problem, but obviously I could not test it
    Changes are in the memory mapping of PCI address space
  * Removed several warning from i2c-voodoo3.c
    It compiles now without any warnings, even with WARN=1
  * Removed several warnings from matorb.c
    It compiles now without any warnings, even with WARN=1
    In the proces, I fixed one serious bug (assignment instead of comparison)
  * Removed a warning from w83781d.c
    It compiles now without any warnings, even with WARN=1

Hint: Once in a while, try to compile with WARN=1 and remove warnings. It
helps to find serious, hidden problems. Really!


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@472 7894878c-1315-0410-8ee3-d5d059ff63e0
1999-06-06 14:06:04 +00:00
Philip Edelbrock 18a07111cd (Phil) last MUTEX change.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@470 7894878c-1315-0410-8ee3-d5d059ff63e0
1999-06-04 23:50:47 +00:00
Philip Edelbrock dd4ef6c059 (Phil) Beginnings of the Matrix-Orbital driver (based on lm75.c). As it
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
1999-05-14 05:52:20 +00:00