rt2x00: uncomment get_tsf
A message that is not in the archive (sent off-list or not yet received): [email protected]
PATCH 1/3 rt2x00: uncomment get_tsf
The atomic requirement for get_tsf() has been removed by mac80211. This means the USB drivers can add support for the callback function again.
Signed-off-by Ivo van Doorn <[email protected]>
--- drivers/net/wireless/rt2x00/rt73usb.c | 10 ---------- 1 files changed, 0 insertions(+), 10 deletions(-)
drivers/net/wireless/rt2x00/rt73usb.c +0 -10
@@ -2241,13 +2241,6 @@ static int rt73usb_conf_tx(struct ieee80211_hw *hw, u16 queue_idx,return 0 ; } -#if 0 -/* -* Mac80211 demands get_tsf must be atomic. -* This is not possible for rt73usb since all register access -* functions require sleeping. Untill mac80211 no longer needs -* get_tsf to be atomic, this function should be disabled. -*/ static u64 rt73usb_get_tsf (struct ieee80211_hw *hw) {struct rt2x00_dev *rt2x00dev = hw->priv;
@@ -2261,9 +2254,6 @@ static u64 rt73usb_get_tsf(struct ieee80211_hw *hw)return tsf; } -#else -#define rt73usb_get_tsf NULL -#endif static const struct ieee80211_ops rt73usb_mac80211_ops = { .tx = rt2x00mac_tx,
Signature · 1 line
1.5.6.1
PATCH 2/3 rt2x00: Remove check for rf word 0
The only way rf_write() can be called with word 0 is when the user sends the wrong word index through debugfs. However the values which are send through debugfs are validated using the RF_BASE and RF_SIZE macro values, the most logical solution is to increase RF_BASE with 4 and decrease RF_SIZE with 4 (RF_SIZE has always been 1 word too big)
Signed-off-by Ivo van Doorn <[email protected]>
--- drivers/net/wireless/rt2x00/rt2400pci.c | 3 --- drivers/net/wireless/rt2x00/rt2400pci.h | 4 ++-- drivers/net/wireless/rt2x00/rt2500pci.c | 3 --- drivers/net/wireless/rt2x00/rt2500pci.h | 4 ++-- drivers/net/wireless/rt2x00/rt2500usb.c | 3 --- drivers/net/wireless/rt2x00/rt2500usb.h | 4 ++-- drivers/net/wireless/rt2x00/rt61pci.c | 3 --- drivers/net/wireless/rt2x00/rt61pci.h | 4 ++-- drivers/net/wireless/rt2x00/rt73usb.c | 3 --- drivers/net/wireless/rt2x00/rt73usb.h | 4 ++-- 10 files changed, 10 insertions(+), 25 deletions(-)
drivers/net/wireless/rt2x00/rt2400pci.c +0 -3
@@ -114,9 +114,6 @@ static void rt2400pci_rf_write(struct rt2x00_dev *rt2x00dev, {u32 reg; -if (!word) -return ; -mutex_lock (&rt2x00dev->csr_mutex);/*
drivers/net/wireless/rt2x00/rt2400pci.h +2 -2
@@ -48,8 +48,8 @@#define EEPROM_SIZE 0x0100#define BBP_BASE 0x0000#define BBP_SIZE 0x0020 -#define RF_BASE 0x0000 -#define RF_SIZE 0x0010 +#define RF_BASE 0x0004 +#define RF_SIZE 0x000c/* * Number of TX queues.
drivers/net/wireless/rt2x00/rt2500pci.c +0 -3
@@ -114,9 +114,6 @@ static void rt2500pci_rf_write(struct rt2x00_dev *rt2x00dev, {u32 reg; -if (!word) -return ; -mutex_lock (&rt2x00dev->csr_mutex);/*
drivers/net/wireless/rt2x00/rt2500pci.h +2 -2
@@ -59,8 +59,8 @@#define EEPROM_SIZE 0x0200#define BBP_BASE 0x0000#define BBP_SIZE 0x0040 -#define RF_BASE 0x0000 -#define RF_SIZE 0x0014 +#define RF_BASE 0x0004 +#define RF_SIZE 0x0010/* * Number of TX queues.
drivers/net/wireless/rt2x00/rt2500usb.c +0 -3
@@ -204,9 +204,6 @@ static void rt2500usb_rf_write(struct rt2x00_dev *rt2x00dev, {u16 reg; -if (!word) -return ; -mutex_lock (&rt2x00dev->csr_mutex);/*
drivers/net/wireless/rt2x00/rt2500usb.h +2 -2
@@ -59,8 +59,8 @@#define EEPROM_SIZE 0x006a#define BBP_BASE 0x0000#define BBP_SIZE 0x0060 -#define RF_BASE 0x0000 -#define RF_SIZE 0x0014 +#define RF_BASE 0x0004 +#define RF_SIZE 0x0010/* * Number of TX queues.
drivers/net/wireless/rt2x00/rt61pci.c +0 -3
@@ -123,9 +123,6 @@ static void rt61pci_rf_write(struct rt2x00_dev *rt2x00dev, {u32 reg; -if (!word) -return ; -mutex_lock (&rt2x00dev->csr_mutex);/*
drivers/net/wireless/rt2x00/rt61pci.h +2 -2
@@ -50,8 +50,8 @@#define EEPROM_SIZE 0x0100#define BBP_BASE 0x0000#define BBP_SIZE 0x0080 -#define RF_BASE 0x0000 -#define RF_SIZE 0x0014 +#define RF_BASE 0x0004 +#define RF_SIZE 0x0010/* * Number of TX queues.
drivers/net/wireless/rt2x00/rt73usb.c +0 -3
@@ -122,9 +122,6 @@ static void rt73usb_rf_write(struct rt2x00_dev *rt2x00dev, {u32 reg; -if (!word) -return ; -mutex_lock (&rt2x00dev->csr_mutex);/*
drivers/net/wireless/rt2x00/rt73usb.h +2 -2
@@ -50,8 +50,8 @@#define EEPROM_SIZE 0x0100#define BBP_BASE 0x0000#define BBP_SIZE 0x0080 -#define RF_BASE 0x0000 -#define RF_SIZE 0x0014 +#define RF_BASE 0x0004 +#define RF_SIZE 0x0010/* * Number of TX queues.
Signature · 1 line
1.5.6.1
PATCH 3/3 rt2x00: Add various new USB IDs for rt73usb
Signed-off-by Ivo van Doorn <[email protected]>
--- drivers/net/wireless/rt2x00/rt73usb.c | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-)
drivers/net/wireless/rt2x00/rt73usb.c +6 -0
@@ -2342,6 +2342,9 @@ static const struct rt2x00_ops rt73usb_ops = {static struct usb_device_id rt73usb_device_table[] = {/* AboCom */ {USB_DEVICE (0x07b8 ,0xb21d ),USB_DEVICE_DATA (&rt73usb_ops) }, +/* Amigo */ + {USB_DEVICE (0x148f ,0x9021 ),USB_DEVICE_DATA (&rt73usb_ops) }, + {USB_DEVICE (0x0eb0 ,0x9021 ),USB_DEVICE_DATA (&rt73usb_ops) },/* Askey */ {USB_DEVICE (0x1690 ,0x0722 ),USB_DEVICE_DATA (&rt73usb_ops) },/* ASUS */
@@ -2389,6 +2392,7 @@ static struct usb_device_id rt73usb_device_table[] = { { USB_DEVICE(0x0db0, 0xa861), USB_DEVICE_DATA(&rt73usb_ops) }, { USB_DEVICE(0x0db0, 0xa874), USB_DEVICE_DATA(&rt73usb_ops) },/* Ralink */ + { USB_DEVICE(0x04bb, 0x093d), USB_DEVICE_DATA(&rt73usb_ops) }, { USB_DEVICE(0x148f, 0x2573), USB_DEVICE_DATA(&rt73usb_ops) }, { USB_DEVICE(0x148f, 0x2671), USB_DEVICE_DATA(&rt73usb_ops) },/* Qcom */
@@ -2405,6 +2409,8 @@ static struct usb_device_id rt73usb_device_table[] = {/* Planex */ { USB_DEVICE(0x2019, 0xab01), USB_DEVICE_DATA(&rt73usb_ops) }, { USB_DEVICE(0x2019, 0xab50), USB_DEVICE_DATA(&rt73usb_ops) }, +/* ZyXEL */ + { USB_DEVICE(0x0586, 0x3415), USB_DEVICE_DATA(&rt73usb_ops) }, { 0, } };
Signature · 1 line
1.5.6.1