diff options
author | Emmanuel Grumbach <emmanuel.grumbach@intel.com> | 2008-07-18 01:53:09 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2008-08-04 15:09:09 -0400 |
commit | 4aa41f12aa4f08a10b0b07ed334faa3638ba8e9c (patch) | |
tree | 06ae60c3944a0520ab5994b4ba5dfa8d4f5a4200 | |
parent | c785d1d5018b93878a9280b0c04df96682cc6eff (diff) |
iwlwifi: bug fix in AGG flow - cast const to ULL
This patch fixes a bug in AGG flow:
u64 bitmap = 0;
bitmap |= 1 << 32 results to be 0xffffffff80000000.
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-4965.c | 6 | ||||
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-5000.c | 6 | ||||
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-tx.c | 2 |
3 files changed, 7 insertions, 7 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-4965.c b/drivers/net/wireless/iwlwifi/iwl-4965.c index c0ba28fa6724..f356f4f0944b 100644 --- a/drivers/net/wireless/iwlwifi/iwl-4965.c +++ b/drivers/net/wireless/iwlwifi/iwl-4965.c | |||
@@ -2130,9 +2130,9 @@ static int iwl4965_tx_status_reply_tx(struct iwl_priv *priv, | |||
2130 | bitmap = bitmap << sh; | 2130 | bitmap = bitmap << sh; |
2131 | sh = 0; | 2131 | sh = 0; |
2132 | } | 2132 | } |
2133 | bitmap |= (1 << sh); | 2133 | bitmap |= 1ULL << sh; |
2134 | IWL_DEBUG_TX_REPLY("start=%d bitmap=0x%x\n", | 2134 | IWL_DEBUG_TX_REPLY("start=%d bitmap=0x%llx\n", |
2135 | start, (u32)(bitmap & 0xFFFFFFFF)); | 2135 | start, (unsigned long long)bitmap); |
2136 | } | 2136 | } |
2137 | 2137 | ||
2138 | agg->bitmap = bitmap; | 2138 | agg->bitmap = bitmap; |
diff --git a/drivers/net/wireless/iwlwifi/iwl-5000.c b/drivers/net/wireless/iwlwifi/iwl-5000.c index f91c54b5ff53..076d3560302b 100644 --- a/drivers/net/wireless/iwlwifi/iwl-5000.c +++ b/drivers/net/wireless/iwlwifi/iwl-5000.c | |||
@@ -1228,9 +1228,9 @@ static int iwl5000_tx_status_reply_tx(struct iwl_priv *priv, | |||
1228 | bitmap = bitmap << sh; | 1228 | bitmap = bitmap << sh; |
1229 | sh = 0; | 1229 | sh = 0; |
1230 | } | 1230 | } |
1231 | bitmap |= (1 << sh); | 1231 | bitmap |= 1ULL << sh; |
1232 | IWL_DEBUG_TX_REPLY("start=%d bitmap=0x%x\n", | 1232 | IWL_DEBUG_TX_REPLY("start=%d bitmap=0x%llx\n", |
1233 | start, (u32)(bitmap & 0xFFFFFFFF)); | 1233 | start, (unsigned long long)bitmap); |
1234 | } | 1234 | } |
1235 | 1235 | ||
1236 | agg->bitmap = bitmap; | 1236 | agg->bitmap = bitmap; |
diff --git a/drivers/net/wireless/iwlwifi/iwl-tx.c b/drivers/net/wireless/iwlwifi/iwl-tx.c index 0182e4da8e35..39f19ebee973 100644 --- a/drivers/net/wireless/iwlwifi/iwl-tx.c +++ b/drivers/net/wireless/iwlwifi/iwl-tx.c | |||
@@ -1391,7 +1391,7 @@ static int iwl_tx_status_reply_compressed_ba(struct iwl_priv *priv, | |||
1391 | /* For each frame attempted in aggregation, | 1391 | /* For each frame attempted in aggregation, |
1392 | * update driver's record of tx frame's status. */ | 1392 | * update driver's record of tx frame's status. */ |
1393 | for (i = 0; i < agg->frame_count ; i++) { | 1393 | for (i = 0; i < agg->frame_count ; i++) { |
1394 | ack = bitmap & (1 << i); | 1394 | ack = bitmap & (1ULL << i); |
1395 | successes += !!ack; | 1395 | successes += !!ack; |
1396 | IWL_DEBUG_TX_REPLY("%s ON i=%d idx=%d raw=%d\n", | 1396 | IWL_DEBUG_TX_REPLY("%s ON i=%d idx=%d raw=%d\n", |
1397 | ack? "ACK":"NACK", i, (agg->start_idx + i) & 0xff, | 1397 | ack? "ACK":"NACK", i, (agg->start_idx + i) & 0xff, |