• Wey-Yi Guy's avatar
    iwlwifi: Thermal Throttling Management - Part 1 · 39b73fb1
    Wey-Yi Guy authored
    Part 1 of Thermal Throttling Management -
    Thermal Throttling feature is used to put NIC into low power state when
    driver detect the Radio temperature reach pre-defined threshold
    Two Thermal Throttling Management Methods; this patch introduce the
    Legacy Thermal Management:
       IWL_TI_0: normal temperature, system power state
       IWL_TI_1: high temperature detect, low power state
       IWL_TI_2: higher temperature detected, lower power state
       IWL_TI_CT_KILL: critical temperature detected, lowest power state
    Once get into CT_KILL state, uCode go into sleep, driver will stop all
    the active queues, then move to IWL_TI_CT_KILL state; also set up 5
    seconds timer to toggle CSR flag, uCode wake up upon CSR flag change,
    then measure the temperature.
    If temperature is above CT_KILL exit threshold, uCode go backto sleep;
    if temperature is below CT_KILL exit threshold, uCode send Card State
    Notification response with appropriate CT_KILL status flag, and uCode
    remain awake, Driver receive Card State Notification Response and update
    the card temperature to the CT_KILL exit threshold.
    Signed-off-by: default avatarWey-Yi Guy <wey-yi.w.guy@intel.com>
    Signed-off-by: default avatarReinette Chatre <reinette.chatre@intel.com>
    Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
iwl-core.c 84.5 KB