15 Mar, 2011
11 commits
-
Systems with NCT6775F reported temperature sensor labels for systems with
NCT6776F. This patch fixes the problem.Signed-off-by: Guenter Roeck
-
NCT6776F and NCT6775F support debouncing the fan RPM signal. This can
help improve the stability of th RPM signal for some fans (Arctic cooling
fans for example).
This patch adds a module parameter fan_debounce, which when set to 1 enables
debounce for all fans that the chip supports.Signed-off-by: Ian Dobson
Signed-off-by: Guenter Roeck -
Since the fan speed value can be above 0xff, we can no longer use
that value to determine if the fan speed reading is valid. This
makes it difficult to manipulate the stored fan speed register value.If we store rpm instead of the fan speed register value, we do not
need to correct it if the fan divisor value is changed, and the above
mentioned problem no longer exists.Signed-off-by: Guenter Roeck
Acked-by: Ian Dobson -
Some of the chips supported by this driver have 13 bit or 16 bit fan count
registers. This patch improves support for those registers, specifically for
NCT6775F. With the changes in this patch, fan speed is reported correctly even
if the fan divider is set to a low value, which results in a fan speed reading
above 0xff.With this patch, the width of fan count registers is no longer used to determine
if the chip has fan divider register(s) or not. A dedicated flag is used instead
to determine if this is the case.Signed-off-by: Guenter Roeck
Acked-by: Ian Dobson -
This patch adds support for NCT6775F and NCT6776F to the w83627ehf driver.
Signed-off-by: Guenter Roeck
Tested-by: Ian Dobson (NCT6776F)
Tested-by: Zachary Marzec (ASUS P8P67 PRO/NCT6776F)
Acked-by: Ian Dobson -
If SmartFan IV mode was configured at startup, it should be possible
to re-enable it later on.Signed-off-by: Guenter Roeck
Acked-by: Ian Dobson -
For newer chips, several registers are banked and thus need to be 16 bit.
Also, register addresses change.To prepare for those chips, convert affected register arrays to 16 bit,
and change access to those registers to array pointers in struct w83627ehf_data.Signed-off-by: Guenter Roeck
Acked-by: Ian Dobson -
Add support for 4th temperature sensor on W83677HG-B.
Display temperature labels on W83677HG-B to report temperature sources.Signed-off-by: Guenter Roeck
Acked-by: Ian Dobson -
Assume that each register is banked, and set the bank for each access.
Cache the bank number so it only needs to be set if it changes.Signed-off-by: Guenter Roeck
Acked-by: Ian Dobson -
This cleanup fixes most of the checkpatch warnings and errors in the w83627ehf
driver. Remaining warnings and errors are left untouched on purpose to avoid
making the code less readable.Signed-off-by: Guenter Roeck
Acked-by: Ian Dobson -
This patch unifies temperature register access, and replaces simple_strtoXXX
with strict_strtoXXX throughout the driver.Signed-off-by: Guenter Roeck
Acked-by: Ian Dobson
09 Jan, 2011
1 commit
-
Added #define pr_fmt KBUILD_MODNAME ": " fmt
Converted printks to pr_
Coalesced any long formats
Removed prefixes from formatsSigned-off-by: Joe Perches
Signed-off-by: Guenter Roeck
17 Sep, 2010
1 commit
-
According to the datasheet for Winbond W83627DHG the proper way to exit
the Extended Function Mode is to write 0xaa to the EFER(0x2e or 0x4e).Signed-off-by: Jonas Jonsson
Signed-off-by: Jean Delvare
15 Aug, 2010
2 commits
-
Add support for W83667HG-B (very similar to the W83667HG).
Signed-off-by: Guenter Roeck
Signed-off-by: Jean Delvare -
- Moved fan pwm register array pointers into per-instance data.
- Only read fan pwm data for installed/supported fans.
- Update fan max output and fan step output information from data in
registers.
- Create max_output and step_output attribute files only if respective
fan pwm registers exist.Signed-off-by: Guenter Roeck
Signed-off-by: Jean Delvare
16 Dec, 2009
1 commit
-
Add control of fan minimum turn-on output levels, decoupling it from the
fan turn-off output level. Add control of rate of change of fan output
level. These in turn allow lower turn-off rotor speed and smoother
transitions for better thermal and acoustic control authority. Add
support for constant fan speed and proportional-response operations modes.[akpm@linux-foundation.org: coding-style fixes]
Signed-off-by: Daniel J Blueman
Cc: Jean Delvare
Cc: David Hubbard
Cc: Hans de Goede
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
15 Sep, 2009
1 commit
-
Drivers should be including instead of .
Signed-off-by: H Hartley Sweeten
Cc: Alistair John Strachan
Cc: Nicolas Boichat
Cc: Juerg Haefliger
Cc: Frank Seidel
Acked-by: Jim Cromie
Cc: "Mark M. Hoffman"
Cc: Roger Lucas
Signed-off-by: Jean Delvare
16 Jun, 2009
1 commit
-
Add support for the new incarnation of the Winbond/Nuvoton W83627DHG
chip known as W83627DHG-P. It is basically the same as the original
W83627DHG with an additional automatic can speed control mode (not
supported by the driver yet.)Signed-off-by: Jean Delvare
Tested-by: Madhu
31 Mar, 2009
3 commits
-
The pin for in6 and temp3 is shared on the W83667HG, so only one of
these features can be supported on any given system. Let the driver
select which one depending on the temp3 disabled bit.Signed-off-by: Gong Jun
Signed-off-by: Jean Delvare -
Add initial support for the Nuvoton W83667HG chip to the w83627ehf
driver. It has been tested on ASUS P5QL PRO by Gong Jun.At the moment there is still a usability issue which is that only in6
or temp3 can be present on the W83667HG, so the driver shouldn't
expose both. This will be addressed later.Signed-off-by: Gong Jun
Acked-by: David Hubbard
Signed-off-by: Jean Delvare -
Use positive logic for fan pin variables (variable is set if pin is
used for fan), instead of negative logic which is error prone.Signed-off-by: Jean Delvare
Cc: Gong Jun
18 Feb, 2009
1 commit
-
This patch fixes a number of cases where things were not properly
cleaned up when acpi_check_resource_conflict() returned an error,
causing oopses such as the one reported here:
https://bugzilla.redhat.com/show_bug.cgi?id=483208Signed-off-by: Hans de Goede
Signed-off-by: Jean Delvare
07 Jan, 2009
2 commits
-
Signed-off-by: Jean Delvare
Acked-by: Hans de Goede
Acked-by: David Hubbard -
Check for ACPI resource conflicts in hwmon drivers. I've included
all Super-I/O and PCI drivers.I've voluntarily left out:
* Vendor-specific drivers: if they conflicted on any system, this would
pretty much mean that they conflict on all systems, and we would know
by now.
* Legacy ISA drivers (lm78 and w83781d): they only support chips found
on old designs were ACPI either wasn't supported or didn't deal with
thermal management.
* Drivers accessing the I/O resources indirectly (e.g. through SMBus):
the checks are already done where they belong, i.e. in the bus drivers.Signed-off-by: Jean Delvare
Acked-by: David Hubbard
08 Feb, 2008
2 commits
-
While the W83627EHF/EHG has only 6 VID pins, the W83627DHG has 8 VID
pins, to support VRD 11.0. Add support for this.Signed-off-by: Jean Delvare
Signed-off-by: Mark M. Hoffman -
While it is possible to force SMBus-based hardware monitoring chip
drivers to drive a not officially supported device, we do not have this
possibility for Super-I/O-based drivers. That's unfortunate because
sometimes newer chips are fully compatible and just forcing the driver
to load would work. Instead of that we have to tell the users to
recompile the kernel driver, which isn't an easy task for everyone.So, I propose that we add a module parameter to all Super-I/O based
hardware monitoring drivers, letting advanced users force the driver
to load on their machine. The user has to provide the device ID of a
supposedly compatible device. This requires looking at the source code or
a datasheet, so I am confident that users can't randomly force a driver
without knowing what they are doing. Thus this should be relatively safe.As you can see from the code, the implementation is pretty simple and
unintrusive.Signed-off-by: Jean Delvare
Acked-by: Hans de Goede
Signed-off-by: Mark M. Hoffman
03 Jan, 2008
1 commit
-
The VID input level change has been reported to cause trouble. Be more
careful in this respect:
* Only change the level on the W83627EHF/EHG. The W83627DHG is more
complex in this respect.
* Don't change the level if the VID pins are in output mode.
* Only set the level to TTL if VRM 9.x is used.Signed-off-by: Jean Delvare
Signed-off-by: Mark M. Hoffman
10 Oct, 2007
2 commits
-
Convert from class_device to device for hwmon_device_register/unregister
Signed-off-by: Tony Jones
Signed-off-by: Greg Kroah-Hartman
Signed-off-by: Kay Sievers
Signed-off-by: Mark M. Hoffman -
- replace differing temperature variable types by long
- use strtol() instead of strtoul() for conversionSigned-off-by: Christian Hohnstaedt
Acked-by: Jean Delvare
Signed-off-by: Mark M. Hoffman
13 Aug, 2007
2 commits
-
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
Signed-off-by: Mark M. Hoffman -
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
Signed-off-by: Jean Delvare
20 Jul, 2007
9 commits
-
This fixes bug #8593:
http://bugzilla.kernel.org/show_bug.cgi?id=8593Signed-off-by: Jean Delvare
Signed-off-by: Mark M. Hoffman -
We don't need to initialize fan_min in this driver, as the fan_div
attributes are read-only.Signed-off-by: Jean Delvare
Signed-off-by: Mark M. Hoffman -
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
Signed-off-by: Mark M. Hoffman -
If VBAT monitoring is disabled, enable it. Original patch from
an anonymous contributor on the lm-sensors trac system:
http://lm-sensors.org/ticket/2218Signed-off-by: Jean Delvare
Signed-off-by: Mark M. Hoffman -
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
Signed-off-by: Mark M. Hoffman -
* 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
Signed-off-by: Mark M. Hoffman -
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
Signed-off-by: Jean Delvare
Signed-off-by: Mark M. Hoffman -
Remove i2c-isa from the w83627ehf driver, and use a platform driver
instead.Signed-off-by: David Hubbard
Signed-off-by: Jean Delvare
Signed-off-by: Mark M. Hoffman -
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
Signed-off-by: Mark M. Hoffman