Commit 08a8f6e9 authored by Rudolf Marek's avatar Rudolf Marek Committed by Mark M. Hoffman

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: default avatarRudolf Marek <r.marek@assembler.cz>
Signed-off-by: default avatarJean Delvare <khali@linux-fr.org>
parent 7817a39e
...@@ -12,11 +12,12 @@ Supported chips: ...@@ -12,11 +12,12 @@ Supported chips:
Addresses scanned: from Super I/O config space (8 I/O ports) Addresses scanned: from Super I/O config space (8 I/O ports)
Datasheet: Publicly available at the ITE website Datasheet: Publicly available at the ITE website
http://www.ite.com.tw/ http://www.ite.com.tw/
* IT8716F * IT8716F/IT8726F
Prefix: 'it8716' Prefix: 'it8716'
Addresses scanned: from Super I/O config space (8 I/O ports) Addresses scanned: from Super I/O config space (8 I/O ports)
Datasheet: Publicly available at the ITE website Datasheet: Publicly available at the ITE website
http://www.ite.com.tw/product_info/file/pc/IT8716F_V0.3.ZIP http://www.ite.com.tw/product_info/file/pc/IT8716F_V0.3.ZIP
http://www.ite.com.tw/product_info/file/pc/IT8726F_V0.3.pdf
* IT8718F * IT8718F
Prefix: 'it8718' Prefix: 'it8718'
Addresses scanned: from Super I/O config space (8 I/O ports) Addresses scanned: from Super I/O config space (8 I/O ports)
...@@ -68,7 +69,7 @@ Description ...@@ -68,7 +69,7 @@ Description
----------- -----------
This driver implements support for the IT8705F, IT8712F, IT8716F, This driver implements support for the IT8705F, IT8712F, IT8716F,
IT8718F and SiS950 chips. IT8718F, IT8726F and SiS950 chips.
These chips are 'Super I/O chips', supporting floppy disks, infrared ports, These chips are 'Super I/O chips', supporting floppy disks, infrared ports,
joysticks and other miscellaneous stuff. For hardware monitoring, they joysticks and other miscellaneous stuff. For hardware monitoring, they
...@@ -97,6 +98,10 @@ clock divider mess) but not compatible with the older chips and ...@@ -97,6 +98,10 @@ clock divider mess) but not compatible with the older chips and
revisions. For now, the driver only uses the 16-bit mode on the revisions. For now, the driver only uses the 16-bit mode on the
IT8716F and IT8718F. IT8716F and IT8718F.
The IT8726F is just bit enhanced IT8716F with additional hardware
for AMD power sequencing. Therefore the chip will appear as IT8716F
to userspace applications.
Temperatures are measured in degrees Celsius. An alarm is triggered once Temperatures are measured in degrees Celsius. An alarm is triggered once
when the Overtemperature Shutdown limit is crossed. when the Overtemperature Shutdown limit is crossed.
......
...@@ -255,7 +255,7 @@ config SENSORS_IT87 ...@@ -255,7 +255,7 @@ config SENSORS_IT87
select HWMON_VID select HWMON_VID
help help
If you say yes here you get support for ITE IT8705F, IT8712F, If you say yes here you get support for ITE IT8705F, IT8712F,
IT8716F and IT8718F sensor chips, and the SiS960 clone. IT8716F, IT8718F and IT8726F sensor chips, and the SiS960 clone.
This driver can also be built as a module. If so, the module This driver can also be built as a module. If so, the module
will be called it87. will be called it87.
......
...@@ -6,6 +6,7 @@ ...@@ -6,6 +6,7 @@
IT8712F Super I/O chip w/LPC interface IT8712F Super I/O chip w/LPC interface
IT8716F Super I/O chip w/LPC interface IT8716F Super I/O chip w/LPC interface
IT8718F Super I/O chip w/LPC interface IT8718F Super I/O chip w/LPC interface
IT8726F Super I/O chip w/LPC interface
Sis950 A clone of the IT8705F Sis950 A clone of the IT8705F
Copyright (C) 2001 Chris Gauthron <chrisg@0-in.com> Copyright (C) 2001 Chris Gauthron <chrisg@0-in.com>
...@@ -97,6 +98,7 @@ superio_exit(void) ...@@ -97,6 +98,7 @@ superio_exit(void)
#define IT8705F_DEVID 0x8705 #define IT8705F_DEVID 0x8705
#define IT8716F_DEVID 0x8716 #define IT8716F_DEVID 0x8716
#define IT8718F_DEVID 0x8718 #define IT8718F_DEVID 0x8718
#define IT8726F_DEVID 0x8726
#define IT87_ACT_REG 0x30 #define IT87_ACT_REG 0x30
#define IT87_BASE_REG 0x60 #define IT87_BASE_REG 0x60
...@@ -885,6 +887,7 @@ static int __init it87_find(unsigned short *address) ...@@ -885,6 +887,7 @@ static int __init it87_find(unsigned short *address)
chip_type = superio_inw(DEVID); chip_type = superio_inw(DEVID);
if (chip_type != IT8712F_DEVID if (chip_type != IT8712F_DEVID
&& chip_type != IT8716F_DEVID && chip_type != IT8716F_DEVID
&& chip_type != IT8726F_DEVID
&& chip_type != IT8718F_DEVID && chip_type != IT8718F_DEVID
&& chip_type != IT8705F_DEVID) && chip_type != IT8705F_DEVID)
goto exit; goto exit;
...@@ -965,6 +968,8 @@ static int it87_detect(struct i2c_adapter *adapter) ...@@ -965,6 +968,8 @@ static int it87_detect(struct i2c_adapter *adapter)
data->type = it8712; data->type = it8712;
name = "it8712"; name = "it8712";
break; break;
case IT8726F_DEVID:
/* fall through */
case IT8716F_DEVID: case IT8716F_DEVID:
data->type = it8716; data->type = it8716;
name = "it8716"; name = "it8716";
...@@ -1389,7 +1394,7 @@ static void __exit sm_it87_exit(void) ...@@ -1389,7 +1394,7 @@ static void __exit sm_it87_exit(void)
MODULE_AUTHOR("Chris Gauthron <chrisg@0-in.com>, " MODULE_AUTHOR("Chris Gauthron <chrisg@0-in.com>, "
"Jean Delvare <khali@linux-fr.org>"); "Jean Delvare <khali@linux-fr.org>");
MODULE_DESCRIPTION("IT8705F/8712F/8716F/8718F, SiS950 driver"); MODULE_DESCRIPTION("IT8705F/8712F/8716F/8718F/8726F, SiS950 driver");
module_param(update_vbat, bool, 0); module_param(update_vbat, bool, 0);
MODULE_PARM_DESC(update_vbat, "Update vbat if set else return powerup value"); MODULE_PARM_DESC(update_vbat, "Update vbat if set else return powerup value");
module_param(fix_pwm_polarity, bool, 0); module_param(fix_pwm_polarity, bool, 0);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment