From bc09bc7fa604019a5ef90184390e7c2a3899869d Mon Sep 17 00:00:00 2001 From: Stanislaw Gruszka Date: Sun, 10 Feb 2019 08:09:48 +0100 Subject: [PATCH] mt76x02: usb_mcu: limit sg length When sending fw data we limting urb transfer length by changing buf->len, while keeping segment length at max_payload value. That may confuse underlying drivers responsible for DMA. Signed-off-by: Stanislaw Gruszka --- drivers/net/wireless/mediatek/mt76/mt76x02_usb_mcu.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/net/wireless/mediatek/mt76/mt76x02_usb_mcu.c b/drivers/net/wireless/mediatek/mt76/mt76x02_usb_mcu.c index da299b8a1334..cfa14506eca6 100644 --- a/drivers/net/wireless/mediatek/mt76/mt76x02_usb_mcu.c +++ b/drivers/net/wireless/mediatek/mt76/mt76x02_usb_mcu.c @@ -287,6 +287,7 @@ __mt76x02u_mcu_fw_send_data(struct mt76x02_dev *dev, struct mt76u_buf *buf, MT_FCE_DMA_LEN, len << 16); buf->len = MT_CMD_HDR_LEN + len + sizeof(info); + buf->urb->sg[0].length = buf->len; err = mt76u_submit_buf(&dev->mt76, USB_DIR_OUT, MT_EP_OUT_INBAND_CMD, buf, GFP_KERNEL, -- 2.19.2