• Seevalamuthu Mariappan's avatar
    ath11k: add hw_param for wakeup_mhi · 081e2d64
    Seevalamuthu Mariappan authored
    Wakeup mhi is needed before pci_read/write only for QCA6390 and WCN6855. Since
    wakeup & release mhi is enabled for all hardwares, below mhi assert is seen in
    QCN9074 when doing 'rmmod ath11k_pci':
    
    	Kernel panic - not syncing: dev_wake != 0
    	CPU: 2 PID: 13535 Comm: procd Not tainted 4.4.60 #1
    	Hardware name: Generic DT based system
    	[<80316dac>] (unwind_backtrace) from [<80313700>] (show_stack+0x10/0x14)
    	[<80313700>] (show_stack) from [<805135dc>] (dump_stack+0x7c/0x9c)
    	[<805135dc>] (dump_stack) from [<8032136c>] (panic+0x84/0x1f8)
    	[<8032136c>] (panic) from [<80549b24>] (mhi_pm_disable_transition+0x3b8/0x5b8)
    	[<80549b24>] (mhi_pm_disable_transition) from [<80549ddc>] (mhi_power_down+0xb8/0x100)
    	[<80549ddc>] (mhi_power_down) from [<7f5242b0>] (ath11k_mhi_op_status_cb+0x284/0x3ac [ath11k_pci])
    	[E][__mhi_device_get_sync] Did not enter M0 state, cur_state:RESET pm_state:SHUTDOWN Process
    	[E][__mhi_device_get_sync] Did not enter M0 state, cur_state:RESET pm_state:SHUTDOWN Process
    	[E][__mhi_device_get_sync] Did not enter M0 state, cur_state:RESET pm_state:SHUTDOWN Process
    	[<7f5242b0>] (ath11k_mhi_op_status_cb [ath11k_pci]) from [<7f524878>] (ath11k_mhi_stop+0x10/0x20 [ath11k_pci])
    	[<7f524878>] (ath11k_mhi_stop [ath11k_pci]) from [<7f525b94>] (ath11k_pci_power_down+0x54/0x90 [ath11k_pci])
    	[<7f525b94>] (ath11k_pci_power_down [ath11k_pci]) from [<8056b2a8>] (pci_device_shutdown+0x30/0x44)
    	[<8056b2a8>] (pci_device_shutdown) from [<805cfa0c>] (device_shutdown+0x124/0x174)
    	[<805cfa0c>] (device_shutdown) from [<8033aaa4>] (kernel_restart+0xc/0x50)
    	[<8033aaa4>] (kernel_restart) from [<8033ada8>] (SyS_reboot+0x178/0x1ec)
    	[<8033ada8>] (SyS_reboot) from [<80301b80>] (ret_fast_syscall+0x0/0x34)
    
    Hence, disable wakeup/release mhi using hw_param for other hardwares.
    
    Tested-on: QCN9074 hw1.0 PCI WLAN.HK.2.5.0.1-01060-QCAHKSWPL_SILICONZ-1
    
    Fixes: a05bd851 ("ath11k: read and write registers below unwindowed address")
    Signed-off-by: default avatarSeevalamuthu Mariappan <quic_seevalam@quicinc.com>
    Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
    Link: https://lore.kernel.org/r/1636702019-26142-1-git-send-email-quic_seevalam@quicinc.com
    081e2d64
pci.c 36 KB