123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- 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
- http://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:
- http://ww1.microchip.com/downloads/en/DeviceDoc/1422.pdf
- * SMSC / Microchip EMC1423, EMC1424
- Addresses scanned: I2C 0x4c
- Prefix: 'emc1423', 'emc1424'
- Datasheet:
- http://ww1.microchip.com/downloads/en/DeviceDoc/1423_1424.pdf
- Author:
- Kalhan Trisal <kalhan.trisal@intel.com
- Description
- -----------
- The Standard Microsystems Corporation (SMSC) / Microchip EMC14xx chips
- contain up to four temperature sensors. EMC14x2 support two sensors
- (one internal, one external). EMC14x3 support three sensors (one internal,
- two external), and EMC14x4 support four sensors (one internal, three
- 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.
|