• Akira Shimahara's avatar
    w1_therm: optimizing temperature read timings · 67b392f7
    Akira Shimahara authored
    Optimizing temperature reading by reducing waiting conversion time
    according to device resolution settings, as per device specification.
    This is device dependent as not all the devices supports resolution
    setting, so it has been added in device family structures.
    
    The process to read the temperature on the device has been adapted in a
    new function 'convert_t()', which replace the former 'read_therm()', is
    introduce to deal with this timing. Strong pull up is also applied during
    the required time, according to device power status needs and
    'strong_pullup' module parameter.
    
    'temperature_from_RAM()' function is introduced to get the correct
    temperature computation (device dependent) from device RAM data.
    
    An new sysfs entry has been added to ouptut only temperature. The old
    entry w1_slave has been kept for compatibility, without changing its
    output format.
    
    Updating Documentation/ABI/testing/sysfs-driver-w1_therm accordingly.
    Signed-off-by: default avatarAkira Shimahara <akira215corp@gmail.com>
    Link: https://lore.kernel.org/r/20200511203742.411039-1-akira215corp@gmail.comSigned-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    67b392f7
w1_therm.c 34.7 KB