* [PATCH 08/24] rt2x00: Fix invalid RF array reading
@ 2007-07-31 18:37 Ivo van Doorn
0 siblings, 0 replies; only message in thread
From: Ivo van Doorn @ 2007-07-31 18:37 UTC (permalink / raw)
To: John W. Linville; +Cc: linux-wireless, rt2400-devel
>From 9a895eb31291e4a856a4d04f4f99ea6cf055e5ec Mon Sep 17 00:00:00 2001
From: Ivo van Doorn <IvDoorn@gmail.com>
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 <IvDoorn@gmail.com>
---
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(-)
diff --git a/drivers/net/wireless/rt2400pci.h b/drivers/net/wireless/rt2400pci.h
index 54fd789..930b2ca 100644
--- a/drivers/net/wireless/rt2400pci.h
+++ b/drivers/net/wireless/rt2400pci.h
@@ -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).
diff --git a/drivers/net/wireless/rt2500pci.h b/drivers/net/wireless/rt2500pci.h
index 49c6792..463f2c9 100644
--- a/drivers/net/wireless/rt2500pci.h
+++ b/drivers/net/wireless/rt2500pci.h
@@ -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).
diff --git a/drivers/net/wireless/rt2500usb.h b/drivers/net/wireless/rt2500usb.h
index 425c804..065c3ab 100644
--- a/drivers/net/wireless/rt2500usb.h
+++ b/drivers/net/wireless/rt2500usb.h
@@ -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).
diff --git a/drivers/net/wireless/rt2x00.h b/drivers/net/wireless/rt2x00.h
index bf80f51..8be013b 100644
--- a/drivers/net/wireless/rt2x00.h
+++ b/drivers/net/wireless/rt2x00.h
@@ -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;
}
/*
diff --git a/drivers/net/wireless/rt61pci.h b/drivers/net/wireless/rt61pci.h
index ed450e7..3e653bd 100644
--- a/drivers/net/wireless/rt61pci.h
+++ b/drivers/net/wireless/rt61pci.h
@@ -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.
diff --git a/drivers/net/wireless/rt73usb.h b/drivers/net/wireless/rt73usb.h
index 276fa3f..ee2e0b1 100644
--- a/drivers/net/wireless/rt73usb.h
+++ b/drivers/net/wireless/rt73usb.h
@@ -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.
--
1.5.2.4
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2007-07-31 18:34 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-07-31 18:37 [PATCH 08/24] rt2x00: Fix invalid RF array reading Ivo van Doorn
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).