• Boyang Yu's avatar
    hwmon: (lm90) Fix max6658 sporadic wrong temperature reading · 62456189
    Boyang Yu authored
    max6658 may report unrealistically high temperature during
    the driver initialization, for which, its overtemp alarm pin
    also gets asserted. For certain devices implementing overtemp
    protection based on that pin, it may further trigger a reset to
    the device. By reproducing the problem, the wrong reading is
    found to be coincident with changing the conversion rate.
    
    To mitigate this issue, set the stop bit before changing the
    conversion rate and unset it thereafter. After such change, the
    wrong reading is not reproduced. Apply this change only to the
    max6657 kind for now, controlled by flag LM90_PAUSE_ON_CONFIG.
    Signed-off-by: default avatarBoyang Yu <byu@arista.com>
    Signed-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
    62456189
lm90.c 50.6 KB