openwrt/package/acx-mac80211/patches/005-pci_fixes.patch

57 lines
2.1 KiB
Diff
Raw Normal View History

--- a/acx_func.h
+++ b/acx_func.h
@@ -623,7 +623,7 @@ void acx_config_interface(struct ieee802
struct ieee80211_vif *vif,
struct ieee80211_bss_conf *info,
u32 changes);
-int acx_net_config(struct ieee80211_hw* ieee, struct ieee80211_conf *conf);
+int acx_net_config(struct ieee80211_hw* ieee, u32 changed);
int acx_net_get_tx_stats(struct ieee80211_hw* ieee, struct ieee80211_tx_queue_stats *stats);
int acx_net_conf_tx(struct ieee80211_hw* ieee, u16 queue,
const struct ieee80211_tx_queue_params *params);
--- a/common.c
+++ b/common.c
@@ -4300,9 +4300,10 @@ int acx_selectchannel(acx_device_t * ade
** Derived from mac80211 code, p54, bcm43xx_mac80211
**
*/
-int acx_net_config(struct ieee80211_hw *hw, struct ieee80211_conf *conf)
+int acx_net_config(struct ieee80211_hw *hw, u32 changed)
{
acx_device_t *adev = ieee2adev(hw);
+ struct ieee80211_conf *conf = &hw->conf;
unsigned long flags;
FN_ENTER;
--- a/pci.c
+++ b/pci.c
@@ -3105,7 +3105,7 @@ acxpci_l_tx_data(acx_device_t *adev, tx_
/* let chip do RTS/CTS handshaking before sending
* in case packet size exceeds threshold */
- if (info->flags & IEEE80211_TX_CTL_USE_RTS_CTS)
+ if (info->flags & IEEE80211_TX_RC_USE_RTS_CTS)
SET_BIT(Ctl2_8, DESC_CTL2_RTS);
else
CLEAR_BIT(Ctl2_8, DESC_CTL2_RTS);
@@ -3120,7 +3120,7 @@ acxpci_l_tx_data(acx_device_t *adev, tx_
/* put_txcr(adev, txdesc, clt, rate_cur); deprecated by mac80211 */
txdesc->total_length = cpu_to_le16(len);
- wlhdr_len = ieee80211_get_hdrlen(le16_to_cpu(wireless_header->frame_control));
+ wlhdr_len = ieee80211_hdrlen(le16_to_cpu(wireless_header->frame_control));
hostdesc2->length = cpu_to_le16(len - wlhdr_len);
/*
if (!ieeectl->do_not_encrypt && ieeectl->key_idx>= 0)
@@ -3444,8 +3444,8 @@ unsigned int acxpci_l_clean_txdesc(acx_d
/* And finally report upstream */
if (hostdesc)
{
- info->status.excessive_retries = rts_failures;
- info->status.retry_count = ack_failures;
+ //info->status.excessive_retries = rts_failures;
+ //info->status.retry_count = ack_failures;
ieee80211_tx_status(adev->ieee, hostdesc->skb);
}
/* update pointer for descr to be cleaned next */