Skip to content

Commit

Permalink
ath6kl: Move chk_irq_status_cnt from ath6kl_device to htc_target
Browse files Browse the repository at this point in the history
Signed-off-by: Vasanthakumar Thiagarajan <vthiagar@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
  • Loading branch information
Vasanthakumar Thiagarajan authored and Kalle Valo committed Aug 9, 2011
1 parent 7520ceb commit fcb8205
Show file tree
Hide file tree
Showing 4 changed files with 7 additions and 6 deletions.
4 changes: 2 additions & 2 deletions drivers/net/wireless/ath/ath6kl/htc.c
Original file line number Diff line number Diff line change
Expand Up @@ -1774,7 +1774,7 @@ int htc_rxmsg_pending_handler(struct htc_target *target, u32 msg_look_ahead[],
* A recv bundle was detected, force IRQ status
* re-check again
*/
target->dev->chk_irq_status_cnt = 1;
target->chk_irq_status_cnt = 1;

n_fetched += get_queue_depth(&rx_pktq);

Expand All @@ -1799,7 +1799,7 @@ int htc_rxmsg_pending_handler(struct htc_target *target, u32 msg_look_ahead[],
* before leaving IRQ processing, this can net better
* performance in high throughput situations.
*/
target->dev->chk_irq_status_cnt = 1;
target->chk_irq_status_cnt = 1;
}

if (status) {
Expand Down
2 changes: 2 additions & 0 deletions drivers/net/wireless/ath/ath6kl/htc.h
Original file line number Diff line number Diff line change
Expand Up @@ -536,6 +536,8 @@ struct htc_target {

int max_scat_entries;
int max_xfer_szper_scatreq;

int chk_irq_status_cnt;
};

void *htc_create(struct ath6kl *ar);
Expand Down
6 changes: 3 additions & 3 deletions drivers/net/wireless/ath/ath6kl/htc_hif.c
Original file line number Diff line number Diff line change
Expand Up @@ -426,7 +426,7 @@ static int proc_pending_irqs(struct ath6kl_device *dev, bool *done)
* HTC could not pull any messages out due to lack
* of resources.
*/
dev->chk_irq_status_cnt = 0;
dev->htc_cnxt->chk_irq_status_cnt = 0;
}

/* now handle the rest of them */
Expand Down Expand Up @@ -469,7 +469,7 @@ static int proc_pending_irqs(struct ath6kl_device *dev, bool *done)
ath6kl_dbg(ATH6KL_DBG_IRQ,
"bypassing irq status re-check, forcing done\n");

if (!dev->chk_irq_status_cnt)
if (!dev->htc_cnxt->chk_irq_status_cnt)
*done = true;

ath6kl_dbg(ATH6KL_DBG_IRQ,
Expand All @@ -489,7 +489,7 @@ int ath6kldev_intr_bh_handler(struct ath6kl *ar)
* Reset counter used to flag a re-scan of IRQ status registers on
* the target.
*/
dev->chk_irq_status_cnt = 0;
dev->htc_cnxt->chk_irq_status_cnt = 0;

/*
* IRQ processing is synchronous, interrupt status registers can be
Expand Down
1 change: 0 additions & 1 deletion drivers/net/wireless/ath/ath6kl/htc_hif.h
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,6 @@ struct ath6kl_device {
struct ath6kl_irq_enable_reg irq_en_reg;
u8 pad3[A_CACHE_LINE_PAD];
struct htc_target *htc_cnxt;
int chk_irq_status_cnt;
struct ath6kl *ar;
};

Expand Down

0 comments on commit fcb8205

Please sign in to comment.