qcacmn: Set per_tid_basize_max_tid so that BA size is configured per TID

Set per_tid_basize_max_tid so that BA size is configured per TID.
Accordingly fix dp_check_ba_buffersize to ba_window_size to incoming
buffer_size. Assert for any BA window size above 1024.

Change-Id: I40cb2aac012c50e253c3ef22d44cf5db3abfb7bb
CRs-Fixed: 3182601
This commit is contained in:
Prakash Manjunathappa
2022-04-25 19:47:31 -07:00
committed by Madan Koyyalamudi
parent f00cc9f71a
commit 017ad75e08
2 changed files with 22 additions and 1 deletions

View File

@@ -4294,11 +4294,16 @@ static void dp_check_ba_buffersize(struct dp_peer *peer,
{
struct dp_rx_tid *rx_tid = NULL;
dp_info(QDF_MAC_ADDR_FMT" per_tid_basize_max_tid %d tid %d buffersize %d hw_buffer_size %d",
peer->mac_addr.raw,
peer->vdev->pdev->soc->per_tid_basize_max_tid, tid, buffersize,
peer->hw_buffer_size);
rx_tid = &peer->rx_tid[tid];
if (peer->vdev->pdev->soc->per_tid_basize_max_tid &&
tid < peer->vdev->pdev->soc->per_tid_basize_max_tid) {
rx_tid->ba_win_size = buffersize;
return;
goto out;
} else {
if (peer->active_ba_session_cnt == 0) {
rx_tid->ba_win_size = buffersize;
@@ -4316,9 +4321,24 @@ static void dp_check_ba_buffersize(struct dp_peer *peer,
peer->hw_buffer_size = 64;
peer->kill_256_sessions = 1;
}
} else if (buffersize <= 1024) {
/**
* Above checks are only for HK V2
* Set incoming buffer size for others
*/
rx_tid->ba_win_size = buffersize;
} else {
dp_err("Invalid buffer size %d", buffersize);
qdf_assert_always(0);
}
}
}
out:
dp_info("rx_tid->ba_win_size %d peer->hw_buffer_size %d peer->kill_256_sessions %d",
rx_tid->ba_win_size,
peer->hw_buffer_size,
peer->kill_256_sessions);
}
QDF_STATUS dp_rx_tid_update_ba_win_size(struct cdp_soc_t *cdp_soc,