Add direct buffer ring (dbring) with helper API, which is used by the
spectral scan. Initialise the direct buffer ring based on the dma ring
capability, which get announced in the wmi service ready extended
event.
This ring is slightly changed from data path rings. Compare to data
path
ring this ring shares the hp and tp address to firmware though WMI
commands.
Also the replenish buffer size is derived from firmware announcement.
driver receive indication through WMI event
WMI_PDEV_DMA_RING_BUF_RELEASE_EVENTID.
Tested-on: IPQ8074 WLAN.HK.2.1.0.1-01228-QCAHKSWPL_SILICONZ-1
Signed-off-by: Karthikeyan Periyasamy <periyasa@xxxxxxxxxxxxxx>
Fails to build:
Error in reading or end of file.
drivers/net/wireless/ath/ath11k/dbring.c: In function
'ath11k_dbring_buffer_release_event':
drivers/net/wireless/ath/ath11k/dbring.c:271:8: error: assignment to
'struct ath11k_dbring *' from incompatible pointer type 'struct
ath11k_db_ring *' [-Werror=incompatible-pointer-types]
271 | ring = ath11k_spectral_get_dbring(ar);
| ^
cc1: some warnings being treated as errors
make[5]: *** [drivers/net/wireless/ath/ath11k/dbring.o] Error 1
make[5]: *** Waiting for unfinished jobs....
make[4]: *** [drivers/net/wireless/ath/ath11k] Error 2
make[4]: *** Waiting for unfinished jobs....
make[3]: *** [drivers/net/wireless/ath] Error 2
make[2]: *** [drivers/net/wireless] Error 2
make[1]: *** [drivers/net] Error 2
make: *** [drivers] Error 2
2 patches set to Changes Requested.
11594295 [1/2] ath11k: Add direct buffer ring support
11594297 [2/2] ath11k: add support for spectral scan
My bad, fixed this build error in the next version patch
Thanks,
Karthikeyan