mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-28 18:51:56 -04:00
qcacmn: REO descriptor allocation change
Use normal allocation instead of alloc_consistent for REO descriptors to allow freeing from interrupt context. Also fixed an issue in ba_window_size setting in REO queues. Change-Id: I91b06e04c0343eb7fe8580d8655c6bc5e33cfe06
This commit is contained in:
parent
34ff0b5a3c
commit
7957fa9705
6 changed files with 67 additions and 34 deletions
|
|
@ -481,8 +481,11 @@ inline int hal_reo_cmd_update_rx_queue(void *reo_ring, struct hal_soc *soc,
|
|||
HAL_DESC_SET_FIELD(reo_desc, REO_UPDATE_RX_REO_QUEUE_3,
|
||||
IGNORE_AMPDU_FLAG, p->ignore_ampdu);
|
||||
|
||||
if (p->ba_window_size < 1)
|
||||
p->ba_window_size = 1;
|
||||
|
||||
HAL_DESC_SET_FIELD(reo_desc, REO_UPDATE_RX_REO_QUEUE_4,
|
||||
BA_WINDOW_SIZE, p->ba_window_size);
|
||||
BA_WINDOW_SIZE, p->ba_window_size - 1);
|
||||
|
||||
HAL_DESC_SET_FIELD(reo_desc, REO_UPDATE_RX_REO_QUEUE_4,
|
||||
PN_SIZE, p->pn_size);
|
||||
|
|
|
|||
|
|
@ -136,6 +136,9 @@ void hal_reo_qdesc_setup(void *hal_soc, int tid, uint32_t ba_window_size,
|
|||
reg_val = TID_TO_WME_AC(tid);
|
||||
HAL_DESC_SET_FIELD(reo_queue_desc, RX_REO_QUEUE_2, AC, reg_val);
|
||||
|
||||
if (ba_window_size < 1)
|
||||
ba_window_size = 1;
|
||||
|
||||
/* Set RTY bit for non-BA case. Duplicate detection is currently not
|
||||
* done by HW in non-BA case if RTY bit is not set.
|
||||
* TODO: This is a temporary War and should be removed once HW fix is
|
||||
|
|
|
|||
Loading…
Reference in a new issue