iwlagn: remove bytecount indirection
All AGN devices need the bytecount table, so remove the indirection and make the functions static again. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
This commit is contained in:
parent
ccb6c1c0ec
commit
94b00658ff
|
@ -171,8 +171,6 @@ static int iwl1000_hw_set_hw_params(struct iwl_priv *priv)
|
||||||
|
|
||||||
static struct iwl_lib_ops iwl1000_lib = {
|
static struct iwl_lib_ops iwl1000_lib = {
|
||||||
.set_hw_params = iwl1000_hw_set_hw_params,
|
.set_hw_params = iwl1000_hw_set_hw_params,
|
||||||
.txq_update_byte_cnt_tbl = iwlagn_txq_update_byte_cnt_tbl,
|
|
||||||
.txq_inval_byte_cnt_tbl = iwlagn_txq_inval_byte_cnt_tbl,
|
|
||||||
.txq_set_sched = iwlagn_txq_set_sched,
|
.txq_set_sched = iwlagn_txq_set_sched,
|
||||||
.txq_attach_buf_to_tfd = iwl_hw_txq_attach_buf_to_tfd,
|
.txq_attach_buf_to_tfd = iwl_hw_txq_attach_buf_to_tfd,
|
||||||
.txq_free_tfd = iwl_hw_txq_free_tfd,
|
.txq_free_tfd = iwl_hw_txq_free_tfd,
|
||||||
|
|
|
@ -252,8 +252,6 @@ static int iwl2030_hw_channel_switch(struct iwl_priv *priv,
|
||||||
|
|
||||||
static struct iwl_lib_ops iwl2000_lib = {
|
static struct iwl_lib_ops iwl2000_lib = {
|
||||||
.set_hw_params = iwl2000_hw_set_hw_params,
|
.set_hw_params = iwl2000_hw_set_hw_params,
|
||||||
.txq_update_byte_cnt_tbl = iwlagn_txq_update_byte_cnt_tbl,
|
|
||||||
.txq_inval_byte_cnt_tbl = iwlagn_txq_inval_byte_cnt_tbl,
|
|
||||||
.txq_set_sched = iwlagn_txq_set_sched,
|
.txq_set_sched = iwlagn_txq_set_sched,
|
||||||
.txq_attach_buf_to_tfd = iwl_hw_txq_attach_buf_to_tfd,
|
.txq_attach_buf_to_tfd = iwl_hw_txq_attach_buf_to_tfd,
|
||||||
.txq_free_tfd = iwl_hw_txq_free_tfd,
|
.txq_free_tfd = iwl_hw_txq_free_tfd,
|
||||||
|
|
|
@ -339,8 +339,6 @@ static int iwl5000_hw_channel_switch(struct iwl_priv *priv,
|
||||||
|
|
||||||
static struct iwl_lib_ops iwl5000_lib = {
|
static struct iwl_lib_ops iwl5000_lib = {
|
||||||
.set_hw_params = iwl5000_hw_set_hw_params,
|
.set_hw_params = iwl5000_hw_set_hw_params,
|
||||||
.txq_update_byte_cnt_tbl = iwlagn_txq_update_byte_cnt_tbl,
|
|
||||||
.txq_inval_byte_cnt_tbl = iwlagn_txq_inval_byte_cnt_tbl,
|
|
||||||
.txq_set_sched = iwlagn_txq_set_sched,
|
.txq_set_sched = iwlagn_txq_set_sched,
|
||||||
.txq_attach_buf_to_tfd = iwl_hw_txq_attach_buf_to_tfd,
|
.txq_attach_buf_to_tfd = iwl_hw_txq_attach_buf_to_tfd,
|
||||||
.txq_free_tfd = iwl_hw_txq_free_tfd,
|
.txq_free_tfd = iwl_hw_txq_free_tfd,
|
||||||
|
@ -376,8 +374,6 @@ static struct iwl_lib_ops iwl5000_lib = {
|
||||||
|
|
||||||
static struct iwl_lib_ops iwl5150_lib = {
|
static struct iwl_lib_ops iwl5150_lib = {
|
||||||
.set_hw_params = iwl5150_hw_set_hw_params,
|
.set_hw_params = iwl5150_hw_set_hw_params,
|
||||||
.txq_update_byte_cnt_tbl = iwlagn_txq_update_byte_cnt_tbl,
|
|
||||||
.txq_inval_byte_cnt_tbl = iwlagn_txq_inval_byte_cnt_tbl,
|
|
||||||
.txq_set_sched = iwlagn_txq_set_sched,
|
.txq_set_sched = iwlagn_txq_set_sched,
|
||||||
.txq_attach_buf_to_tfd = iwl_hw_txq_attach_buf_to_tfd,
|
.txq_attach_buf_to_tfd = iwl_hw_txq_attach_buf_to_tfd,
|
||||||
.txq_free_tfd = iwl_hw_txq_free_tfd,
|
.txq_free_tfd = iwl_hw_txq_free_tfd,
|
||||||
|
|
|
@ -278,8 +278,6 @@ static int iwl6000_hw_channel_switch(struct iwl_priv *priv,
|
||||||
|
|
||||||
static struct iwl_lib_ops iwl6000_lib = {
|
static struct iwl_lib_ops iwl6000_lib = {
|
||||||
.set_hw_params = iwl6000_hw_set_hw_params,
|
.set_hw_params = iwl6000_hw_set_hw_params,
|
||||||
.txq_update_byte_cnt_tbl = iwlagn_txq_update_byte_cnt_tbl,
|
|
||||||
.txq_inval_byte_cnt_tbl = iwlagn_txq_inval_byte_cnt_tbl,
|
|
||||||
.txq_set_sched = iwlagn_txq_set_sched,
|
.txq_set_sched = iwlagn_txq_set_sched,
|
||||||
.txq_attach_buf_to_tfd = iwl_hw_txq_attach_buf_to_tfd,
|
.txq_attach_buf_to_tfd = iwl_hw_txq_attach_buf_to_tfd,
|
||||||
.txq_free_tfd = iwl_hw_txq_free_tfd,
|
.txq_free_tfd = iwl_hw_txq_free_tfd,
|
||||||
|
@ -316,8 +314,6 @@ static struct iwl_lib_ops iwl6000_lib = {
|
||||||
|
|
||||||
static struct iwl_lib_ops iwl6030_lib = {
|
static struct iwl_lib_ops iwl6030_lib = {
|
||||||
.set_hw_params = iwl6000_hw_set_hw_params,
|
.set_hw_params = iwl6000_hw_set_hw_params,
|
||||||
.txq_update_byte_cnt_tbl = iwlagn_txq_update_byte_cnt_tbl,
|
|
||||||
.txq_inval_byte_cnt_tbl = iwlagn_txq_inval_byte_cnt_tbl,
|
|
||||||
.txq_set_sched = iwlagn_txq_set_sched,
|
.txq_set_sched = iwlagn_txq_set_sched,
|
||||||
.txq_attach_buf_to_tfd = iwl_hw_txq_attach_buf_to_tfd,
|
.txq_attach_buf_to_tfd = iwl_hw_txq_attach_buf_to_tfd,
|
||||||
.txq_free_tfd = iwl_hw_txq_free_tfd,
|
.txq_free_tfd = iwl_hw_txq_free_tfd,
|
||||||
|
|
|
@ -98,9 +98,9 @@ static inline int get_fifo_from_tid(struct iwl_rxon_context *ctx, u16 tid)
|
||||||
/**
|
/**
|
||||||
* iwlagn_txq_update_byte_cnt_tbl - Set up entry in Tx byte-count array
|
* iwlagn_txq_update_byte_cnt_tbl - Set up entry in Tx byte-count array
|
||||||
*/
|
*/
|
||||||
void iwlagn_txq_update_byte_cnt_tbl(struct iwl_priv *priv,
|
static void iwlagn_txq_update_byte_cnt_tbl(struct iwl_priv *priv,
|
||||||
struct iwl_tx_queue *txq,
|
struct iwl_tx_queue *txq,
|
||||||
u16 byte_cnt)
|
u16 byte_cnt)
|
||||||
{
|
{
|
||||||
struct iwlagn_scd_bc_tbl *scd_bc_tbl = priv->scd_bc_tbls.addr;
|
struct iwlagn_scd_bc_tbl *scd_bc_tbl = priv->scd_bc_tbls.addr;
|
||||||
int write_ptr = txq->q.write_ptr;
|
int write_ptr = txq->q.write_ptr;
|
||||||
|
@ -136,8 +136,8 @@ void iwlagn_txq_update_byte_cnt_tbl(struct iwl_priv *priv,
|
||||||
tfd_offset[TFD_QUEUE_SIZE_MAX + write_ptr] = bc_ent;
|
tfd_offset[TFD_QUEUE_SIZE_MAX + write_ptr] = bc_ent;
|
||||||
}
|
}
|
||||||
|
|
||||||
void iwlagn_txq_inval_byte_cnt_tbl(struct iwl_priv *priv,
|
static void iwlagn_txq_inval_byte_cnt_tbl(struct iwl_priv *priv,
|
||||||
struct iwl_tx_queue *txq)
|
struct iwl_tx_queue *txq)
|
||||||
{
|
{
|
||||||
struct iwlagn_scd_bc_tbl *scd_bc_tbl = priv->scd_bc_tbls.addr;
|
struct iwlagn_scd_bc_tbl *scd_bc_tbl = priv->scd_bc_tbls.addr;
|
||||||
int txq_id = txq->q.id;
|
int txq_id = txq->q.id;
|
||||||
|
@ -766,8 +766,8 @@ int iwlagn_tx_skb(struct iwl_priv *priv, struct sk_buff *skb)
|
||||||
|
|
||||||
/* Set up entry for this TFD in Tx byte-count array */
|
/* Set up entry for this TFD in Tx byte-count array */
|
||||||
if (info->flags & IEEE80211_TX_CTL_AMPDU)
|
if (info->flags & IEEE80211_TX_CTL_AMPDU)
|
||||||
priv->cfg->ops->lib->txq_update_byte_cnt_tbl(priv, txq,
|
iwlagn_txq_update_byte_cnt_tbl(priv, txq,
|
||||||
le16_to_cpu(tx_cmd->len));
|
le16_to_cpu(tx_cmd->len));
|
||||||
|
|
||||||
pci_dma_sync_single_for_device(priv->pci_dev, txcmd_phys,
|
pci_dma_sync_single_for_device(priv->pci_dev, txcmd_phys,
|
||||||
firstlen, PCI_DMA_BIDIRECTIONAL);
|
firstlen, PCI_DMA_BIDIRECTIONAL);
|
||||||
|
@ -1246,8 +1246,7 @@ int iwlagn_tx_queue_reclaim(struct iwl_priv *priv, int txq_id, int index)
|
||||||
txq_id >= IWLAGN_FIRST_AMPDU_QUEUE);
|
txq_id >= IWLAGN_FIRST_AMPDU_QUEUE);
|
||||||
tx_info->skb = NULL;
|
tx_info->skb = NULL;
|
||||||
|
|
||||||
if (priv->cfg->ops->lib->txq_inval_byte_cnt_tbl)
|
iwlagn_txq_inval_byte_cnt_tbl(priv, txq);
|
||||||
priv->cfg->ops->lib->txq_inval_byte_cnt_tbl(priv, txq);
|
|
||||||
|
|
||||||
priv->cfg->ops->lib->txq_free_tfd(priv, txq);
|
priv->cfg->ops->lib->txq_free_tfd(priv, txq);
|
||||||
}
|
}
|
||||||
|
|
|
@ -139,11 +139,6 @@ void iwlagn_set_wr_ptrs(struct iwl_priv *priv,
|
||||||
void iwlagn_tx_queue_set_status(struct iwl_priv *priv,
|
void iwlagn_tx_queue_set_status(struct iwl_priv *priv,
|
||||||
struct iwl_tx_queue *txq,
|
struct iwl_tx_queue *txq,
|
||||||
int tx_fifo_id, int scd_retry);
|
int tx_fifo_id, int scd_retry);
|
||||||
void iwlagn_txq_update_byte_cnt_tbl(struct iwl_priv *priv,
|
|
||||||
struct iwl_tx_queue *txq,
|
|
||||||
u16 byte_cnt);
|
|
||||||
void iwlagn_txq_inval_byte_cnt_tbl(struct iwl_priv *priv,
|
|
||||||
struct iwl_tx_queue *txq);
|
|
||||||
void iwlagn_txq_set_sched(struct iwl_priv *priv, u32 mask);
|
void iwlagn_txq_set_sched(struct iwl_priv *priv, u32 mask);
|
||||||
void iwl_free_tfds_in_queue(struct iwl_priv *priv,
|
void iwl_free_tfds_in_queue(struct iwl_priv *priv,
|
||||||
int sta_id, int tid, int freed);
|
int sta_id, int tid, int freed);
|
||||||
|
|
|
@ -128,11 +128,6 @@ struct iwl_lib_ops {
|
||||||
/* set hw dependent parameters */
|
/* set hw dependent parameters */
|
||||||
int (*set_hw_params)(struct iwl_priv *priv);
|
int (*set_hw_params)(struct iwl_priv *priv);
|
||||||
/* Handling TX */
|
/* Handling TX */
|
||||||
void (*txq_update_byte_cnt_tbl)(struct iwl_priv *priv,
|
|
||||||
struct iwl_tx_queue *txq,
|
|
||||||
u16 byte_cnt);
|
|
||||||
void (*txq_inval_byte_cnt_tbl)(struct iwl_priv *priv,
|
|
||||||
struct iwl_tx_queue *txq);
|
|
||||||
void (*txq_set_sched)(struct iwl_priv *priv, u32 mask);
|
void (*txq_set_sched)(struct iwl_priv *priv, u32 mask);
|
||||||
int (*txq_attach_buf_to_tfd)(struct iwl_priv *priv,
|
int (*txq_attach_buf_to_tfd)(struct iwl_priv *priv,
|
||||||
struct iwl_tx_queue *txq,
|
struct iwl_tx_queue *txq,
|
||||||
|
|
Loading…
Reference in New Issue