• Miaoqing Pan's avatar
    ath10k: fix PCIE device wake up failed · 81124baa
    Miaoqing Pan authored
    [ Upstream commit 011d4111 ]
    
    Observed PCIE device wake up failed after ~120 iterations of
    soft-reboot test. The error message is
    "ath10k_pci 0000:01:00.0: failed to wake up device : -110"
    
    The call trace as below:
    ath10k_pci_probe -> ath10k_pci_force_wake -> ath10k_pci_wake_wait ->
    ath10k_pci_is_awake
    
    Once trigger the device to wake up, we will continuously check the RTC
    state until it returns RTC_STATE_V_ON or timeout.
    
    But for QCA99x0 chips, we use wrong value for RTC_STATE_V_ON.
    Occasionally, we get 0x7 on the fist read, we thought as a failure
    case, but actually is the right value, also verified with the spec.
    So fix the issue by changing RTC_STATE_V_ON from 0x5 to 0x7, passed
    ~2000 iterations.
    
    Tested HW: QCA9984
    Signed-off-by: default avatarMiaoqing Pan <miaoqing@codeaurora.org>
    Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
    Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
    81124baa
hw.c 31.7 KB