From: Lorenzo Bianconi <[email protected]>

In order to use zero-copying, disable usb rx bulk aggregation

Signed-off-by: Lorenzo Bianconi <[email protected]>
Signed-off-by: Stanislaw Gruszka <[email protected]>
---
 drivers/net/wireless/mediatek/mt76/mt76x0/init.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/net/wireless/mediatek/mt76/mt76x0/init.c 
b/drivers/net/wireless/mediatek/mt76/mt76x0/init.c
index ddbb52b4e5ac..b28ea45a7282 100644
--- a/drivers/net/wireless/mediatek/mt76/mt76x0/init.c
+++ b/drivers/net/wireless/mediatek/mt76/mt76x0/init.c
@@ -110,17 +110,17 @@ static void mt76x0_reset_csr_bbp(struct mt76x0_dev *dev)
 
 static void mt76x0_init_usb_dma(struct mt76x0_dev *dev)
 {
-       struct mt76_usb *usb = &dev->mt76.usb;
        u32 val;
 
        val = mt76_rr(dev, MT_USB_DMA_CFG);
 
-       val |= FIELD_PREP(MT_USB_DMA_CFG_RX_BULK_AGG_TOUT, MT_USB_AGGR_TIMEOUT) 
|
-              FIELD_PREP(MT_USB_DMA_CFG_RX_BULK_AGG_LMT, 
MT_USB_AGGR_SIZE_LIMIT) |
-              MT_USB_DMA_CFG_RX_BULK_EN |
+       val |= MT_USB_DMA_CFG_RX_BULK_EN |
               MT_USB_DMA_CFG_TX_BULK_EN;
-       if (usb->in_max_packet == 512)
-               val |= MT_USB_DMA_CFG_RX_BULK_AGG_EN;
+
+       /* disable AGGR_BULK_RX in order to receive one
+        * frame in each rx urb and avoid copies
+        */
+       val &= ~MT_USB_DMA_CFG_RX_BULK_AGG_EN;
        mt76_wr(dev, MT_USB_DMA_CFG, val);
 
        val = mt76_rr(dev, MT_COM_REG0);
-- 
2.7.5

Reply via email to