| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- Kernel driver emc1403
- =====================
- Supported chips:
- * SMSC / Microchip EMC1402, EMC1412
- Addresses scanned: I2C 0x18, 0x1c, 0x29, 0x4c, 0x4d, 0x5c
- Prefix: 'emc1402'
- Datasheets:
- - http://ww1.microchip.com/downloads/en/DeviceDoc/1412.pdf
- - https://ww1.microchip.com/downloads/en/DeviceDoc/1402.pdf
- * SMSC / Microchip EMC1403, EMC1404, EMC1413, EMC1414
- Addresses scanned: I2C 0x18, 0x29, 0x4c, 0x4d
- Prefix: 'emc1403', 'emc1404'
- Datasheets:
- - http://ww1.microchip.com/downloads/en/DeviceDoc/1403_1404.pdf
- - http://ww1.microchip.com/downloads/en/DeviceDoc/1413_1414.pdf
- * SMSC / Microchip EMC1422
- Addresses scanned: I2C 0x4c
- Prefix: 'emc1422'
- Datasheet:
- - https://ww1.microchip.com/downloads/en/DeviceDoc/1422.pdf
- * SMSC / Microchip EMC1423, EMC1424
- Addresses scanned: I2C 0x4c
- Prefix: 'emc1423', 'emc1424'
- Datasheet:
- - https://ww1.microchip.com/downloads/en/DeviceDoc/1423_1424.pdf
- * SMSC / Microchip EMC1428, EMC1438
- Addresses scanned: I2C 0x18, 0x4c, 0x4d
- Prefix: 'emc1428', 'emc1438'
- Datasheets:
- - https://ww1.microchip.com/downloads/aemDocuments/documents/OTH/ProductDocuments/DataSheets/20005275A.pdf
- - https://ww1.microchip.com/downloads/en/DeviceDoc/EMC1438%20DS%20Rev.%201.0%20(04-29-10).pdf
- Author:
- Kalhan Trisal <kalhan.trisal@intel.com>
- Description
- -----------
- The Standard Microsystems Corporation (SMSC) / Microchip EMC14xx chips
- contain up to eight temperature sensors. EMC14x2 support two sensors
- (one internal, one external). EMC14x3 support three sensors (one internal,
- two external), EMC14x4 support four sensors (one internal, three external),
- and EMC14x8 support eight sensors (one internal, seven external).
- The chips implement three limits for each sensor: low (tempX_min), high
- (tempX_max) and critical (tempX_crit.) The chips also implement an
- hysteresis mechanism which applies to all limits. The relative difference
- is stored in a single register on the chip, which means that the relative
- difference between the limit and its hysteresis is always the same for
- all three limits.
- This implementation detail implies the following:
- * When setting a limit, its hysteresis will automatically follow, the
- difference staying unchanged. For example, if the old critical limit
- was 80 degrees C, and the hysteresis was 75 degrees C, and you change
- the critical limit to 90 degrees C, then the hysteresis will
- automatically change to 85 degrees C.
- * The hysteresis values can't be set independently. We decided to make
- only temp1_crit_hyst writable, while all other hysteresis attributes
- are read-only. Setting temp1_crit_hyst writes the difference between
- temp1_crit_hyst and temp1_crit into the chip, and the same relative
- hysteresis applies automatically to all other limits.
- * The limits should be set before the hysteresis.
|