• Ong, Boon Leong's avatar
    thermal: intel Quark SoC X1000 DTS thermal driver · 8c187693
    Ong, Boon Leong authored
    In Intel Quark SoC X1000, there is one on-die digital temperature sensor(DTS).
    The DTS offers both hot & critical trip points.
    
    However, in current distribution of UEFI BIOS for Quark platform, only
    critical trip point is configured to be 105 degree Celsius (based on Quark
    SW ver1.0.1 and hot trip point is not used due to lack of IRQ.
    
    There is no active cooling device for Quark SoC, so Quark SoC thermal
    management logic expects Linux distro to orderly power-off when temperature
    of the DTS exceeds the configured critical trip point.
    
    Kernel param "polling_delay" in milliseconds is used to control the frequency
    the DTS temperature is read by thermal framework. It defaults to 2-second.
    To change it, use kernel boot param "intel_quark_dts_thermal.polling_delay=X".
    
    User interacts with Quark SoC DTS thermal driver through sysfs via:
    /sys/class/thermal/thermal_zone0/
    
    For example:
     - to read DTS temperature
       $ cat temp
     - to read critical trip point
       $ cat trip_point_0_temp
     - to read trip point type
       $ cat trip_point_0_type
     - to emulate temperature raise to test orderly shutdown by Linux distro
       $ echo 105 > emul_temp
    Tested-by: default avatarBryan O'Donoghue <pure.logic@nexus-software.ie>
    Signed-off-by: default avatarOng Boon Leong <boon.leong.ong@intel.com>
    Reviewed-by: default avatarBryan O'Donoghue <pure.logic@nexus-software.ie>
    Reviewed-by: default avatarKweh, Hock Leong <hock.leong.kweh@intel.com>
    Signed-off-by: default avatarZhang Rui <rui.zhang@intel.com>
    8c187693
intel_quark_dts_thermal.c 12.2 KB