• Rajkumar Manoharan's avatar
    ath10k: add thermal cooling device support · fe6f36d6
    Rajkumar Manoharan authored
    Thermal cooling device support is added to control the temperature
    by throttling the data transmission for the given duration. Throttling
    is done using hw MAC quiet time setting. Period, duration and offset
    from TBTT can be set up to quiet the MAC transmits for the required duty
    cycle (% of quiet duration). The thermal device allows user to configure
    duty cycle.
    
    The quiet params are derived as follows.
    	period = max(25TU, beacon interval / number of bss)
    	duration = period * duty cycle / 100
    
    Quiet mode can be disabled by setting the duty cycle to 0. The cooling
    device can be found under /sys/class/thermal/cooling_deviceX/.
    Corresponding soft link to this device can be found under phy folder.
    
    /sys/class/ieee80211/phy*/device/cooling_device.
    
    To set duty cycle as 40%,
    
    echo 40 >/sys/class/ieee80211/phy*/device/cooling_device/cur_state
    Signed-off-by: default avatarRajkumar Manoharan <rmanohar@qti.qualcomm.com>
    Signed-off-by: default avatarKalle Valo <kvalo@qca.qualcomm.com>
    fe6f36d6
thermal.h 1.38 KB