diff options
author | Stanislaw Gruszka <sgruszka@redhat.com> | 2011-12-23 02:13:49 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2012-01-04 14:30:45 -0500 |
commit | 81fb46139504f72a92243245df878e1a1af35f89 (patch) | |
tree | 3c7eb73a97eede57d68c24c7ce53e315f348be01 | |
parent | 5d0bef903abe8ac438b660c77d886e6b0394797c (diff) |
iwlegacy: 3945: simplify calculations of retry limit
Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r-- | drivers/net/wireless/iwlegacy/3945-mac.c | 3 | ||||
-rw-r--r-- | drivers/net/wireless/iwlegacy/3945.c | 15 | ||||
-rw-r--r-- | drivers/net/wireless/iwlegacy/3945.h | 3 |
3 files changed, 6 insertions, 15 deletions
diff --git a/drivers/net/wireless/iwlegacy/3945-mac.c b/drivers/net/wireless/iwlegacy/3945-mac.c index daef6b58f6cc..c8179756bf3c 100644 --- a/drivers/net/wireless/iwlegacy/3945-mac.c +++ b/drivers/net/wireless/iwlegacy/3945-mac.c | |||
@@ -570,8 +570,7 @@ il3945_tx_skb(struct il_priv *il, struct sk_buff *skb) | |||
570 | /* TODO need this for burst mode later on */ | 570 | /* TODO need this for burst mode later on */ |
571 | il3945_build_tx_cmd_basic(il, out_cmd, info, hdr, sta_id); | 571 | il3945_build_tx_cmd_basic(il, out_cmd, info, hdr, sta_id); |
572 | 572 | ||
573 | /* set is_hcca to 0; it probably will never be implemented */ | 573 | il3945_hw_build_tx_cmd_rate(il, out_cmd, info, hdr, sta_id); |
574 | il3945_hw_build_tx_cmd_rate(il, out_cmd, info, hdr, sta_id, 0); | ||
575 | 574 | ||
576 | /* Total # bytes to be transmitted */ | 575 | /* Total # bytes to be transmitted */ |
577 | len = (u16) skb->len; | 576 | len = (u16) skb->len; |
diff --git a/drivers/net/wireless/iwlegacy/3945.c b/drivers/net/wireless/iwlegacy/3945.c index 44a121167806..1489b1573a6a 100644 --- a/drivers/net/wireless/iwlegacy/3945.c +++ b/drivers/net/wireless/iwlegacy/3945.c | |||
@@ -680,13 +680,13 @@ il3945_hw_txq_free_tfd(struct il_priv *il, struct il_tx_queue *txq) | |||
680 | void | 680 | void |
681 | il3945_hw_build_tx_cmd_rate(struct il_priv *il, struct il_device_cmd *cmd, | 681 | il3945_hw_build_tx_cmd_rate(struct il_priv *il, struct il_device_cmd *cmd, |
682 | struct ieee80211_tx_info *info, | 682 | struct ieee80211_tx_info *info, |
683 | struct ieee80211_hdr *hdr, int sta_id, int tx_id) | 683 | struct ieee80211_hdr *hdr, int sta_id) |
684 | { | 684 | { |
685 | u16 hw_value = ieee80211_get_tx_rate(il->hw, info)->hw_value; | 685 | u16 hw_value = ieee80211_get_tx_rate(il->hw, info)->hw_value; |
686 | u16 rate_idx = min(hw_value & 0xffff, RATE_COUNT_3945 - 1); | 686 | u16 rate_idx = min(hw_value & 0xffff, RATE_COUNT_3945 - 1); |
687 | u16 rate_mask; | 687 | u16 rate_mask; |
688 | int rate; | 688 | int rate; |
689 | u8 rts_retry_limit; | 689 | const u8 rts_retry_limit = 7; |
690 | u8 data_retry_limit; | 690 | u8 data_retry_limit; |
691 | __le32 tx_flags; | 691 | __le32 tx_flags; |
692 | __le16 fc = hdr->frame_control; | 692 | __le16 fc = hdr->frame_control; |
@@ -705,15 +705,8 @@ il3945_hw_build_tx_cmd_rate(struct il_priv *il, struct il_device_cmd *cmd, | |||
705 | else | 705 | else |
706 | data_retry_limit = IL_DEFAULT_TX_RETRY; | 706 | data_retry_limit = IL_DEFAULT_TX_RETRY; |
707 | tx_cmd->data_retry_limit = data_retry_limit; | 707 | tx_cmd->data_retry_limit = data_retry_limit; |
708 | 708 | /* Set retry limit on RTS packets */ | |
709 | if (tx_id >= IL39_CMD_QUEUE_NUM) | 709 | tx_cmd->rts_retry_limit = min(data_retry_limit, rts_retry_limit); |
710 | rts_retry_limit = 3; | ||
711 | else | ||
712 | rts_retry_limit = 7; | ||
713 | |||
714 | if (data_retry_limit < rts_retry_limit) | ||
715 | rts_retry_limit = data_retry_limit; | ||
716 | tx_cmd->rts_retry_limit = rts_retry_limit; | ||
717 | 710 | ||
718 | tx_cmd->rate = rate; | 711 | tx_cmd->rate = rate; |
719 | tx_cmd->tx_flags = tx_flags; | 712 | tx_cmd->tx_flags = tx_flags; |
diff --git a/drivers/net/wireless/iwlegacy/3945.h b/drivers/net/wireless/iwlegacy/3945.h index 970e5c3a410a..9f42f79f8778 100644 --- a/drivers/net/wireless/iwlegacy/3945.h +++ b/drivers/net/wireless/iwlegacy/3945.h | |||
@@ -239,8 +239,7 @@ extern unsigned int il3945_hw_get_beacon_cmd(struct il_priv *il, | |||
239 | u8 rate); | 239 | u8 rate); |
240 | void il3945_hw_build_tx_cmd_rate(struct il_priv *il, struct il_device_cmd *cmd, | 240 | void il3945_hw_build_tx_cmd_rate(struct il_priv *il, struct il_device_cmd *cmd, |
241 | struct ieee80211_tx_info *info, | 241 | struct ieee80211_tx_info *info, |
242 | struct ieee80211_hdr *hdr, int sta_id, | 242 | struct ieee80211_hdr *hdr, int sta_id); |
243 | int tx_id); | ||
244 | extern int il3945_hw_reg_send_txpower(struct il_priv *il); | 243 | extern int il3945_hw_reg_send_txpower(struct il_priv *il); |
245 | extern int il3945_hw_reg_set_txpower(struct il_priv *il, s8 power); | 244 | extern int il3945_hw_reg_set_txpower(struct il_priv *il, s8 power); |
246 | extern void il3945_hdl_stats(struct il_priv *il, struct il_rx_buf *rxb); | 245 | extern void il3945_hdl_stats(struct il_priv *il, struct il_rx_buf *rxb); |