ath11k: ce: get msi_addr and msi_data before srng setup
Move function to get msi_addr and msi_data before srng setup, otherwise srng is setup with no MSI configuration. Tested-on: QCA6390 hw2.0 PCI WLAN.HST.1.0.1-01740-QCAHSTSWPLZ_V2_TO_X86-1 Tested-on: IPQ8074 hw2.0 AHB WLAN.HK.2.1.0.1-01238-QCAHKSWPL_SILICONZ-2 Signed-off-by: Carl Huang <cjhuang@codeaurora.org> Signed-off-by: Kalle Valo <kvalo@codeaurora.org> Link: https://lore.kernel.org/r/1597576599-8857-8-git-send-email-kvalo@codeaurora.org
This commit is contained in:
parent
7cea7c5b0e
commit
1a05ed37c5
|
@ -467,6 +467,9 @@ static int ath11k_ce_init_ring(struct ath11k_base *ab,
|
||||||
params.ring_base_vaddr = ce_ring->base_addr_owner_space;
|
params.ring_base_vaddr = ce_ring->base_addr_owner_space;
|
||||||
params.num_entries = ce_ring->nentries;
|
params.num_entries = ce_ring->nentries;
|
||||||
|
|
||||||
|
if (!(CE_ATTR_DIS_INTR & ab->hw_params.host_ce_config[ce_id].flags))
|
||||||
|
ath11k_ce_srng_msi_ring_params_setup(ab, ce_id, ¶ms);
|
||||||
|
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case HAL_CE_SRC:
|
case HAL_CE_SRC:
|
||||||
if (!(CE_ATTR_DIS_INTR & ab->hw_params.host_ce_config[ce_id].flags))
|
if (!(CE_ATTR_DIS_INTR & ab->hw_params.host_ce_config[ce_id].flags))
|
||||||
|
@ -500,9 +503,6 @@ static int ath11k_ce_init_ring(struct ath11k_base *ab,
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!(CE_ATTR_DIS_INTR & ab->hw_params.host_ce_config[ce_id].flags))
|
|
||||||
ath11k_ce_srng_msi_ring_params_setup(ab, ce_id, ¶ms);
|
|
||||||
|
|
||||||
ce_ring->hal_ring_id = ret;
|
ce_ring->hal_ring_id = ret;
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
|
Loading…
Reference in New Issue