kernel: update 3.14 to 3.14.18
[openwrt.git] / target / linux / sunxi / patches-3.14 / 231-1-brcmfmac-fix-sdio-sending.patch
1 From df25859babd9c164a61e86d953d5c88400009a14 Mon Sep 17 00:00:00 2001
2 From: Hante Meuleman <meuleman@broadcom.com>
3 Date: Wed, 29 Jan 2014 15:32:16 +0100
4 Subject: [PATCH] brcmfmac: fix sdio sending of large buffers.
5
6 the function brcmf_sdiod_ramrw is supposed to be able to send
7 large blobs of data. However inside the loop the skb->len field
8 did not correctly get reset each round. As a result only small
9 blobs could be sent. This patch fixes this problem.
10
11 Reviewed-by: Arend Van Spriel <arend@broadcom.com>
12 Reviewed-by: Franky (Zhenhui) Lin <frankyl@broadcom.com>
13 Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
14 Reviewed-by: Daniel (Deognyoun) Kim <dekim@broadcom.com>
15 Signed-off-by: Hante Meuleman <meuleman@broadcom.com>
16 Signed-off-by: Arend van Spriel <arend@broadcom.com>
17 Signed-off-by: John W. Linville <linville@tuxdriver.com>
18 ---
19  drivers/net/wireless/brcm80211/brcmfmac/bcmsdh.c | 2 +-
20  1 file changed, 1 insertion(+), 1 deletion(-)
21
22 --- a/drivers/net/wireless/brcm80211/brcmfmac/bcmsdh.c
23 +++ b/drivers/net/wireless/brcm80211/brcmfmac/bcmsdh.c
24 @@ -827,7 +827,7 @@ brcmf_sdiod_ramrw(struct brcmf_sdio_dev
25                 }
26                 if (!write)
27                         memcpy(data, pkt->data, dsize);
28 -               skb_trim(pkt, dsize);
29 +               skb_trim(pkt, 0);
30  
31                 /* Adjust for next transfer (if any) */
32                 size -= dsize;