From d9eefa7a7031543571d434693c7f984dfbdc990d Mon Sep 17 00:00:00 2001 From: John Crispin Date: Thu, 2 Aug 2018 08:44:29 +0200 Subject: mac80211: rebase ontop of v4.18.5 Signed-off-by: John Crispin --- ...fmac-Split-brcmf_sdiod_buffrw-function-up.patch | 143 --------------------- 1 file changed, 143 deletions(-) delete mode 100644 package/kernel/mac80211/patches/312-v4.16-0001-brcmfmac-Split-brcmf_sdiod_buffrw-function-up.patch (limited to 'package/kernel/mac80211/patches/312-v4.16-0001-brcmfmac-Split-brcmf_sdiod_buffrw-function-up.patch') diff --git a/package/kernel/mac80211/patches/312-v4.16-0001-brcmfmac-Split-brcmf_sdiod_buffrw-function-up.patch b/package/kernel/mac80211/patches/312-v4.16-0001-brcmfmac-Split-brcmf_sdiod_buffrw-function-up.patch deleted file mode 100644 index c260b96550..0000000000 --- a/package/kernel/mac80211/patches/312-v4.16-0001-brcmfmac-Split-brcmf_sdiod_buffrw-function-up.patch +++ /dev/null @@ -1,143 +0,0 @@ -From 8f13c87ccc495e30de5f58bbda967f6edd5bec53 Mon Sep 17 00:00:00 2001 -From: Ian Molton -Date: Fri, 8 Dec 2017 13:10:26 +0100 -Subject: [PATCH] brcmfmac: Split brcmf_sdiod_buffrw function up. - -This function needs to be split up into separate read / write variants -for clarity. - -Signed-off-by: Ian Molton -Reviewed-by: Arend van Spriel -Signed-off-by: Arend van Spriel -Signed-off-by: Kalle Valo ---- - .../wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c | 67 +++++++++++++++------- - 1 file changed, 45 insertions(+), 22 deletions(-) - ---- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c -+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c -@@ -414,8 +414,8 @@ void brcmf_sdiod_regwl(struct brcmf_sdio - *ret = retval; - } - --static int brcmf_sdiod_buffrw(struct brcmf_sdio_dev *sdiodev, uint fn, -- bool write, u32 addr, struct sk_buff *pkt) -+static int brcmf_sdiod_buff_read(struct brcmf_sdio_dev *sdiodev, uint fn, -+ u32 addr, struct sk_buff *pkt) - { - unsigned int req_sz; - int err; -@@ -424,18 +424,36 @@ static int brcmf_sdiod_buffrw(struct brc - req_sz = pkt->len + 3; - req_sz &= (uint)~3; - -- if (write) -- err = sdio_memcpy_toio(sdiodev->func[fn], addr, -- ((u8 *)(pkt->data)), req_sz); -- else if (fn == 1) -- err = sdio_memcpy_fromio(sdiodev->func[fn], ((u8 *)(pkt->data)), -- addr, req_sz); -+ if (fn == 1) -+ err = sdio_memcpy_fromio(sdiodev->func[fn], -+ ((u8 *)(pkt->data)), addr, req_sz); - else - /* function 2 read is FIFO operation */ -- err = sdio_readsb(sdiodev->func[fn], ((u8 *)(pkt->data)), addr, -- req_sz); -+ err = sdio_readsb(sdiodev->func[fn], -+ ((u8 *)(pkt->data)), addr, req_sz); -+ -+ if (err == -ENOMEDIUM) -+ brcmf_sdiod_change_state(sdiodev, BRCMF_SDIOD_NOMEDIUM); -+ -+ return err; -+} -+ -+static int brcmf_sdiod_buff_write(struct brcmf_sdio_dev *sdiodev, uint fn, -+ u32 addr, struct sk_buff *pkt) -+{ -+ unsigned int req_sz; -+ int err; -+ -+ /* Single skb use the standard mmc interface */ -+ req_sz = pkt->len + 3; -+ req_sz &= (uint)~3; -+ -+ err = sdio_memcpy_toio(sdiodev->func[fn], addr, -+ ((u8 *)(pkt->data)), req_sz); -+ - if (err == -ENOMEDIUM) - brcmf_sdiod_change_state(sdiodev, BRCMF_SDIOD_NOMEDIUM); -+ - return err; - } - -@@ -643,7 +661,7 @@ int brcmf_sdiod_recv_pkt(struct brcmf_sd - if (err) - goto done; - -- err = brcmf_sdiod_buffrw(sdiodev, SDIO_FUNC_2, false, addr, pkt); -+ err = brcmf_sdiod_buff_read(sdiodev, SDIO_FUNC_2, addr, pkt); - - done: - return err; -@@ -665,14 +683,14 @@ int brcmf_sdiod_recv_chain(struct brcmf_ - goto done; - - if (pktq->qlen == 1) -- err = brcmf_sdiod_buffrw(sdiodev, SDIO_FUNC_2, false, addr, -- pktq->next); -+ err = brcmf_sdiod_buff_read(sdiodev, SDIO_FUNC_2, addr, -+ pktq->next); - else if (!sdiodev->sg_support) { - glom_skb = brcmu_pkt_buf_get_skb(totlen); - if (!glom_skb) - return -ENOMEM; -- err = brcmf_sdiod_buffrw(sdiodev, SDIO_FUNC_2, false, addr, -- glom_skb); -+ err = brcmf_sdiod_buff_read(sdiodev, SDIO_FUNC_2, addr, -+ glom_skb); - if (err) - goto done; - -@@ -707,8 +725,7 @@ int brcmf_sdiod_send_buf(struct brcmf_sd - err = brcmf_sdiod_addrprep(sdiodev, &addr); - - if (!err) -- err = brcmf_sdiod_buffrw(sdiodev, SDIO_FUNC_2, true, addr, -- mypkt); -+ err = brcmf_sdiod_buff_write(sdiodev, SDIO_FUNC_2, addr, mypkt); - - brcmu_pkt_buf_free_skb(mypkt); - return err; -@@ -730,8 +747,8 @@ int brcmf_sdiod_send_pkt(struct brcmf_sd - - if (pktq->qlen == 1 || !sdiodev->sg_support) - skb_queue_walk(pktq, skb) { -- err = brcmf_sdiod_buffrw(sdiodev, SDIO_FUNC_2, true, -- addr, skb); -+ err = brcmf_sdiod_buff_write(sdiodev, SDIO_FUNC_2, -+ addr, skb); - if (err) - break; - } -@@ -783,10 +800,16 @@ brcmf_sdiod_ramrw(struct brcmf_sdio_dev - sdaddr |= SBSDIO_SB_ACCESS_2_4B_FLAG; - - skb_put(pkt, dsize); -- if (write) -+ -+ if (write) { - memcpy(pkt->data, data, dsize); -- err = brcmf_sdiod_buffrw(sdiodev, SDIO_FUNC_1, write, sdaddr, -- pkt); -+ err = brcmf_sdiod_buff_write(sdiodev, SDIO_FUNC_1, -+ sdaddr, pkt); -+ } else { -+ err = brcmf_sdiod_buff_read(sdiodev, SDIO_FUNC_1, -+ sdaddr, pkt); -+ } -+ - if (err) { - brcmf_err("membytes transfer failed\n"); - break; -- cgit v1.2.3