Commit 191e2bec authored by Franky Lin's avatar Franky Lin Committed by Greg Kroah-Hartman

staging: brcm80211: remove global variables for data frame boundary

Put boundary settings in brcmf_bus structure
Reviewed-by: default avatarRoland Vossen <rvossen@broadcom.com>
Reviewed-by: default avatarPieter-Paul Giesberts <pieterpg@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 c5d3cc02
...@@ -27,10 +27,6 @@ ...@@ -27,10 +27,6 @@
* Exported from brcmf bus module (brcmf_usb, brcmf_sdio) * Exported from brcmf bus module (brcmf_usb, brcmf_sdio)
*/ */
/* Tx/Rx bounds module parameters */
extern uint brcmf_txbound;
extern uint brcmf_rxbound;
/* Indicate (dis)interest in finding dongles. */ /* Indicate (dis)interest in finding dongles. */
extern int brcmf_bus_register(void); extern int brcmf_bus_register(void);
extern void brcmf_bus_unregister(void); extern void brcmf_bus_unregister(void);
......
...@@ -588,6 +588,10 @@ struct brcmf_bus { ...@@ -588,6 +588,10 @@ struct brcmf_bus {
u8 rx_seq; /* Receive sequence number (expected) */ u8 rx_seq; /* Receive sequence number (expected) */
bool rxskip; /* Skip receive (awaiting NAK ACK) */ bool rxskip; /* Skip receive (awaiting NAK ACK) */
uint rxbound; /* Rx frames to read before resched */
uint txbound; /* Tx frames to send before resched */
uint txminmax;
struct sk_buff *glomd; /* Packet containing glomming descriptor */ struct sk_buff *glomd; /* Packet containing glomming descriptor */
struct sk_buff *glom; /* Packet chain for glommed superframe */ struct sk_buff *glom; /* Packet chain for glommed superframe */
uint glomerr; /* Glom packet read errors */ uint glomerr; /* Glom packet read errors */
...@@ -740,13 +744,6 @@ module_param(brcmf_watchdog_prio, int, 0); ...@@ -740,13 +744,6 @@ module_param(brcmf_watchdog_prio, int, 0);
int brcmf_dpc_prio = 98; int brcmf_dpc_prio = 98;
module_param(brcmf_dpc_prio, int, 0); module_param(brcmf_dpc_prio, int, 0);
/* Tx/Rx bounds */
uint brcmf_txbound;
uint brcmf_rxbound;
module_param(brcmf_txbound, uint, 0);
module_param(brcmf_rxbound, uint, 0);
static uint brcmf_txminmax;
#define SDIO_DRIVE_STRENGTH 6 /* in milliamps */ #define SDIO_DRIVE_STRENGTH 6 /* in milliamps */
/* Use polling */ /* Use polling */
...@@ -2488,8 +2485,8 @@ static bool brcmf_sdbrcm_dpc(struct brcmf_bus *bus) ...@@ -2488,8 +2485,8 @@ static bool brcmf_sdbrcm_dpc(struct brcmf_bus *bus)
{ {
u32 intstatus, newstatus = 0; u32 intstatus, newstatus = 0;
uint retries = 0; uint retries = 0;
uint rxlimit = brcmf_rxbound; /* Rx frames to read before resched */ uint rxlimit = bus->rxbound; /* Rx frames to read before resched */
uint txlimit = brcmf_txbound; /* Tx frames to send before resched */ uint txlimit = bus->txbound; /* Tx frames to send before resched */
uint framecnt = 0; /* Temporary counter of tx/rx frames */ uint framecnt = 0; /* Temporary counter of tx/rx frames */
bool rxdone = true; /* Flag for no more read data */ bool rxdone = true; /* Flag for no more read data */
bool resched = false; /* Flag indicating resched wanted */ bool resched = false; /* Flag indicating resched wanted */
...@@ -2690,7 +2687,7 @@ static bool brcmf_sdbrcm_dpc(struct brcmf_bus *bus) ...@@ -2690,7 +2687,7 @@ static bool brcmf_sdbrcm_dpc(struct brcmf_bus *bus)
else if ((bus->clkstate == CLK_AVAIL) && !bus->fcstate && else if ((bus->clkstate == CLK_AVAIL) && !bus->fcstate &&
brcmu_pktq_mlen(&bus->txq, ~bus->flowcontrol) && txlimit brcmu_pktq_mlen(&bus->txq, ~bus->flowcontrol) && txlimit
&& data_ok(bus)) { && data_ok(bus)) {
framecnt = rxdone ? txlimit : min(txlimit, brcmf_txminmax); framecnt = rxdone ? txlimit : min(txlimit, bus->txminmax);
framecnt = brcmf_sdbrcm_sendfromq(bus, framecnt); framecnt = brcmf_sdbrcm_sendfromq(bus, framecnt);
txlimit -= framecnt; txlimit -= framecnt;
} }
...@@ -4779,10 +4776,6 @@ void *brcmf_sdbrcm_probe(u16 bus_no, u16 slot, u16 func, uint bustype, ...@@ -4779,10 +4776,6 @@ void *brcmf_sdbrcm_probe(u16 bus_no, u16 slot, u16 func, uint bustype,
* first time that the driver is initialized vs subsequent * first time that the driver is initialized vs subsequent
* initializations. * initializations.
*/ */
brcmf_txbound = BRCMF_TXBOUND;
brcmf_rxbound = BRCMF_RXBOUND;
brcmf_txminmax = BRCMF_TXMINMAX;
brcmf_c_init(); brcmf_c_init();
brcmf_dbg(TRACE, "Enter\n"); brcmf_dbg(TRACE, "Enter\n");
...@@ -4798,6 +4791,9 @@ void *brcmf_sdbrcm_probe(u16 bus_no, u16 slot, u16 func, uint bustype, ...@@ -4798,6 +4791,9 @@ void *brcmf_sdbrcm_probe(u16 bus_no, u16 slot, u16 func, uint bustype,
} }
bus->sdiodev = sdiodev; bus->sdiodev = sdiodev;
sdiodev->bus = bus; sdiodev->bus = bus;
bus->txbound = BRCMF_TXBOUND;
bus->rxbound = BRCMF_RXBOUND;
bus->txminmax = BRCMF_TXMINMAX;
bus->tx_seq = SDPCM_SEQUENCE_WRAP - 1; bus->tx_seq = SDPCM_SEQUENCE_WRAP - 1;
bus->usebufpool = false; /* Use bufpool if allocated, bus->usebufpool = false; /* Use bufpool if allocated,
else use locally malloced rxbuf */ else use locally malloced rxbuf */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment