Commit Graph

385 Commits

Author SHA1 Message Date
Hans de Goede
45fb366940 hwmon: add support for Fintek F71882FG and F71883FG
This is the second version of a new driver for the hardware monitoring features
of the Fintek F71882FG and F71883FG Super-I/O chips. This version has several
small fixes for flaws discovered during the review of the first version.

This version of the driver does not support the pwm part of these chips (yet).
I'll first design a sysfs api for this and post that for discussion, and then
implement pwm support as an incremental patch over this one.

This driver supports all sensors of this chip, except for the vid inputs. The
vid inputs are somewhat documented in the datasheet, but I know nothing about
vid/vrm stuff. Help with this would be much appreciated.

Signed-off-by: Hans de Goede <j.w.r.degoede@hhs.nl>
Acked-by: Darrick J. Wong <djwong@us.ibm.com>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-10-09 22:56:29 -04:00
Jean Delvare
9cab0217f3 hwmon: (f71805f) List the F71806F/FG as supported
The Fintek F71806F/FG is compatible with the F71872F/FG, so it is
already supported by the f71805f hardware monitoring driver. In fact,
both chips have the same chip ID, so the driver can't even
differentiate between them.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Acked-by: Hans de Goede <j.w.r.degoede@hhs.nl>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-10-09 22:56:28 -04:00
Gong Jun
43e61a2d7e hwmon: (w83792d) Add individual alarm files
w83792d: add individual alarm files for the new libsensors.

Signed-off-by: Gong Jun <jgong@winbond.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-10-09 22:56:28 -04:00
Krzysztof Helt
c83c41e4e6 hwmon: adm1021 clean ups
This patch provides some coding standard cleanups and general code improvements
(more debug info, signed values for temperatures, changed names of ADM1023
regs, removed read/write_value functions).

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Acked-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-10-09 22:56:28 -04:00
Jeff Garzik
1855256c49 drivers/firmware: const-ify DMI API and internals
Three main sets of changes:

1) dmi_get_system_info() return value should have been marked const,
   since callers should not be changing that data.

2) const-ify DMI internals, since DMI firmware tables should,
   whenever possible, be marked const to ensure we never ever write to
   that data area.

3) const-ify DMI API, to enable marking tables const where possible
   in low-level drivers.

And if we're really lucky, this might enable some additional
optimizations on the part of the compiler.

The bulk of the changes are #2 and #3, which are interrelated.  #1 could
have been a separate patch, but it was so small compared to the others,
it was easier to roll it into this changeset.

Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
2007-10-09 20:22:20 -04:00
Dmitry Torokhov
3fdbc34087 HWMON: ams - convert to use input-polldev
Switch to using input-polldev skeleton instead of implementing polling
loop by itself.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Acked-by: Michael Hanselmann <linux-kernel@hansmi.ch>
2007-09-26 00:01:41 -04:00
Dmitry Torokhov
d5cf2b99da HWMON: applesmc - convert to use input-polldev
Switch to using input-polldev skeleton instead of implementing polling loop by
itself.  This also fixes problem with trylock on a mutex in atomic context.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2007-09-26 00:01:35 -04:00
Jean Delvare
15bde2f1a8 hwmon: End of I/O region off-by-one
Fix an off-by-one error in the I/O region declaration of two
hardware monitoring drivers (lm78 and w83781d.) We were requesting
one extra port at the end of the region.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-09-09 10:38:37 -04:00
Jean Delvare
68a50b5678 hwmon: (smsc47m1) restore missing name attribute
The smsc47m1 driver no longer creates the name attribute used by
libsensors to identify chip types. It was lost during the conversion
to a platform driver. I was fooled by the fact that we do have a
group with all attributes, but only to delete them all at once. The
group is not used to create the attributes, so we have to explicitly
create the name attribute.

This fixes lm-sensors ticket #2236:
http://lm-sensors.org/ticket/2236

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-08-12 14:39:44 -04:00
Jean Delvare
0956895aa6 hwmon: (w83627ehf) don't assume bank 0
Don't assume that the default bank is 0. For one thing, we don't even
set it to 0 when the driver is loaded, so the initial state might be
different. For another, something (say, the BIOS) might access the chip
and leave with the bank set to something different, so assuming that
the bank value is 0 is not safe.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-08-12 14:38:31 -04:00
Mark M. Hoffman
ea7be66c44 hwmon: (w83627ehf) read fan_div values during probe
This patch forces the driver to read the fan divider values during early init.
Otherwise, a call to store_fan_min() could access uninitialized variables.

Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-08-12 14:37:19 -04:00
Mark M. Hoffman
393cdad626 hwmon: fix w83781d temp sensor type setting
Commit 348753379a introduced a regression that
caused temp2 and temp3 sensor type settings to be written to temp1 instead.
The result is that temp sensor readings could be way off.

Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-08-11 14:22:57 -04:00
Hans de Goede
5cccf4a1a2 hwmon: fscher read control bugfix
Here is a small fscher bugfix for 2.6.23 merging, lifted from my other fscher
work, as requested by Jean. The current driver has a control sysfs attribute,
which shows the contents of the control register, but the underlying
global_control value in the data structure currently never gets filled with
the actual contents of this register.

Signed-off-by: Hans de Goede <j.w.r.degoede@hhs.nl>
Acked-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-30 21:14:00 -04:00
Adrian Bunk
4688902dab hwmon: make abituguru3_read_increment_offset() static
abituguru3_read_increment_offset() can become static.

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Acked-by: Hans de Goede <j.w.r.degoede@hhs.nl>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-30 21:11:21 -04:00
Guillaume Chazarain
f5744e3775 hwmon: Fix regression caused by typo in lm90.c
The commit http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=32c82a934759b2c9939c9e25865c2d7d1204b9e8
broke lm90 for my (Asus V6VA) laptop.

Before 2.6.23-rc1 and with the following patch, I get:

[g ~]$ sensors
max6657-i2c-0-4c
Adapter: SMBus I801 adapter at 0400
M/B Temp:    +64°C  (low  =    +0°C, high =  +127°C)
CPU Temp:  +78.9°C  (low  = +73.2°C, high = +88.2°C)
M/B Crit:   +105°C  (hyst =   +95°C)
CPU Crit:   +105°C  (hyst =   +95°C)

Which regressed into:

[g ~]$ sensors
No sensors found!
Make sure you loaded all the kernel drivers you need.
Try sensors-detect to find out which these are.
zsh: 2701 exit 1     sensors

and dmesg contains:

i2c-adapter i2c-0: Unsupported chip (man_id=0x4D, chip_id=0x4D).

It seems to be a typo, as address 0X4F is mentionned nowhere else in the file,
and my chip is actually at 0x4C.

Signed-off-by: Guillaume Chazarain <guichaz@yahoo.fr>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-30 21:10:34 -04:00
Martin Szulecki
1bed24b978 hwmon: (applesmc) add temperature sensors set for Macbook
Signed-off-by: Nicolas Boichat <nicolas@boichat.ch>
Acked-by: Jean Delvare <khali@linux-fr.org>
Cc: Martin Szulecki <mactel@sukimashita.com>
Cc: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-30 21:09:49 -04:00
Hans de Goede
794f543494 hwmon: fscher control update bugfix
Here is another small fscher bugfix for 2.6.23 merging, this was caught by Jean
while reviewing my other bugfix. The driver was updating its copy of the
control register as if it was clear to write, but its regular read/write.  This
patch fixes this.

Signed-off-by: Hans de Goede <j.w.r.degoede@hhs.nl>
Acked-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-30 21:08:38 -04:00
Juerg Haefliger
c0f31403fe hwmon: fix dme1737 temp fault attribute
Fix temp?_fault attribute. The temp was incorrectly compared against
0x0800 rather than 0x8000. Only the upper 8 bits are compared as the
datasheet doesn't specify what happens to the lower bits in case of a
diode fault.

Signed-off-by: Juerg Haefliger <juergh at gmail.com>
Acked-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-30 21:07:23 -04:00
Jean Delvare
d054612898 hwmon: Add missing __devexit tags in various drivers
On Sun, 22 Jul 2007 00:30:56 +0200, Gabriel C wrote:
> I noticed this warnings on current git:
>
> drivers/hwmon/pc87360.c:1082: warning: 'pc87360_remove' defined but not used
> drivers/hwmon/sis5595.c:580: warning: 'sis5595_remove' defined but not used
> drivers/hwmon/smsc47m1.c:608: warning: 'smsc47m1_remove' defined but not used
> drivers/hwmon/via686a.c:648: warning: 'via686a_remove' defined but not used
> drivers/hwmon/vt8231.c:755: warning: 'vt8231_remove' defined but not used

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-30 21:05:43 -04:00
Jesper Juhl
2977110192 hwmon: clean up duplicate includes
This patch cleans up duplicate includes in
	drivers/hwmon/

Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-30 21:05:26 -04:00
Hans de Goede
acf346a311 hwmon: fix lm78 detection regression
Here is a small but important bugfix to the lm78 driver. I found out about this
problem because a Fedora user filed a bug that the lm78 driver no longer worked
on his system: https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=249428

The problem is that sometime ago the isa lm78 detection was made more stringent
and this new code now checks the chip-id, but does not accept a chip-id of 20h,
however a chip-id of 20h is valid, and is excepted in the main probe function
of the driver, see line 551. This fixed also makes the isa detection code
accept the chip-id of 0x20 fixing this issue.

Signed-off-by: Hans de Goede <j.w.r.degoede@hhs.nl>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-30 21:05:07 -04:00
Hans-Jürgen Koch
f08a34874f hwmon: fix array overruns in lm93.c
This fixes an array overflow bug. We have 4 pairs of min/max temperature
limits, not 3.

Signed-off-by: Hans J. Koch <hjk@linutronix.de>
Acked-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-30 21:04:13 -04:00
Krzysztof Helt
add77c64ca hwmon: add support for THMC50 and ADM1022
This patch adds support for THMC50 and ADM1022 hardware monitoring chips.

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Acked-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-30 21:02:59 -04:00
Linus Torvalds
40b42f1ebf Merge branch 'release' of git://lm-sensors.org/kernel/mhoffman/hwmon-2.6
* 'release' of git://lm-sensors.org/kernel/mhoffman/hwmon-2.6: (44 commits)
  i2c: Delete the i2c-isa pseudo bus driver
  hwmon: refuse to load abituguru driver on non-Abit boards
  hwmon: fix Abit Uguru3 driver detection on some motherboards
  hwmon/w83627ehf: Be quiet when no chip is found
  hwmon/w83627ehf: No need to initialize fan_min
  hwmon/w83627ehf: Export the thermal sensor types
  hwmon/w83627ehf: Enable VBAT monitoring
  hwmon/w83627ehf: Add support for the VID inputs
  hwmon/w83627ehf: Fix timing issues
  hwmon/w83627ehf: Add error messages for two error cases
  hwmon/w83627ehf: Convert to a platform driver
  hwmon/w83627ehf: Update the Kconfig entry
  make coretemp_device_remove() static
  hwmon: Add LM93 support
  hwmon: Improve the pwmN_enable documentation
  hwmon/smsc47b397: Don't report missing fans as spinning at 82 RPM
  hwmon: Add support for newer uGuru's
  hwmon/f71805f: Add temperature-tracking fan control mode
  hwmon/w83627ehf: Preserve speed reading when changing fan min
  hwmon: fix detection of abituguru volt inputs
  ...

Manual fixup of trivial conflict in MAINTAINERS file
2007-07-19 14:24:57 -07:00
Hans de Goede
c182f5bbfb hwmon: refuse to load abituguru driver on non-Abit boards
With this patch the abituguru refuses to load on non Abit motherboards, as
discussed in lkml CONFIG_BREAK_MY_MACHINE thread.

Signed-off-by: Hans de Goede <j.w.r.degoede@hhs.nl>
Acked-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-19 14:25:04 -04:00
Hans de Goede
9c2e14afb9 hwmon: fix Abit Uguru3 driver detection on some motherboards
This patch changes the driver to also detect uguru3's which hold 0x08 at DATA
initially, as has been reported here:
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=220160

Also when an uguru3's holds 0x0014 in the ID register it will now report
"Abit AB9 Pro" as motherboard identification.

Signed-off-by: Hans de Goede <j.w.r.degoede@hhs.nl>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-19 14:22:18 -04:00
Jean Delvare
9f66036b4f hwmon/w83627ehf: Be quiet when no chip is found
This fixes bug #8593:
http://bugzilla.kernel.org/show_bug.cgi?id=8593

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-19 14:22:18 -04:00
Jean Delvare
7cb7273f8c hwmon/w83627ehf: No need to initialize fan_min
We don't need to initialize fan_min in this driver, as the fan_div
attributes are read-only.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-19 14:22:18 -04:00
Jean Delvare
da667365be hwmon/w83627ehf: Export the thermal sensor types
Add support for the w83627ehf thermal sensor types. I made them read-only,
as the BIOS is supposed to set them up properly. This information makes it
easier to find out which temperature channel corresponds to the CPU.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-19 14:22:18 -04:00
Jean Delvare
d3130f0e30 hwmon/w83627ehf: Enable VBAT monitoring
If VBAT monitoring is disabled, enable it. Original patch from
an anonymous contributor on the lm-sensors trac system:
http://lm-sensors.org/ticket/2218

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-19 14:22:17 -04:00
Jean Delvare
fc18d6c047 hwmon/w83627ehf: Add support for the VID inputs
The W83627EHF and similar chips have 6 VID input pins, add support
for them. The driver changes the input voltage level automatically
if the current setting is not correct for the detected CPU model.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-19 14:22:17 -04:00
Jean Delvare
6b3e464580 hwmon/w83627ehf: Fix timing issues
* I have experimental evidence that the W83627EHG needs more than 1
second to refresh all the measured values. Increase the caching time to
1.5 second.
* When changing a fan clock divider, the corresponding fan speed
measurement register is no longer valid, until the next time the chip
will refresh it. One way to fix this is to pretend that the cache is
still valid for one more period (1.5 second.)

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-19 14:22:17 -04:00
David Hubbard
475ef85512 hwmon/w83627ehf: Add error messages for two error cases
If the Super-I/O device is disabled, it is likely the BIOS has a good
reason for leaving it disabled, so give a warning when enabling it --
it's not likely to be wired correctly or be able to give good data.

Also, if the Super-I/O device is configured with an address of 0, the
driver refuses to initialize it.

Signed-off-by: David Hubbard <david.c.hubbard@gmail.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-19 14:22:17 -04:00
David Hubbard
1ea6dd3840 hwmon/w83627ehf: Convert to a platform driver
Remove i2c-isa from the w83627ehf driver, and use a platform driver
instead.

Signed-off-by: David Hubbard <david.c.hubbard@gmail.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-19 14:22:17 -04:00
David Hubbard
658291fc38 hwmon/w83627ehf: Update the Kconfig entry
Add description for the W83627DHG chip to Kconfig.

Signed-off-by: David Hubbard <david.c.hubbard@gmail.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-19 14:22:16 -04:00
Adrian Bunk
d2bc7b135a make coretemp_device_remove() static
coretemp_device_remove() can become static.

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Acked-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-19 14:22:16 -04:00
Hans-Jürgen Koch
e46957edfb hwmon: Add LM93 support
This patch adds support for the LM93 hardware monitoring chip.

Signed-off-by: Hans J. Koch <hjk@linutronix.de>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-19 14:22:16 -04:00
Jean Delvare
90205c6cbb hwmon/smsc47b397: Don't report missing fans as spinning at 82 RPM
Also protects ourselves against a possible division by zero.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-19 14:22:16 -04:00
Hans de Goede
3faa1ffb4f hwmon: Add support for newer uGuru's
This patch adds a new driver for the hardware monitoring features of the
third revision of the Abit uGuru chip, found on recent Abit
motherboards. This is an entirely different beast then the first and
second revision (its again a winbond microcontroller, but the "protocol"
to talk to it and the bank addresses are very different.

Signed-off-by: Hans de Goede <j.w.r.degoede@hhs.nl>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-19 14:22:16 -04:00
Phil Endecott
aba5073d3f hwmon/f71805f: Add temperature-tracking fan control mode
Add support for the "temperature mode" fan speed control. In this mode,
the user can define 3 temperature/speed trip points, and the chip will
set the speed automatically according to the temperature changes.

Signed-off-by: Phil Endecott <kernel@chezphil.org>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-19 14:22:15 -04:00
Jean Delvare
158ce07564 hwmon/w83627ehf: Preserve speed reading when changing fan min
The w83627ehf driver changes the fan clock divider automatically when
a new min fan speed is set. It is supposed to preserve the fan speed
reading while doing so, bug doesn't really. Fix it.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-19 14:22:15 -04:00
Hans de Goede
e432dc811b hwmon: fix detection of abituguru volt inputs
This patch fixes the detection of volt inputs with a reading of more then 240
units.

Signed-off-by: Hans de Goede <j.w.r.degoede@hhs.nl>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-19 14:22:15 -04:00
Juerg Haefliger
2dbbdb3574 hwmon: add SCH5317 to smsc47b397 driver
This patch adds the SMSC SCH5317 chip (device ID 0x85) as a supported
device to the smsc47b397 driver.

Signed-off-by: Juerg Haefliger <juergh at gmail.com>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-19 14:22:15 -04:00
corentin.labbe
b74f3fdd98 hwmon: convert it87 to platform driver
This is the patch for converting it87 to a platform driver (and remove i2c-isa).

Signed-off-by: Corentin LABBE <corentin.labbe@geomatys.fr>
Acked-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-19 14:22:14 -04:00
Jean Delvare
04a6217df2 hwmon: Fix a potential race condition on unload
Fix a potential race condition when some hardware monitoring platform
drivers are being unloaded. I believe that the driver data pointer
shouldn't be cleared before all the sysfs files are removed, otherwise
a sysfs callback might attempt to dereference a NULL pointer. I'm not
sure exactly what the driver core protects drivers against, so let's
play it safe.

While we're here, clear the driver data pointer when probe fails, so
as to not leave an invalid pointer behind us.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-19 14:22:14 -04:00
Roger Lucas
ec5e1a4b8f hwmon: Convert vt8231 to a platform driver
Convert the vt8231 driver from the nonsensical i2c-isa hack to a
regular platform driver.

Signed-off-by: Roger Lucas <roger@planbit.co.uk>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
2007-07-19 14:22:14 -04:00
Jean Delvare
2f6ae15790 hwmon/sis5595: Use PCI_REVISION_ID
Use PCI_REVISION_ID instead of our own define.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-07-19 14:22:14 -04:00
Jean Delvare
1f5f48dde7 hwmon/sis5595: Use dynamic sysfs callbacks
This lets us get rid of macro-generated functions and shrinks the
driver size by about 7%.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-07-19 14:22:14 -04:00
Jean Delvare
17e7dc4373 hwmon/sis5595: Convert to a platform driver
Convert the sis5595 driver from the nonsensical i2c-isa hack to a
regular platform driver.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-07-19 14:22:13 -04:00
Jean Delvare
1e71a5a2ce hwmon/via686a: Use dynamic sysfs callbacks
This lets us get rid of macro-generated functions and shrinks the
driver size by about 9%.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-07-19 14:22:13 -04:00
Jean Delvare
2ec342e684 hwmon/via686a: Convert to a platform driver
Convert the via686a driver from the nonsensical i2c-isa hack to a
regular platform driver.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-07-19 14:22:13 -04:00
Jean Delvare
58fe0809cc hwmon/via686a: Temperature interrupt configuration fix
Fix the writing of the temperature interrupt configuration.
The old code was working only by accident.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-07-19 14:22:13 -04:00
Carlos Olalla Martinez
1550cb6d7e hwmon/w83627hf: Add PWM frequency selection support
Signed-off-by: Carlos Olalla <com.ea@tinet.org>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-07-19 14:22:13 -04:00
Rudolf Marek
08a8f6e9e6 hwmon/it87: Add IT8726F support
Add support for IT8726F chip driver, which is just same as
IT8716F with additional glue logic for AMD power sequencing.

Signed-off-by: Rudolf Marek <r.marek@assembler.cz>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-07-19 14:22:13 -04:00
Jean Delvare
7817a39e65 hwmon: Fault files naming convention
We have the following naming convention documented in
Documentation/hwmon/sysfs-interface for fault files:

in[0-*]_input_fault
fan[1-*]_input_fault
temp[1-*]_input_fault

Some drivers follow this convention (lm63, lm83, lm90, smsc47m192).
However some drivers omit the "input" part and create files named
fan1_fault (pc87427) or temp1_fault (dme1737). And the new "generic"
libsensors follows this second (non-standard) convention, so it fails
to report fault conditions for drivers which follow the standard.

We want a single naming scheme, and everyone seems to prefer the
shorter variant, so let's go for it.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-07-19 14:22:12 -04:00
Rainer Birkenmaier
32c82a9347 hwmon/lm90: Add support for the Maxim MAX6680/MAX6681
Signed-off-by: Rainer Birkenmaier <rainer.birkenmaier@siemens.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-07-19 14:22:12 -04:00
Jean Delvare
2df6d81157 hwmon: Use platform_device_add_data()
Use platform_device_add_data() in hardware monitoring drivers. This
makes the code nicer and smaller too. Reported by David Hubbard.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: David Hubbard <david.c.hubbard@gmail.com>
2007-07-19 14:22:12 -04:00
Jean Delvare
f641b588fd hwmon/pc87360: Convert to a platform driver
Convert the pc87360 driver from the nonsensical i2c-isa hack to a
regular platform driver. This is a direct conversion, other cleanups
could happen on top of that.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Acked-by: Jim Cromie <jim.cromie@gmail.com>
2007-07-19 14:22:12 -04:00
Juerg Haefliger
9431996f55 hwmon: New SMSC DME1737 driver
Add support for the hardware monitoring and fan control
capabilities of the SMSC DME1737 and Asus A8000 Super-I/O chips.

The hardware monitoring logic of this chip is similar to the LM85 but
has some additional features that this driver supports. Even though
it's a Super-I/O chip, the hardware monitoring logic can only be
accessed via SMBus.

Signed-off-by: Juerg Haefliger <juergh at gmail.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-07-19 14:22:11 -04:00
Jean Delvare
87f0f31baf hwmon/ds1621: Create individual alarm files
Future versions of libsensors will need this.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Aurelien Jarno <aurelien@aurel32.net>
2007-07-19 14:22:11 -04:00
Jean Delvare
46a2e71ced hwmon/ds1621: Use dynamic sysfs callbacks
This lets us get rid of macro-generated functions and shrinks the
driver size by about 8%.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Aurelien Jarno <aurelien@aurel32.net>
2007-07-19 14:22:11 -04:00
Jean Delvare
75819f01af hwmon/ds1621: Minor cleanups
* Discard comments which do not apply or are redundant.
* Remove a few useless instructions.
* Rename new_client to just client.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Aurelien Jarno <aurelien@aurel32.net>
2007-07-19 14:22:11 -04:00
Jean Delvare
e4a7167f82 hwmon/smsc47m192: Semaphore to mutex conversion
Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-07-19 14:22:11 -04:00
Jean Delvare
0966415d72 hwmon/lm90: Spelling fix: explicitly
Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-07-19 14:22:11 -04:00
David Brownell
c06e677aed SPI: add 3wire mode flag
Add a new spi->mode bit: SPI_3WIRE, for chips where the SI and SO signals
are shared (and which are thus only half duplex).  Update the LM70 driver
to require support for that hardware mode from the controller.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-07-17 10:23:04 -07:00
Jean Delvare
6d79af701d hwmon/coretemp: fix a broken error path
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Rudolf Marek <r.marek@assembler.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-06-24 08:59:10 -07:00
Nicolas Boichat
6996abf096 hwmon/applesmc: Handle name file creation error and deletion
The previous patch was incomplete.

Signed-off-by: Nicolas Boichat <nicolas@boichat.ch>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-05-27 22:17:43 +02:00
Jean Delvare
548c343b2f hwmon/applesmc: Simplify dependencies
The dependency upon HWMON is now handled at menu level.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Nicolas Boichat <nicolas@boichat.ch>
2007-05-27 22:17:43 +02:00
Jean Delvare
45f2acc484 hwmon-vid: Don't spam the logs when VRM version is missing
If we cannot guess which VRM version the CPU uses, we set it to 0 and
log it. So we shouldn't spam the log each time vid_from_reg() is
later called with vrm 0.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Acked-by: Rudolf Marek <r.marek@assembler.cz>
2007-05-27 22:17:43 +02:00
Jean Delvare
e142e2a307 hwmon/w83627hf: Be quiet when no chip is found
Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-05-27 22:17:43 +02:00
Rudolf Marek
67f363b1f6 hwmon/coretemp: Add more safety checks
Add detection of AE18 Errata of Core processor and warns
users that the absolute readings might be wrong for Core2 processor.

Signed-off-by: Rudolf Marek <r.marek@assembler.cz>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-05-27 22:17:43 +02:00
Jean Delvare
7574d7e937 hwmon/ds1621: Fix swapped temperature limits
The low temperature limit and the high temperature limit registers
have been accidentally swapped, causing alarms to trigger
when they shouldn't.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Acked-by: Aurelien Jarno <aurelien@aurel32.net>
2007-05-27 22:17:43 +02:00
Nicolas Boichat
fa74419bb7 applesmc - sensors patch missing from 2.6.22-rc2
Add name file needed by lm_sensors user-space applications in applesmc
sysfs tree.

Cc: Soeren Sonnenburg <kernel@nn7.de>
Cc: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-05-23 20:14:15 -07:00
Linus Torvalds
fc0b60f1dc Merge branch 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6
* 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6:
  [S390] update default configuration.
  [S390] Kconfig: no wireless on s390.
  [S390] Kconfig: use common Kconfig files for s390.
  [S390] Kconfig: common config options for s390.
  [S390] Kconfig: unwanted menus for s390.
  [S390] Kconfig: menus with depends on HAS_IOMEM.
  [S390] Kconfig: refine depends statements.
  [S390] Avoid compile warning.
  [S390] qdio: re-add lost perf_stats.tl_runs change in qdio_handle_pci
  [S390] Avoid sparse warnings.
  [S390] dasd: Fix modular build.
  [S390] monreader inlining cleanup.
  [S390] cio: Make some structures and a function static.
  [S390] cio: Get rid of _ccw_device_get_device_number().
  [S390] fix subsystem removal fallout
2007-05-10 11:50:51 -07:00
Dmitry Torokhov
c5ddb547e8 drivers/hwmon: switch to using input_dev->dev.parent
In preparation for struct class_device -> struct device input core
conversion, switch to using input_dev->dev.parent when specifying device
position in sysfs tree.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Acked-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-05-10 09:26:53 -07:00
Martin Schwidefsky
e25df1205f [S390] Kconfig: menus with depends on HAS_IOMEM.
Add "depends on HAS_IOMEM" to a number of menus to make them
disappear for s390 which does not have I/O memory.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2007-05-10 15:46:07 +02:00
Rafael J. Wysocki
8bb7844286 Add suspend-related notifications for CPU hotplug
Since nonboot CPUs are now disabled after tasks and devices have been
frozen and the CPU hotplug infrastructure is used for this purpose, we need
special CPU hotplug notifications that will help the CPU-hotplug-aware
subsystems distinguish normal CPU hotplug events from CPU hotplug events
related to a system-wide suspend or resume operation in progress.  This
patch introduces such notifications and causes them to be used during
suspend and resume transitions.  It also changes all of the
CPU-hotplug-aware subsystems to take these notifications into consideration
(for now they are handled in the same way as the corresponding "normal"
ones).

[oleg@tv-sign.ru: cleanups]
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Cc: Gautham R Shenoy <ego@in.ibm.com>
Cc: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-05-09 12:30:56 -07:00
Jean Delvare
da4e8ca376 applesmc: Use standard sysfs names for labels
We have a standard suffix to associate a designation string to a sensor:
_label.  Use it instead of _position so that libsensors will catch it.
(This isn't implemented yet, but should be soon.)

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Nicolas Boichat <nicolas@boichat.ch>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-05-08 20:41:14 -07:00
Jean Delvare
ddfbf2afd5 applesmc: Use the address as platform device ID
Let the applesmc device export its address to userspace.  libsensors needs
this to recognize the device and give it a unique ID.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Nicolas Boichat <nicolas@boichat.ch>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-05-08 20:41:14 -07:00
Linus Torvalds
36f021b579 Merge branch 'hwmon-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6
* 'hwmon-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6: (32 commits)
  Use menuconfig objects - hwmon
  hwmon/smsc47b397: Use dynamic sysfs callbacks
  hwmon/smsc47b397: Convert to a platform driver
  hwmon/w83781d: Deprecate W83627HF support
  hwmon/w83781d: Use dynamic sysfs callbacks
  hwmon/w83781d: Be less i2c_client-centric
  hwmon/w83781d: Clean up conversion macros
  hwmon/w83781d: No longer use i2c-isa
  hwmon/ams: Do not print error on systems without apple motion sensor
  hwmon/ams: Fix I2C read retry logic
  hwmon: New AD7416, AD7417 and AD7418 driver
  hwmon/coretemp: Add documentation
  hwmon: New coretemp driver
  i386: Use functions from library in msr driver
  i386: Add safe variants of rdmsr_on_cpu and wrmsr_on_cpu
  hwmon/lm75: Use dynamic sysfs callbacks
  hwmon/lm78: Use dynamic sysfs callbacks
  hwmon/lm78: Be less i2c_client-centric
  hwmon/lm78: No longer use i2c-isa
  hwmon: New max6650 driver
  ...
2007-05-08 12:07:28 -07:00
Linus Torvalds
df6d3916f3 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc
* 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc: (77 commits)
  [POWERPC] Abolish powerpc_flash_init()
  [POWERPC] Early serial debug support for PPC44x
  [POWERPC] Support for the Ebony 440GP reference board in arch/powerpc
  [POWERPC] Add device tree for Ebony
  [POWERPC] Add powerpc/platforms/44x, disable platforms/4xx for now
  [POWERPC] MPIC U3/U4 MSI backend
  [POWERPC] MPIC MSI allocator
  [POWERPC] Enable MSI mappings for MPIC
  [POWERPC] Tell Phyp we support MSI
  [POWERPC] RTAS MSI implementation
  [POWERPC] PowerPC MSI infrastructure
  [POWERPC] Rip out the existing powerpc msi stubs
  [POWERPC] Remove use of 4level-fixup.h for ppc32
  [POWERPC] Add powerpc PCI-E reset API implementation
  [POWERPC] Holly bootwrapper
  [POWERPC] Holly DTS
  [POWERPC] Holly defconfig
  [POWERPC] Add support for 750CL Holly board
  [POWERPC] Generalize tsi108 PCI setup
  [POWERPC] Generalize tsi108 PHY types
  ...

Fixed conflict in include/asm-powerpc/kdebug.h manually

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-05-08 11:50:19 -07:00
Matthias Kaehlcke
6acc369a43 use mutex instead of semaphore in hdaps driver
The hdaps driver uses a semaphore as mutex.  Use the mutex API instead of the
(binary) semaphore.

Signed-off-by: Matthias Kaehlcke <matthias.kaehlcke@gmail.com>
Cc: Robert Love <rlove@rlove.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-05-08 11:15:15 -07:00
Nicolas Boichat
6f2fad748c Apple SMC driver (hardware monitoring and control)
This driver provides support for the Apple System Management Controller, which
provides an accelerometer (Apple Sudden Motion Sensor), light sensors,
temperature sensors, keyboard backlight control and fan control. Only
Intel-based Apple's computers are supported (MacBook Pro, MacBook, MacMini).

[bunk@stusta.de: make drivers/hwmon/applesmc.c:backlight_work stati]
[khali@linux-fr.org: fix temperature attribute file names]
Signed-off-by: Nicolas Boichat <nicolas@boichat.ch>
Cc: Jean Delvare <khali@linux-fr.org>
Cc: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-05-08 11:15:00 -07:00
Jan Engelhardt
1d72acf91a Use menuconfig objects - hwmon
Change Kconfig objects from "menu, config" into "menuconfig" so
that the user can disable the whole feature without having to
enter the menu first.

Signed-off-by: Jan Engelhardt <jengelh@gmx.de>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-05-08 17:22:04 +02:00
Jean Delvare
3659a0178f hwmon/smsc47b397: Use dynamic sysfs callbacks
This lets us get rid of macro-generated functions and shrinks the
driver size by a small amount.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-05-08 17:22:03 +02:00
Jean Delvare
292fc1a5ff hwmon/smsc47b397: Convert to a platform driver
Convert the smsc47b397 driver from the nonsensical i2c-isa hack to a
regular platform driver.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-05-08 17:22:03 +02:00
Jean Delvare
f5f8d38b18 hwmon/w83781d: Deprecate W83627HF support
The W83627HF is better supported by the w83627hf driver.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-05-08 17:22:03 +02:00
Jean Delvare
348753379a hwmon/w83781d: Use dynamic sysfs callbacks
This lets us get rid of some of the macro-generated functions and
shrinks the driver size significantly (about 9%).

Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-05-08 17:22:03 +02:00
Jean Delvare
31b8dc4d58 hwmon/w83781d: Be less i2c_client-centric
Use the driver data structure as the main device reference, instead of
the i2c client. It makes the driver a bit smaller, and makes more sense
as this is an hybrid driver, supporting both I2C and ISA devices.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-05-08 17:22:03 +02:00
Jean Delvare
474d00a891 hwmon/w83781d: Clean up conversion macros
* Fix voltage rounding
* Drop useless macros
* Drop useless casts
* Turn macros evaluating their parameters more than once into inline
  functions
* Use signed variables for temperatures

Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-05-08 17:22:03 +02:00
Jean Delvare
7666c13c62 hwmon/w83781d: No longer use i2c-isa
Reimplement the ISA device support as a platform driver, so that we no
longer rely on i2c-isa.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-05-08 17:22:02 +02:00
Olaf Hering
47a5dba1dc hwmon/ams: Do not print error on systems without apple motion sensor
It is not an error if a system has no ams hardware.  Do not clutter dmesg
in this case.

Signed-off-by: Olaf Hering <olaf@aepfle.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Acked-by: Michael Hanselmann <linux-kernel@hansmi.ch>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-05-08 17:22:02 +02:00
Stelian Pop
63232dcd55 hwmon/ams: Fix I2C read retry logic
Fix sleep and retry logic in ams-i2c.

Signed-off-by: Stelian Pop <stelian@popies.net>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-05-08 17:22:02 +02:00
Alessandro Zummo
2d8dd65fc1 hwmon: New AD7416, AD7417 and AD7418 driver
A driver for the Analog Devices AD7416, AD7417 and AD7418 chips.

Signed-off-by: Alessandro Zummo <a.zummo@towertech.it>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-05-08 17:22:02 +02:00
Rudolf Marek
bebe467823 hwmon: New coretemp driver
Add the support for the digital temperature sensor found in recent
Intel Core CPUs.

Signed-off-by: Rudolf Marek <r.marek@assembler.cz>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-05-08 17:22:02 +02:00
Jean Delvare
9ca8e40c84 hwmon/lm75: Use dynamic sysfs callbacks
This lets us get rid of macro-generated functions and shrinks the
driver size by about 8%.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-05-08 17:22:01 +02:00
Jean Delvare
247dde4cdd hwmon/lm78: Use dynamic sysfs callbacks
This lets us get rid of macro-generated functions and shrinks the
driver size significantly (about 10%).

Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-05-08 17:22:01 +02:00
Jean Delvare
c59cc301ee hwmon/lm78: Be less i2c_client-centric
Use the driver data structure as the main device reference, instead of
the i2c client. It makes the driver a bit smaller, and makes more sense
as this is an hybrid driver, supporting both I2C and ISA devices.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-05-08 17:22:01 +02:00
Jean Delvare
c40769fee1 hwmon/lm78: No longer use i2c-isa
Reimplement the ISA device support as a platform driver, so that we no
longer rely on i2c-isa.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-05-08 17:22:00 +02:00
Hans-Juergen Koch
d20620de0c hwmon: New max6650 driver
This driver supports the Maxim MAX6650 and MAX6651 fan speed
monitoring and control chips.

Signed-off-by: Hans J. Koch <hjk@linutronix.de>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-05-08 17:22:00 +02:00