| 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. |