Commit 261f992b authored by Roland Vossen's avatar Roland Vossen Committed by Greg Kroah-Hartman

staging: brcm80211: removed unused softmac workaround

WAR16165 is only used on older PCI chips, the driver does not support
these chips.
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 bce42cf3
...@@ -1852,15 +1852,6 @@ int ai_devpath(struct si_pub *sih, char *path, int size) ...@@ -1852,15 +1852,6 @@ int ai_devpath(struct si_pub *sih, char *path, int size)
return 0; return 0;
} }
bool ai_pci_war16165(struct si_pub *sih)
{
struct si_info *sii;
sii = (struct si_info *)sih;
return PCI(sii) && (sih->buscorerev <= 10);
}
void ai_pci_up(struct si_pub *sih) void ai_pci_up(struct si_pub *sih)
{ {
struct si_info *sii; struct si_info *sii;
......
...@@ -322,8 +322,6 @@ extern void ai_write_wrap_reg(struct si_pub *sih, u32 offset, u32 val); ...@@ -322,8 +322,6 @@ extern void ai_write_wrap_reg(struct si_pub *sih, u32 offset, u32 val);
extern struct si_pub *ai_attach(void *regs, struct pci_dev *sdh, char **vars, extern struct si_pub *ai_attach(void *regs, struct pci_dev *sdh, char **vars,
uint *varsz); uint *varsz);
extern void ai_detach(struct si_pub *sih); extern void ai_detach(struct si_pub *sih);
extern bool ai_pci_war16165(struct si_pub *sih);
extern uint ai_coreid(struct si_pub *sih); extern uint ai_coreid(struct si_pub *sih);
extern uint ai_corerev(struct si_pub *sih); extern uint ai_corerev(struct si_pub *sih);
extern uint ai_corereg(struct si_pub *sih, uint coreidx, uint regoff, uint mask, extern uint ai_corereg(struct si_pub *sih, uint coreidx, uint regoff, uint mask,
......
...@@ -1330,8 +1330,7 @@ struct shm_acparams { ...@@ -1330,8 +1330,7 @@ struct shm_acparams {
#define MHF1_FORCEFASTCLK 0x0400 #define MHF1_FORCEFASTCLK 0x0400
/* Flags in M_HOST_FLAGS2 */ /* Flags in M_HOST_FLAGS2 */
/* PR16165WAR : Enable ucode PCI slow clock WAR */
#define MHF2_PCISLOWCLKWAR 0x0008
/* Flush BCMC FIFO immediately */ /* Flush BCMC FIFO immediately */
#define MHF2_TXBCMC_NOW 0x0040 #define MHF2_TXBCMC_NOW 0x0040
/* Enable ucode/hw power control */ /* Enable ucode/hw power control */
......
...@@ -829,19 +829,6 @@ brcms_b_recv(struct brcms_hardware *wlc_hw, uint fifo, bool bound) ...@@ -829,19 +829,6 @@ brcms_b_recv(struct brcms_hardware *wlc_hw, uint fifo, bool bound)
return n >= bound_limit; return n >= bound_limit;
} }
static void brcms_c_war16165(struct brcms_c_info *wlc, bool tx)
{
if (tx) {
/* the post-increment is used in STAY_AWAKE macro */
if (wlc->txpend16165war++ == 0)
brcms_c_set_ps_ctrl(wlc);
} else {
wlc->txpend16165war--;
if (wlc->txpend16165war == 0)
brcms_c_set_ps_ctrl(wlc);
}
}
/* process an individual struct tx_status */ /* process an individual struct tx_status */
static bool static bool
brcms_c_dotxstatus(struct brcms_c_info *wlc, struct tx_status *txs) brcms_c_dotxstatus(struct brcms_c_info *wlc, struct tx_status *txs)
...@@ -879,8 +866,6 @@ brcms_c_dotxstatus(struct brcms_c_info *wlc, struct tx_status *txs) ...@@ -879,8 +866,6 @@ brcms_c_dotxstatus(struct brcms_c_info *wlc, struct tx_status *txs)
} }
p = dma_getnexttxp(wlc->hw->di[queue], DMA_RANGE_TRANSMITTED); p = dma_getnexttxp(wlc->hw->di[queue], DMA_RANGE_TRANSMITTED);
if (wlc->war16165)
brcms_c_war16165(wlc, false);
if (p == NULL) if (p == NULL)
goto fatal; goto fatal;
...@@ -3109,8 +3094,6 @@ static void brcms_c_flushqueues(struct brcms_c_info *wlc) ...@@ -3109,8 +3094,6 @@ static void brcms_c_flushqueues(struct brcms_c_info *wlc)
struct brcms_hardware *wlc_hw = wlc->hw; struct brcms_hardware *wlc_hw = wlc->hw;
uint i; uint i;
wlc->txpend16165war = 0;
/* free any posted tx packets */ /* free any posted tx packets */
for (i = 0; i < NFIFO; i++) for (i = 0; i < NFIFO; i++)
if (wlc_hw->di[i]) { if (wlc_hw->di[i]) {
...@@ -3532,9 +3515,6 @@ static void brcms_b_coreinit(struct brcms_c_info *wlc) ...@@ -3532,9 +3515,6 @@ static void brcms_b_coreinit(struct brcms_c_info *wlc)
AND_REG(&regs->ifs_ctl, 0x0FFF); AND_REG(&regs->ifs_ctl, 0x0FFF);
W_REG(&regs->ifs_aifsn, EDCF_AIFSN_MIN); W_REG(&regs->ifs_aifsn, EDCF_AIFSN_MIN);
/* dma initializations */
wlc->txpend16165war = 0;
/* init the tx dma engines */ /* init the tx dma engines */
for (i = 0; i < NFIFO; i++) { for (i = 0; i < NFIFO; i++) {
if (wlc_hw->di[i]) if (wlc_hw->di[i])
...@@ -4832,9 +4812,6 @@ static int brcms_b_attach(struct brcms_c_info *wlc, u16 vendor, u16 device, ...@@ -4832,9 +4812,6 @@ static int brcms_b_attach(struct brcms_c_info *wlc, u16 vendor, u16 device,
if (wlc_hw->boardflags & BFL_NOPLLDOWN) if (wlc_hw->boardflags & BFL_NOPLLDOWN)
brcms_b_pllreq(wlc_hw, true, BRCMS_PLLREQ_SHARED); brcms_b_pllreq(wlc_hw, true, BRCMS_PLLREQ_SHARED);
if (ai_pci_war16165(wlc_hw->sih))
wlc->war16165 = true;
/* check device id(srom, nvram etc.) to set bands */ /* check device id(srom, nvram etc.) to set bands */
if (wlc_hw->deviceid == BCM43224_D11N_ID || if (wlc_hw->deviceid == BCM43224_D11N_ID ||
wlc_hw->deviceid == BCM43224_D11N_ID_VEN1) wlc_hw->deviceid == BCM43224_D11N_ID_VEN1)
...@@ -5833,10 +5810,6 @@ int brcms_c_up(struct brcms_c_info *wlc) ...@@ -5833,10 +5810,6 @@ int brcms_c_up(struct brcms_c_info *wlc)
/* Set EDCF hostflags */ /* Set EDCF hostflags */
brcms_c_mhf(wlc, MHF1, MHF1_EDCF, MHF1_EDCF, BRCM_BAND_ALL); brcms_c_mhf(wlc, MHF1, MHF1_EDCF, MHF1_EDCF, BRCM_BAND_ALL);
if (wlc->war16165)
brcms_c_mhf(wlc, MHF2, MHF2_PCISLOWCLKWAR, MHF2_PCISLOWCLKWAR,
BRCM_BAND_ALL);
brcms_init(wlc->wl); brcms_init(wlc->wl);
wlc->pub->up = true; wlc->pub->up = true;
...@@ -7816,10 +7789,6 @@ brcms_c_txfifo(struct brcms_c_info *wlc, uint fifo, struct sk_buff *p, ...@@ -7816,10 +7789,6 @@ brcms_c_txfifo(struct brcms_c_info *wlc, uint fifo, struct sk_buff *p,
if (fifo == TX_BCMC_FIFO) if (fifo == TX_BCMC_FIFO)
frameid = le16_to_cpu(txh->TxFrameID); frameid = le16_to_cpu(txh->TxFrameID);
if (wlc->war16165)
brcms_c_war16165(wlc, true);
/* /*
* Bump up pending count for if not using rpc. If rpc is * Bump up pending count for if not using rpc. If rpc is
* used, this will be handled in brcms_b_txfifo() * used, this will be handled in brcms_b_txfifo()
......
...@@ -416,8 +416,6 @@ struct brcms_txq_info { ...@@ -416,8 +416,6 @@ struct brcms_txq_info {
* band: pointer to active per-band state. * band: pointer to active per-band state.
* corestate: per-core state (one per hw core). * corestate: per-core state (one per hw core).
* bandstate: per-band state (one per phy/radio). * bandstate: per-band state (one per phy/radio).
* war16165: PCI slow clock 16165 war flag.
* txpend16165war: PCI slow clock 16165 war flag.
* qvalid: DirFrmQValid and BcMcFrmQValid. * qvalid: DirFrmQValid and BcMcFrmQValid.
* ampdu: ampdu module handler. * ampdu: ampdu module handler.
* asi: antsel module handler. * asi: antsel module handler.
...@@ -508,9 +506,6 @@ struct brcms_c_info { ...@@ -508,9 +506,6 @@ struct brcms_c_info {
struct brcms_core *corestate; struct brcms_core *corestate;
struct brcms_band *bandstate[MAXBANDS]; struct brcms_band *bandstate[MAXBANDS];
bool war16165;
uint txpend16165war;
/* packet queue */ /* packet queue */
uint qvalid; uint qvalid;
......
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