mirror of https://gitee.com/openkylin/linux.git
ath10k: sdio: set hi_acs_flags
The SDIO firmware does not allow transmitting packets with the reduced tx completion HI_ACS option. SDIO firmware uses 1544 as alternate credit size, which is not big enough for the maximum sized mac80211 frames. Disable both these HI_ACS flags for SDIO. Co-developed-by: Wen Gong <wgong@codeaurora.org> Signed-off-by: Alagu Sankar <alagusankar@silex-india.com> Signed-off-by: Wen Gong <wgong@codeaurora.org> Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
This commit is contained in:
parent
d961284df2
commit
bf1f0a1a4d
|
@ -637,10 +637,16 @@ static void ath10k_init_sdio(struct ath10k *ar)
|
||||||
ath10k_bmi_write32(ar, hi_mbox_isr_yield_limit, 99);
|
ath10k_bmi_write32(ar, hi_mbox_isr_yield_limit, 99);
|
||||||
ath10k_bmi_read32(ar, hi_acs_flags, ¶m);
|
ath10k_bmi_read32(ar, hi_acs_flags, ¶m);
|
||||||
|
|
||||||
param |= (HI_ACS_FLAGS_SDIO_SWAP_MAILBOX_SET |
|
/* Data transfer is not initiated, when reduced Tx completion
|
||||||
HI_ACS_FLAGS_SDIO_REDUCE_TX_COMPL_SET |
|
* is used for SDIO. disable it until fixed
|
||||||
HI_ACS_FLAGS_ALT_DATA_CREDIT_SIZE);
|
*/
|
||||||
|
param &= ~HI_ACS_FLAGS_SDIO_REDUCE_TX_COMPL_SET;
|
||||||
|
|
||||||
|
/* Alternate credit size of 1544 as used by SDIO firmware is
|
||||||
|
* not big enough for mac80211 / native wifi frames. disable it
|
||||||
|
*/
|
||||||
|
param &= ~HI_ACS_FLAGS_ALT_DATA_CREDIT_SIZE;
|
||||||
|
param |= HI_ACS_FLAGS_SDIO_SWAP_MAILBOX_SET;
|
||||||
ath10k_bmi_write32(ar, hi_acs_flags, param);
|
ath10k_bmi_write32(ar, hi_acs_flags, param);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue