aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/mac80211/patches/323-0007-brcmfmac-move-brcmf_txcomplete-to-bcdc-layer.patch
diff options
context:
space:
mode:
authorHauke Mehrtens <hauke@hauke-m.de>2017-08-22 23:59:48 +0200
committerHauke Mehrtens <hauke@hauke-m.de>2017-10-01 12:49:11 +0200
commita8f63a0717f553e0a1b37ee9212fc4cb2a801426 (patch)
tree9016b975706f35b98075167f2cf6b15add308c9b /package/kernel/mac80211/patches/323-0007-brcmfmac-move-brcmf_txcomplete-to-bcdc-layer.patch
parent1114f5dc10755e3c92b5711b420818cf9e366874 (diff)
downloadupstream-a8f63a0717f553e0a1b37ee9212fc4cb2a801426.tar.gz
upstream-a8f63a0717f553e0a1b37ee9212fc4cb2a801426.tar.bz2
upstream-a8f63a0717f553e0a1b37ee9212fc4cb2a801426.zip
mac80211: update to backports-4.14-rc2
This updates mac80211 to backprots-4.14-rc2. This was compile and runtime tested with ath9k, ath10k and b43 with multiple stations and ieee80211w and in different scenarios by many other people. To create the backports-4.14-rc2-1.tar.xz use this repository: https://git.kernel.org/pub/scm/linux/kernel/git/backports/backports.git from tag v4.14-rc2-1 Then run this: ./gentree.py --git-revision v4.14-rc2 --clean <path to linux repo> ../backports-4.14-rc2-1 This also adapts the ath10k-ct and mt76 driver to the changed cfg80211 APIs and syncs the nl80211.h file in iw with the new version from backports-4.14-rc2. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Diffstat (limited to 'package/kernel/mac80211/patches/323-0007-brcmfmac-move-brcmf_txcomplete-to-bcdc-layer.patch')
-rw-r--r--package/kernel/mac80211/patches/323-0007-brcmfmac-move-brcmf_txcomplete-to-bcdc-layer.patch122
1 files changed, 0 insertions, 122 deletions
diff --git a/package/kernel/mac80211/patches/323-0007-brcmfmac-move-brcmf_txcomplete-to-bcdc-layer.patch b/package/kernel/mac80211/patches/323-0007-brcmfmac-move-brcmf_txcomplete-to-bcdc-layer.patch
deleted file mode 100644
index 9614e53e51..0000000000
--- a/package/kernel/mac80211/patches/323-0007-brcmfmac-move-brcmf_txcomplete-to-bcdc-layer.patch
+++ /dev/null
@@ -1,122 +0,0 @@
-From 7b584396b7a760bc77bbde4625f83ef173159d3e Mon Sep 17 00:00:00 2001
-From: Franky Lin <franky.lin@broadcom.com>
-Date: Fri, 10 Mar 2017 21:17:03 +0000
-Subject: [PATCH] brcmfmac: move brcmf_txcomplete to bcdc layer
-
-brcmf_txcomplete is invoked by sdio and usb bus module which are using
-bcdc protocol. So move it from core module into bcdc layer.
-
-Signed-off-by: Franky Lin <franky.lin@broadcom.com>
-Signed-off-by: Arend van Spriel <arend.vanspriel@broadcom.com>
-Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
----
- .../net/wireless/broadcom/brcm80211/brcmfmac/bcdc.c | 20 ++++++++++++++++++++
- .../net/wireless/broadcom/brcm80211/brcmfmac/bcdc.h | 2 ++
- .../net/wireless/broadcom/brcm80211/brcmfmac/bus.h | 3 ---
- .../net/wireless/broadcom/brcm80211/brcmfmac/core.c | 18 ------------------
- .../net/wireless/broadcom/brcm80211/brcmfmac/sdio.c | 3 ++-
- .../net/wireless/broadcom/brcm80211/brcmfmac/usb.c | 2 +-
- 6 files changed, 25 insertions(+), 23 deletions(-)
-
---- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcdc.c
-+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcdc.c
-@@ -355,6 +355,26 @@ void brcmf_proto_bcdc_txflowblock(struct
- brcmf_fws_bus_blocked(drvr, state);
- }
-
-+void
-+brcmf_proto_bcdc_txcomplete(struct device *dev, struct sk_buff *txp,
-+ bool success)
-+{
-+ struct brcmf_bus *bus_if = dev_get_drvdata(dev);
-+ struct brcmf_pub *drvr = bus_if->drvr;
-+ struct brcmf_if *ifp;
-+
-+ /* await txstatus signal for firmware if active */
-+ if (brcmf_fws_fc_active(drvr->fws)) {
-+ if (!success)
-+ brcmf_fws_bustxfail(drvr->fws, txp);
-+ } else {
-+ if (brcmf_proto_bcdc_hdrpull(drvr, false, txp, &ifp))
-+ brcmu_pkt_buf_free_skb(txp);
-+ else
-+ brcmf_txfinalize(ifp, txp, success);
-+ }
-+}
-+
- static void
- brcmf_proto_bcdc_configure_addr_mode(struct brcmf_pub *drvr, int ifidx,
- enum proto_addr_mode addr_mode)
---- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcdc.h
-+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcdc.h
-@@ -20,6 +20,8 @@
- int brcmf_proto_bcdc_attach(struct brcmf_pub *drvr);
- void brcmf_proto_bcdc_detach(struct brcmf_pub *drvr);
- void brcmf_proto_bcdc_txflowblock(struct device *dev, bool state);
-+void brcmf_proto_bcdc_txcomplete(struct device *dev, struct sk_buff *txp,
-+ bool success);
- #else
- static inline int brcmf_proto_bcdc_attach(struct brcmf_pub *drvr) { return 0; }
- static inline void brcmf_proto_bcdc_detach(struct brcmf_pub *drvr) {}
---- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bus.h
-+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bus.h
-@@ -230,9 +230,6 @@ void brcmf_detach(struct device *dev);
- /* Indication from bus module that dongle should be reset */
- void brcmf_dev_reset(struct device *dev);
-
--/* Notify the bus has transferred the tx packet to firmware */
--void brcmf_txcomplete(struct device *dev, struct sk_buff *txp, bool success);
--
- /* Configure the "global" bus state used by upper layers */
- void brcmf_bus_change_state(struct brcmf_bus *bus, enum brcmf_bus_state state);
-
---- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/core.c
-+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/core.c
-@@ -383,24 +383,6 @@ void brcmf_txfinalize(struct brcmf_if *i
- brcmu_pkt_buf_free_skb(txp);
- }
-
--void brcmf_txcomplete(struct device *dev, struct sk_buff *txp, bool success)
--{
-- struct brcmf_bus *bus_if = dev_get_drvdata(dev);
-- struct brcmf_pub *drvr = bus_if->drvr;
-- struct brcmf_if *ifp;
--
-- /* await txstatus signal for firmware if active */
-- if (brcmf_fws_fc_active(drvr->fws)) {
-- if (!success)
-- brcmf_fws_bustxfail(drvr->fws, txp);
-- } else {
-- if (brcmf_proto_hdrpull(drvr, false, txp, &ifp))
-- brcmu_pkt_buf_free_skb(txp);
-- else
-- brcmf_txfinalize(ifp, txp, success);
-- }
--}
--
- static void brcmf_ethtool_get_drvinfo(struct net_device *ndev,
- struct ethtool_drvinfo *info)
- {
---- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
-+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
-@@ -2266,7 +2266,8 @@ done:
- bus->tx_seq = (bus->tx_seq + pktq->qlen) % SDPCM_SEQ_WRAP;
- skb_queue_walk_safe(pktq, pkt_next, tmp) {
- __skb_unlink(pkt_next, pktq);
-- brcmf_txcomplete(bus->sdiodev->dev, pkt_next, ret == 0);
-+ brcmf_proto_bcdc_txcomplete(bus->sdiodev->dev, pkt_next,
-+ ret == 0);
- }
- return ret;
- }
---- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/usb.c
-+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/usb.c
-@@ -483,7 +483,7 @@ static void brcmf_usb_tx_complete(struct
- req->skb);
- brcmf_usb_del_fromq(devinfo, req);
-
-- brcmf_txcomplete(devinfo->dev, req->skb, urb->status == 0);
-+ brcmf_proto_bcdc_txcomplete(devinfo->dev, req->skb, urb->status == 0);
- req->skb = NULL;
- brcmf_usb_enq(devinfo, &devinfo->tx_freeq, req, &devinfo->tx_freecount);
- spin_lock_irqsave(&devinfo->tx_flowblock_lock, flags);