Kyle Swenson | 8d8f654 | 2021-03-15 11:02:55 -0600 | [diff] [blame] | 1 | Kernel driver w83627hf |
| 2 | ====================== |
| 3 | |
| 4 | Supported chips: |
| 5 | * Winbond W83627HF (ISA accesses ONLY) |
| 6 | Prefix: 'w83627hf' |
| 7 | Addresses scanned: ISA address retrieved from Super I/O registers |
| 8 | * Winbond W83627THF |
| 9 | Prefix: 'w83627thf' |
| 10 | Addresses scanned: ISA address retrieved from Super I/O registers |
| 11 | * Winbond W83697HF |
| 12 | Prefix: 'w83697hf' |
| 13 | Addresses scanned: ISA address retrieved from Super I/O registers |
| 14 | * Winbond W83637HF |
| 15 | Prefix: 'w83637hf' |
| 16 | Addresses scanned: ISA address retrieved from Super I/O registers |
| 17 | * Winbond W83687THF |
| 18 | Prefix: 'w83687thf' |
| 19 | Addresses scanned: ISA address retrieved from Super I/O registers |
| 20 | Datasheet: Provided by Winbond on request(http://www.winbond.com/hq/enu) |
| 21 | |
| 22 | Authors: |
| 23 | Frodo Looijaard <frodol@dds.nl>, |
| 24 | Philip Edelbrock <phil@netroedge.com>, |
| 25 | Mark Studebaker <mdsxyz123@yahoo.com>, |
| 26 | Bernhard C. Schrenk <clemy@clemy.org> |
| 27 | |
| 28 | Module Parameters |
| 29 | ----------------- |
| 30 | |
| 31 | * force_i2c: int |
| 32 | Initialize the I2C address of the sensors |
| 33 | * init: int |
| 34 | (default is 1) |
| 35 | Use 'init=0' to bypass initializing the chip. |
| 36 | Try this if your computer crashes when you load the module. |
| 37 | |
| 38 | Description |
| 39 | ----------- |
| 40 | |
| 41 | This driver implements support for ISA accesses *only* for |
| 42 | the Winbond W83627HF, W83627THF, W83697HF and W83637HF Super I/O chips. |
| 43 | We will refer to them collectively as Winbond chips. |
| 44 | |
| 45 | This driver supports ISA accesses, which should be more reliable |
| 46 | than i2c accesses. Also, for Tyan boards which contain both a |
| 47 | Super I/O chip and a second i2c-only Winbond chip (often a W83782D), |
| 48 | using this driver will avoid i2c address conflicts and complex |
| 49 | initialization that were required in the w83781d driver. |
| 50 | |
| 51 | If you really want i2c accesses for these Super I/O chips, |
| 52 | use the w83781d driver. However this is not the preferred method |
| 53 | now that this ISA driver has been developed. |
| 54 | |
| 55 | The w83627_HF_ uses pins 110-106 as VID0-VID4. The w83627_THF_ uses the |
| 56 | same pins as GPIO[0:4]. Technically, the w83627_THF_ does not support a |
| 57 | VID reading. However the two chips have the identical 128 pin package. So, |
| 58 | it is possible or even likely for a w83627thf to have the VID signals routed |
| 59 | to these pins despite their not being labeled for that purpose. Therefore, |
| 60 | the w83627thf driver interprets these as VID. If the VID on your board |
| 61 | doesn't work, first see doc/vid in the lm_sensors package[1]. If that still |
| 62 | doesn't help, you may just ignore the bogus VID reading with no harm done. |
| 63 | |
| 64 | For further information on this driver see the w83781d driver documentation. |
| 65 | |
| 66 | [1] http://www.lm-sensors.org/browser/lm-sensors/trunk/doc/vid |
| 67 | |
| 68 | Forcing the address |
| 69 | ------------------- |
| 70 | |
| 71 | The driver used to have a module parameter named force_addr, which could |
| 72 | be used to force the base I/O address of the hardware monitoring block. |
| 73 | This was meant as a workaround for mainboards with a broken BIOS. This |
| 74 | module parameter is gone for technical reasons. If you need this feature, |
| 75 | you can obtain the same result by using the isaset tool (part of |
| 76 | lm-sensors) before loading the driver: |
| 77 | |
| 78 | # Enter the Super I/O config space |
| 79 | isaset -y -f 0x2e 0x87 |
| 80 | isaset -y -f 0x2e 0x87 |
| 81 | |
| 82 | # Select the hwmon logical device |
| 83 | isaset -y 0x2e 0x2f 0x07 0x0b |
| 84 | |
| 85 | # Set the base I/O address (to 0x290 in this example) |
| 86 | isaset -y 0x2e 0x2f 0x60 0x02 |
| 87 | isaset -y 0x2e 0x2f 0x61 0x90 |
| 88 | |
| 89 | # Exit the Super-I/O config space |
| 90 | isaset -y -f 0x2e 0xaa |
| 91 | |
| 92 | The above sequence assumes a Super-I/O config space at 0x2e/0x2f, but |
| 93 | 0x4e/0x4f is also possible. |
| 94 | |
| 95 | Voltage pin mapping |
| 96 | ------------------- |
| 97 | |
| 98 | Here is a summary of the voltage pin mapping for the W83627THF. This |
| 99 | can be useful to convert data provided by board manufacturers into |
| 100 | working libsensors configuration statements. |
| 101 | |
| 102 | W83627THF | |
| 103 | Pin | Name | Register | Sysfs attribute |
| 104 | ----------------------------------------------------- |
| 105 | 100 | CPUVCORE | 20h | in0 |
| 106 | 99 | VIN0 | 21h | in1 |
| 107 | 98 | VIN1 | 22h | in2 |
| 108 | 97 | VIN2 | 24h | in4 |
| 109 | 114 | AVCC | 23h | in3 |
| 110 | 61 | 5VSB | 50h (bank 5) | in7 |
| 111 | 74 | VBAT | 51h (bank 5) | in8 |
| 112 | |
| 113 | For other supported devices, you'll have to take the hard path and |
| 114 | look up the information in the datasheet yourself (and then add it |
| 115 | to this document please.) |