2
0
mirror of https://github.com/lm-sensors/lm-sensors synced 2025-09-04 00:05:10 +00:00

Add support for w83627thf. Includes patch from

Matthias Hentges <matthias@hentges.net>


git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@1784 7894878c-1315-0410-8ee3-d5d059ff63e0
This commit is contained in:
Mark D. Studebaker
2003-06-11 23:43:25 +00:00
parent 0b7a7b9787
commit 9c3c40097c
3 changed files with 28 additions and 2 deletions

View File

@@ -8,6 +8,10 @@ Supported chips:
Prefix 'w83627hf'
Addresses scanned: ISA address retrieved from Super I/O registers
Datasheet: Publicly available at the Winbond website
* Winbond W83627THF (ISA accesses ONLY)
Prefix 'w83627hf'
Addresses scanned: ISA address retrieved from Super I/O registers
Datasheet: unavailable
* Winbond W83697HF (ISA accesses ONLY)
Prefix 'w83697hf'
Addresses scanned: ISA address retrieved from Super I/O registers
@@ -46,8 +50,9 @@ Description
-----------
This driver implements support for ISA accesses *only* for
the Winbond W83627HF and W83697HF Super I/O chips.
the Winbond W83627HF, W83627THF, and W83697HF Super I/O chips.
We will refer to them collectively as Winbond chips.
The 627THF is treated as a 627HF.
This driver supports ISA accesses, which should be more reliable
than i2c accesses. Also, for Tyan boards which contain both a

View File

@@ -25,6 +25,7 @@
Chip #vin #fanin #pwm #temp wchipid vendid i2c ISA
w83627hf 9 3 2 3 0x20 0x5ca3 no yes(LPC)
w83627thf 9 2 ? 3 ?? 0x5ca3 no yes(LPC)
w83697hf 8 2 2 2 0x60 0x5ca3 no yes(LPC)
For other winbond chips, and for i2c support in the above chips,
@@ -115,6 +116,7 @@ superio_exit(void)
}
#define W627_DEVID 0x52
#define W627THF_DEVID 0x82
#define W697_DEVID 0x60
#define WINB_ACT_REG 0x30
#define WINB_BASE_REG 0x60
@@ -629,7 +631,7 @@ static int w83627hf_find(int *address)
superio_enter();
val= superio_inb(DEVID);
if(val != W627_DEVID && val != W697_DEVID) {
if(val != W627_DEVID && val !=W627THF_DEVID && val != W697_DEVID) {
superio_exit();
return -ENODEV;
}
@@ -685,6 +687,9 @@ int w83627hf_detect(struct i2c_adapter *adapter, int address,
kind = w83627hf;
else if(val == W697_DEVID)
kind = w83697hf;
else if(val == W627THF_DEVID)
kind = w83627hf;
superio_select();
if((val = 0x01 & superio_inb(WINB_ACT_REG)) == 0)
superio_outb(WINB_ACT_REG, 1);

View File

@@ -1228,6 +1228,22 @@ use subs qw(mtp008_detect lm78_detect lm78_isa_detect lm78_alias_detect
basereg => 0x60,
exit => 0xaa,
},
{
name => "Winbond W83627THF Super IO Sensors",
driver => "w83627hf",
addrreg => 0x2e,
exitreg => 0x2e,
datareg => 0x2f,
enter => [0x87, 0x87],
devidreg => 0x20,
devid => 0x82,
logdevreg => 0x07,
logdev => 0x0b,
actreg => 0x30,
actmask => 0x01,
basereg => 0x60,
exit => 0xaa,
},
{
name => "Winbond W83697HF Super IO Sensors",
driver => "w83627hf",