Commit Graph
10 Commits
Author SHA1 Message Date
Frodo Looijaard 45e87b2b9e SMBus emulation on real I2C adapters finished
Not tested, as I do not own such an adapter...

Block reading not implemented, as it seems impossible to do with the
currently available I2C primitives.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@43 7894878c-1315-0410-8ee3-d5d059ff63e0
1998-12-06 23:03:46 +00:00
Frodo Looijaard 831b8e88f3 Resolved ISA crash.
Status: You can insert all modules, and it works like a charm!

Changes:
* Corrected check for SMBus algorithm in smbus_access
* (The unimplemented) smbus_access_i2c now returns an error, instead of
  an undefined result


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@41 7894878c-1315-0410-8ee3-d5d059ff63e0
1998-12-06 16:07:23 +00:00
Frodo Looijaard f18d210815 PIIX4 update
It compiles now for 2.0 kernels; I hope it still compiles for 2.1 kernels :-)

Changes:
* The non-BIOS PCI interface was introduced in kernel 2.1.54, so I changed
  all #ifdef statements to use that kernel as starting point
* I integrated everything in piix4.h into piix4.c; as no other module will
  ever need to know about anything PIIX4-specific, we do not need a
  separate header file (same went for lm78.c and lm75.c)
* In piix4_setup, both the 2.0 and 2.1 versions continue seeking for PCI
  devices until they have found 'function 3' of the PIIX4. This is the
  'function' we need for SMBus access.
* At some places in piix4_setup, even for 2.1 kernels the PCI BIOS code was
  used. This was seemingly needed, probably because the wrong 'function'
  was accessed. I have removed this; if there are troubles with the PIIX4 on
  kernels newer than 2.1.53, we need to introduce it again.
* Renamed global things to start uniformly with piix4_
* Changed printk statements to start with piix4.o:
* Pasted in missing part of piix4_access
* No need to lock the adapter on access; this is already done by the
  smbus_access function in smbus.c. I corrected a locking bug there too,
  by the way.
* Added a few include files needed by 2.0 at least
* Replaced the call to schedule_timeout() in piix4_do_pause with the old
  code; schedule_timeout seems to be defined nowhere?!? Phil, was this
  your addition, and if so, what should it read?


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@34 7894878c-1315-0410-8ee3-d5d059ff63e0
1998-12-05 00:47:22 +00:00
Frodo Looijaard cbf518d36e Fixes to make code compile with 2.1 kernels
Everything now compiles cleanly (except for warnings in kernel header files)
against 2.1.122. As I do not run 2.1 kernels, loading them could not be
tested.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@22 7894878c-1315-0410-8ee3-d5d059ff63e0
1998-12-02 17:25:53 +00:00
Frodo Looijaard c26eff1184 Start of i2c-bus, a module for displaying i2c bus information in /proc
Nothing much here yet, except some code to create /proc/bus/i2c. Should work
for kernels 2.0 and 2.1 (please test).

Other notable things:
  printk statements in all modules made to have to same 'look'.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@15 7894878c-1315-0410-8ee3-d5d059ff63e0
1998-11-27 00:26:51 +00:00
Frodo Looijaard 45d6e40e75 Example lm_sensors-2 driver
Though it is called the LM78 driver, there is not too much LM78 specific
code in it; it can better be seen as an example code skeleton for other
drivers. Right now, it creats a file /proc/sensors-test, which contains
a list of busses it registered itself on. Stupid, but very useful for
testing purposes!

You need a 2.0 kernel for lm78.o to insert (or hack the /proc system
specific parts; see lm78.c of lm_sensors version 1 how to do this).
Other parts of lm_sensors-2 are not tested for 2.1 kernels either, but
I am certain it won't work in this case :-).

See the TODO list to get some idea what is left to do, choose something
and implement it. Or not :-). But please, send a note to the mailing
list when you start on something, to avoid duplicate work...

Other notable changes:
  the smbus_access routines now use (the more logical) i2c_adapter
  structure, instead of smbus_adapter.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@13 7894878c-1315-0410-8ee3-d5d059ff63e0
1998-11-26 10:16:08 +00:00
Frodo Looijaard 4d29df9f32 isa module added, some bugfixes
'isa.o' is roughly what was called 'sensor.o' in doc/design.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@12 7894878c-1315-0410-8ee3-d5d059ff63e0
1998-11-23 22:34:34 +00:00
Frodo Looijaard ed7e4c3001 Makefile enhancements, printk enhancements
* Modules now print their version number and date on insertion
* Some printk statements missed a \n
* 'make clean' now works, even if some .d (dependency) files contain garbage.
  Note that *only* 'make clean' helps in that case; 'make clean all', for
  example, will fail! There is really no nice way to solve that.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@11 7894878c-1315-0410-8ee3-d5d059ff63e0
1998-11-22 21:36:52 +00:00
Frodo Looijaard 9f4acd58b1 piix4.c basic skeleton
The real PIIX4 access code must still be written; perhaps somebody else could
do this? Most of it could be copied from the old piix4.c. But check carefully
what you are doing, as some things *have* changed (like the SMBUS_{BYTE,...}
variables!).


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@9 7894878c-1315-0410-8ee3-d5d059ff63e0
1998-11-19 15:14:01 +00:00
Frodo Looijaard 36d5e317ce Module smbus.o, many other small changes
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@8 7894878c-1315-0410-8ee3-d5d059ff63e0
1998-11-19 03:07:18 +00:00