rt2x00: Fix invalid RF array reading
PATCH 8/24 rt2x00: Fix invalid RF array reading
Quoted 1 line
From
9a895eb31291e4a856a4d04f4f99ea6cf055e5ecMon Sep 17 00:00:00 2001
From: Ivo van Doorn <[email protected]>
Date: Sat, 28 Jul 2007 01:12:39 +0200
Subject: [PATCH 08/24] rt2x00: Fix invalid RF array reading
RF registers don't have a word 0, check when this is being requested and just ignore that request. (Only possible call can come from debugfs).
Signed-off-by Ivo van Doorn <[email protected]>
--- drivers/net/wireless/rt2400pci.h | 2 +- drivers/net/wireless/rt2500pci.h | 2 +- drivers/net/wireless/rt2500usb.h | 2 +- drivers/net/wireless/rt2x00.h | 6 ++++-- drivers/net/wireless/rt61pci.h | 2 +- drivers/net/wireless/rt73usb.h | 2 +- 6 files changed, 9 insertions(+), 7 deletions(-)
drivers/net/wireless/rt2400pci.h +1 -1
@@ -48,7 +48,7 @@#define EEPROM_BASE 0x0000#define EEPROM_SIZE 0x0100#define BBP_SIZE 0x0020 -#define RF_SIZE 0x0008 +#define RF_SIZE 0x000c/* * Control/Status Registers(CSR).
drivers/net/wireless/rt2500pci.h +1 -1
@@ -59,7 +59,7 @@#define EEPROM_BASE 0x0000#define EEPROM_SIZE 0x0200#define BBP_SIZE 0x0040 -#define RF_SIZE 0x000c +#define RF_SIZE 0x0010/* * Control/Status Registers(CSR).
drivers/net/wireless/rt2500usb.h +1 -1
@@ -59,7 +59,7 @@#define EEPROM_BASE 0x0000#define EEPROM_SIZE 0x006a#define BBP_SIZE 0x0060 -#define RF_SIZE 0x000c +#define RF_SIZE 0x0010/* * Control/Status Registers(CSR).
drivers/net/wireless/rt2x00.h +4 -2
@@ -961,13 +961,15 @@ static inline struct data_ring* rt2x00_get_ring(static inline void rt2x00_rf_read (const struct rt2x00_dev *rt2x00dev,const unsigned int word,u32 *data) { - *data = rt2x00dev->rf[word -1 ]; +if (word) + *data = rt2x00dev->rf[word -1 ]; }static inline void rt2x00_rf_write (const struct rt2x00_dev *rt2x00dev,const unsigned int word,u32 data) { - rt2x00dev->rf[word] = data; +if (word) + rt2x00dev->rf[word -1 ] = data; }/*
drivers/net/wireless/rt61pci.h +1 -1
@@ -50,7 +50,7 @@#define EEPROM_BASE 0x0000#define EEPROM_SIZE 0x0100#define BBP_SIZE 0x0080 -#define RF_SIZE 0x000c +#define RF_SIZE 0x0010/* * PCI registers.
drivers/net/wireless/rt73usb.h +1 -1
@@ -50,7 +50,7 @@#define EEPROM_BASE 0x0000#define EEPROM_SIZE 0x0100#define BBP_SIZE 0x0080 -#define RF_SIZE 0x000c +#define RF_SIZE 0x0010/* * USB registers.
Signature · 1 line
1.5.2.4