Explorar o código

qcacmn: Skip skb data inval for the PPE-DS buffers in rx replenish

In the PPE-DS UL path, the PPE-DS flag is getting set in the buffer
in the EDMA Tx complete path.
This flag is getting checked in the WLAN Rx replenish path and the
data invalidate is being skipped, if the flag is set.

CRs-Fixed: 3344458
Change-Id: I4e10deec5b373ccc93b59432576eb70d49a9304d
Manish Verma %!s(int64=2) %!d(string=hai) anos
pai
achega
b3ec0ca8cb
Modificáronse 1 ficheiros con 5 adicións e 0 borrados
  1. 5 0
      dp/wifi3.0/dp_rx.h

+ 5 - 0
dp/wifi3.0/dp_rx.h

@@ -2433,6 +2433,11 @@ qdf_dma_addr_t dp_rx_nbuf_sync_no_dsb(struct dp_soc *dp_soc,
 				      qdf_nbuf_t nbuf,
 				      uint32_t buf_size)
 {
+	if (nbuf->recycled_for_ds) {
+		nbuf->recycled_for_ds = 0;
+		return (qdf_dma_addr_t)qdf_mem_virt_to_phys(nbuf->data);
+	}
+
 	if (unlikely(!nbuf->fast_recycled)) {
 		qdf_nbuf_dma_inv_range_no_dsb((void *)nbuf->data,
 					      (void *)(nbuf->data + buf_size));