• Baochen Qiang's avatar
    ath11k: enable PLATFORM_CAP_PCIE_GLOBAL_RESET QMI host capability · 1e4ac717
    Baochen Qiang authored
    In Qualcomm ARM platforms there is WL_EN pin and other power regulators
    which can be controlled at platform side to completely reset the chip.
    For most of x86 and other platforms, the chip is connected via PCIe M.2
    interface, and there is no way to control WL_EN pin. Instead the host
    driver needs to reset the chip via PCIE_SOC_GLOBAL_RESET hardware
    register, just like ath11k does currently.
    
    But when using PCIE_SOC_GLOBAL_RESET there are some hardware registers
    which are not cleared/restored. To handle those cases we can enable
    PLATFORM_CAP_PCIE_GLOBAL_RESET QMI host capability to tell the firmware
    to do some platform specific operations after firmware download.
    
    This does not fix any known issues, but is recommended by the firmware
    team, so enable the capability on QCA6390 and WCN6855 PCI devices. It is
    currently unclear if this should be enabled also on QCN9074, so leave it
    disabled for now. On AHB devices this is not needed as they don't use
    PCIE_SOC_GLOBAL_RESET.
    
    Tested-on: WCN6855 hw2.0 PCI WLAN.HSP.1.1-01720.1-QCAHSPSWPL_V1_V2_SILICONZ_LITE-1
    Signed-off-by: default avatarBaochen Qiang <bqiang@codeaurora.org>
    Signed-off-by: default avatarKalle Valo <quic_kvalo@quicinc.com>
    Link: https://lore.kernel.org/r/20211011055602.77342-1-bqiang@codeaurora.org
    1e4ac717
core.c 38.3 KB