Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 818cf60e authored by Franky Lin's avatar Franky Lin Committed by Greg Kroah-Hartman
Browse files

staging: brcm80211: remove fullmac module_param brcmf_deferred_tx



Remove brcmf_deferred_tx as it should be always 1

Reported-by: default avatarJohannes Berg <johannes@sipsolutions.net>
Reviewed-by: default avatarRoland Vossen <rvossen@broadcom.com>
Reviewed-by: default avatarArend van Spriel <arend@broadcom.com>
Signed-off-by: default avatarFranky Lin <frankyl@broadcom.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 6760e1ba
Loading
Loading
Loading
Loading
+24 −59
Original line number Diff line number Diff line
@@ -721,10 +721,6 @@ static int qcount[NUMPRIO];
static int tx_packets[NUMPRIO];
#endif				/* BCMDBG */

/* Deferred transmit */
uint brcmf_deferred_tx = 1;
module_param(brcmf_deferred_tx, uint, 0);

/* Watchdog thread priority, -1 to use kernel timer */
int brcmf_watchdog_prio = 97;
module_param(brcmf_watchdog_prio, int, 0);
@@ -2845,18 +2841,12 @@ int brcmf_sdbrcm_bus_txdata(struct brcmf_bus *bus, struct sk_buff *pkt)

	/* Check for existing queue, current flow-control,
			 pending event, or pending clock */
	if (brcmf_deferred_tx || bus->fcstate || pktq_len(&bus->txq)
	    || bus->dpc_sched || (!data_ok(bus))
	    || (bus->flowcontrol & NBITVAL(prec))
	    || (bus->clkstate != CLK_AVAIL)) {
		brcmf_dbg(TRACE, "deferring pktq len %d\n",
			  pktq_len(&bus->txq));
	brcmf_dbg(TRACE, "deferring pktq len %d\n", pktq_len(&bus->txq));
	bus->fcqueued++;

	/* Priority based enq */
	spin_lock_bh(&bus->txqlock);
		if (brcmf_c_prec_enq(bus->drvr, &bus->txq, pkt, prec) ==
		    false) {
	if (brcmf_c_prec_enq(bus->drvr, &bus->txq, pkt, prec) == false) {
		skb_pull(pkt, SDPCM_HDRLEN);
		brcmf_txcomplete(bus->drvr, pkt, false);
		brcmu_pkt_buf_free_skb(pkt);
@@ -2875,34 +2865,10 @@ int brcmf_sdbrcm_bus_txdata(struct brcmf_bus *bus, struct sk_buff *pkt)
		qcount[prec] = pktq_plen(&bus->txq, prec);
#endif
	/* Schedule DPC if needed to send queued packet(s) */
		if (brcmf_deferred_tx && !bus->dpc_sched) {
	if (!bus->dpc_sched) {
		bus->dpc_sched = true;
		brcmf_sdbrcm_sched_dpc(bus);
	}
	} else {
		/* Lock: we're about to use shared data/code (and SDIO) */
		brcmf_sdbrcm_sdlock(bus);

		/* Otherwise, send it now */
		bus_wake(bus);
		/* Make sure back plane ht clk is on, no pending allowed */
		brcmf_sdbrcm_clkctl(bus, CLK_AVAIL, true);

		brcmf_dbg(TRACE, "calling txpkt\n");
		ret = brcmf_sdbrcm_txpkt(bus, pkt, SDPCM_DATA_CHANNEL, true);
		if (ret)
			bus->drvr->tx_errors++;
		else
			bus->drvr->dstats.tx_bytes += datalen;

		if (bus->idletime == BRCMF_IDLE_IMMEDIATE &&
		    !bus->dpc_sched) {
			bus->activity = false;
			brcmf_sdbrcm_clkctl(bus, CLK_NONE, true);
		}

		brcmf_sdbrcm_sdunlock(bus);
	}

	return ret;
}
@@ -5013,8 +4979,7 @@ int brcmf_bus_register(void)
			break;

		/* If both watchdog and DPC are threads, TX must be deferred */
		if ((brcmf_watchdog_prio >= 0) && (brcmf_dpc_prio >= 0)
		    && brcmf_deferred_tx)
		if (brcmf_watchdog_prio >= 0 && brcmf_dpc_prio >= 0)
			break;

		brcmf_dbg(ERROR, "Invalid module parameters.\n");