mirror of
https://github.com/torvalds/linux.git
synced 2024-11-18 18:11:56 +00:00
8918023d40
This module parameter is there to workaround broken BIOS. I'm not even sure if it was used in the past 5 years, and it gets in the way of converting the driver to the MFD infrastructure. So tell the users how they can do the same from user-space. Signed-off-by: Jean Delvare <khali@linux-fr.org> Cc: Rodolfo Giometti <giometti@linux.it>
98 lines
3.6 KiB
Plaintext
98 lines
3.6 KiB
Plaintext
Kernel driver w83627hf
|
|
======================
|
|
|
|
Supported chips:
|
|
* Winbond W83627HF (ISA accesses ONLY)
|
|
Prefix: 'w83627hf'
|
|
Addresses scanned: ISA address retrieved from Super I/O registers
|
|
Datasheet: http://www.winbond.com/PDF/sheet/w83627hf.pdf
|
|
* Winbond W83627THF
|
|
Prefix: 'w83627thf'
|
|
Addresses scanned: ISA address retrieved from Super I/O registers
|
|
Datasheet: http://www.winbond.com/PDF/sheet/w83627thf.pdf
|
|
* Winbond W83697HF
|
|
Prefix: 'w83697hf'
|
|
Addresses scanned: ISA address retrieved from Super I/O registers
|
|
Datasheet: http://www.winbond.com/PDF/sheet/697hf.pdf
|
|
* Winbond W83637HF
|
|
Prefix: 'w83637hf'
|
|
Addresses scanned: ISA address retrieved from Super I/O registers
|
|
Datasheet: http://www.winbond.com/PDF/sheet/w83637hf.pdf
|
|
* Winbond W83687THF
|
|
Prefix: 'w83687thf'
|
|
Addresses scanned: ISA address retrieved from Super I/O registers
|
|
Datasheet: Provided by Winbond on request
|
|
|
|
Authors:
|
|
Frodo Looijaard <frodol@dds.nl>,
|
|
Philip Edelbrock <phil@netroedge.com>,
|
|
Mark Studebaker <mdsxyz123@yahoo.com>,
|
|
Bernhard C. Schrenk <clemy@clemy.org>
|
|
|
|
Module Parameters
|
|
-----------------
|
|
|
|
* force_i2c: int
|
|
Initialize the I2C address of the sensors
|
|
* init: int
|
|
(default is 1)
|
|
Use 'init=0' to bypass initializing the chip.
|
|
Try this if your computer crashes when you load the module.
|
|
|
|
Description
|
|
-----------
|
|
|
|
This driver implements support for ISA accesses *only* for
|
|
the Winbond W83627HF, W83627THF, W83697HF and W83637HF Super I/O chips.
|
|
We will refer to them collectively as Winbond chips.
|
|
|
|
This driver supports ISA accesses, which should be more reliable
|
|
than i2c accesses. Also, for Tyan boards which contain both a
|
|
Super I/O chip and a second i2c-only Winbond chip (often a W83782D),
|
|
using this driver will avoid i2c address conflicts and complex
|
|
initialization that were required in the w83781d driver.
|
|
|
|
If you really want i2c accesses for these Super I/O chips,
|
|
use the w83781d driver. However this is not the preferred method
|
|
now that this ISA driver has been developed.
|
|
|
|
The w83627_HF_ uses pins 110-106 as VID0-VID4. The w83627_THF_ uses the
|
|
same pins as GPIO[0:4]. Technically, the w83627_THF_ does not support a
|
|
VID reading. However the two chips have the identical 128 pin package. So,
|
|
it is possible or even likely for a w83627thf to have the VID signals routed
|
|
to these pins despite their not being labeled for that purpose. Therefore,
|
|
the w83627thf driver interprets these as VID. If the VID on your board
|
|
doesn't work, first see doc/vid in the lm_sensors package[1]. If that still
|
|
doesn't help, you may just ignore the bogus VID reading with no harm done.
|
|
|
|
For further information on this driver see the w83781d driver documentation.
|
|
|
|
[1] http://www.lm-sensors.org/browser/lm-sensors/trunk/doc/vid
|
|
|
|
Forcing the address
|
|
-------------------
|
|
|
|
The driver used to have a module parameter named force_addr, which could
|
|
be used to force the base I/O address of the hardware monitoring block.
|
|
This was meant as a workaround for mainboards with a broken BIOS. This
|
|
module parameter is gone for technical reasons. If you need this feature,
|
|
you can obtain the same result by using the isaset tool (part of
|
|
lm-sensors) before loading the driver:
|
|
|
|
# Enter the Super I/O config space
|
|
isaset -y -f 0x2e 0x87
|
|
isaset -y -f 0x2e 0x87
|
|
|
|
# Select the hwmon logical device
|
|
isaset -y 0x2e 0x2f 0x07 0x0b
|
|
|
|
# Set the base I/O address (to 0x290 in this example)
|
|
isaset -y 0x2e 0x2f 0x60 0x02
|
|
isaset -y 0x2e 0x2f 0x61 0x90
|
|
|
|
# Exit the Super-I/O config space
|
|
isaset -y -f 0x2e 0xaa
|
|
|
|
The above sequence assumes a Super-I/O config space at 0x2e/0x2f, but
|
|
0x4e/0x4f is also possible.
|