rt2x00: Filter ACK_CTS based on FIF_CONTROL
The ACK_CTS frame is a control frame, this means dropping the frame depends on the FIF_CONTROL flag for filtering. This also fixes an obvious typo in register definition. Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
Родитель
baf26a7eae
Коммит
e542239f63
|
@ -2325,8 +2325,9 @@ static void rt61pci_configure_filter(struct ieee80211_hw *hw,
|
|||
rt2x00_set_field32(®, TXRX_CSR0_DROP_VERSION_ERROR, 1);
|
||||
rt2x00_set_field32(®, TXRX_CSR0_DROP_MULTICAST,
|
||||
!(*total_flags & FIF_ALLMULTI));
|
||||
rt2x00_set_field32(®, TXRX_CSR0_DROP_BORADCAST, 0);
|
||||
rt2x00_set_field32(®, TXRX_CSR0_DROP_ACK_CTS, 1);
|
||||
rt2x00_set_field32(®, TXRX_CSR0_DROP_BROADCAST, 0);
|
||||
rt2x00_set_field32(®, TXRX_CSR0_DROP_ACK_CTS,
|
||||
!(*total_flags & FIF_CONTROL));
|
||||
rt2x00pci_register_write(rt2x00dev, TXRX_CSR0, reg);
|
||||
}
|
||||
|
||||
|
|
|
@ -405,7 +405,7 @@ struct hw_pairwise_ta_entry {
|
|||
#define TXRX_CSR0_DROP_TO_DS FIELD32(0x00200000)
|
||||
#define TXRX_CSR0_DROP_VERSION_ERROR FIELD32(0x00400000)
|
||||
#define TXRX_CSR0_DROP_MULTICAST FIELD32(0x00800000)
|
||||
#define TXRX_CSR0_DROP_BORADCAST FIELD32(0x01000000)
|
||||
#define TXRX_CSR0_DROP_BROADCAST FIELD32(0x01000000)
|
||||
#define TXRX_CSR0_DROP_ACK_CTS FIELD32(0x02000000)
|
||||
#define TXRX_CSR0_TX_WITHOUT_WAITING FIELD32(0x04000000)
|
||||
|
||||
|
|
|
@ -1929,7 +1929,8 @@ static void rt73usb_configure_filter(struct ieee80211_hw *hw,
|
|||
rt2x00_set_field32(®, TXRX_CSR0_DROP_MULTICAST,
|
||||
!(*total_flags & FIF_ALLMULTI));
|
||||
rt2x00_set_field32(®, TXRX_CSR0_DROP_BROADCAST, 0);
|
||||
rt2x00_set_field32(®, TXRX_CSR0_DROP_ACK_CTS, 1);
|
||||
rt2x00_set_field32(®, TXRX_CSR0_DROP_ACK_CTS,
|
||||
!(*total_flags & FIF_CONTROL));
|
||||
rt73usb_register_write(rt2x00dev, TXRX_CSR0, reg);
|
||||
}
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче