• Kai-Heng Feng's avatar
    thermal: int340x: Fix unexpected shutdown at critical temperature · dd47366a
    Kai-Heng Feng authored
    We are seeing thermal shutdown on Intel based mobile workstations, the
    shutdown happens during the first trip handle in
    thermal_zone_device_register():
    kernel: thermal thermal_zone15: critical temperature reached (101 C), shutting down
    
    However, we shouldn't do a thermal shutdown here, since
    1) We may want to use a dedicated daemon, Intel's thermald in this case,
    to handle thermal shutdown.
    
    2) For ACPI based system, _CRT doesn't mean shutdown unless it's inside
    ThermalZone namespace. ACPI Spec, 11.4.4 _CRT (Critical Temperature):
    "... If this object it present under a device, the device’s driver
    evaluates this object to determine the device’s critical cooling
    temperature trip point. This value may then be used by the device’s
    driver to program an internal device temperature sensor trip point."
    
    So a "critical trip" here merely means we should take a more aggressive
    cooling method.
    
    As int340x device isn't present under ACPI ThermalZone, override the
    default .critical callback to prevent surprising thermal shutdown.
    Signed-off-by: default avatarKai-Heng Feng <kai.heng.feng@canonical.com>
    Signed-off-by: default avatarDaniel Lezcano <daniel.lezcano@linaro.org>
    Link: https://lore.kernel.org/r/20201221172345.36976-1-kai.heng.feng@canonical.com
    dd47366a
int340x_thermal_zone.c 7.82 KB