[PATCH 10/15] staging: brcm80211: Remove swaps in R_REG and W_REG macros

Arend van Spriel arend at broadcom.com
Mon Aug 15 13:34:22 UTC 2011


From: Henry Ptasinski <henryp at broadcom.com>

Swapping the addresses is unnecessary, since the swaps are handled by the
underlying platform code (i.e. readb() etc. handle any necessary swapping).

Tested on Mac G5 PPC and BCM63281.

Signed-off-by: Henry Ptasinski <henryp at broadcom.com>
Reviewed-by: Arend van Spriel <arend at broadcom.com>
Tested-by: Jonas Gorski <jonas.gorski at gmail.com>
Signed-off-by: Arend van Spriel <arend at broadcom.com>
---
 drivers/staging/brcm80211/brcmsmac/types.h |   19 ++++---------------
 1 files changed, 4 insertions(+), 15 deletions(-)

diff --git a/drivers/staging/brcm80211/brcmsmac/types.h b/drivers/staging/brcm80211/brcmsmac/types.h
index c0d41cc..ad874a7 100644
--- a/drivers/staging/brcm80211/brcmsmac/types.h
+++ b/drivers/staging/brcm80211/brcmsmac/types.h
@@ -329,28 +329,17 @@ do {						\
  * location are defined in only one spot. This reduces the risk of the
  * programmer trying to use an unsupported transaction size on a register.
  *
- * For big endian operation, a byte swap has to be done. Eg, when attempting
- * to read byte address 0, byte 3 should be read. This is accomplished
- * using an xor ('^') operator.
  */
 
-#ifndef __BIG_ENDIAN
-#define SWP2(r)	(r)
-#define SWP3(r) (r)
-#else
-#define SWP2(r)	((unsigned long)(r)^2)
-#define SWP3(r)	((unsigned long)(r)^3)
-#endif /* __BIG_ENDIAN */
-
 #define R_REG(r) \
 	({ \
 		__typeof(*(r)) __osl_v; \
 		switch (sizeof(*(r))) { \
 		case sizeof(u8): \
-			__osl_v = readb((u8 *)(SWP3(r))); \
+			__osl_v = readb((u8 *)(r)); \
 			break; \
 		case sizeof(u16): \
-			__osl_v = readw((u16 *)(SWP2(r))); \
+			__osl_v = readw((u16 *)(r)); \
 			break; \
 		case sizeof(u32): \
 			__osl_v = readl((u32 *)(r)); \
@@ -362,10 +351,10 @@ do {						\
 #define W_REG(r, v) do { \
 		switch (sizeof(*(r))) { \
 		case sizeof(u8):	\
-			writeb((u8)(v), (u8 *)(SWP3(r))); \
+			writeb((u8)(v), (u8 *)(r)); \
 			break; \
 		case sizeof(u16):	\
-			writew((u16)(v), (u16 *)(SWP2(r))); \
+			writew((u16)(v), (u16 *)(r)); \
 			break; \
 		case sizeof(u32):	\
 			writel((u32)(v), (u32 *)(r)); \
-- 
1.7.4.1





More information about the devel mailing list