From: proski Date: Thu, 5 Jun 2008 07:13:41 +0000 (+0000) Subject: Reapply r3402 (ARM compile fix), it was reverted by mistake X-Git-Url: http://git.ozo.com/?a=commitdiff_plain;h=8c141cdc586fdda4f0c16936311ed686a94b778b;p=madwifi%2F.git Reapply r3402 (ARM compile fix), it was reverted by mistake This should fix compilation on little-endian ARM and possibly other platforms with little or no optimization. This closes #1783. git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3700 0192ed92-7a03-0410-a25b-9323aeb14dbd --- diff --git a/ath_hal/ah_os.h b/ath_hal/ah_os.h index 62f41d8..dc4171d 100644 --- a/ath_hal/ah_os.h +++ b/ath_hal/ah_os.h @@ -188,10 +188,6 @@ extern void *__ahdecl ath_hal_memcpy(void *, const void *, size_t); */ #if (AH_BYTE_ORDER == AH_BIG_ENDIAN) #define is_reg_le(__reg) ((0x4000 <= (__reg) && (__reg) < 0x5000)) -#else -#define is_reg_le(__reg) 1 -#endif - #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,12) #define _OS_REG_WRITE(_ah, _reg, _val) do { \ is_reg_le(_reg) ? \ @@ -213,6 +209,21 @@ extern void *__ahdecl ath_hal_memcpy(void *, const void *, size_t); readl((_ah)->ah_sh + (_reg)) : \ cpu_to_le32(readl((_ah)->ah_sh + (_reg)))) #endif /* KERNEL_VERSION(2,6,12) */ +#else /* AH_BYTE_ORDER != AH_BIG_ENDIAN */ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,12) +#define _OS_REG_WRITE(_ah, _reg, _val) do { \ + iowrite32((_val), (_ah)->ah_sh + (_reg)); \ + } while (0) +#define _OS_REG_READ(_ah, _reg) \ + ioread32((_ah)->ah_sh + (_reg)) +#else +#define _OS_REG_WRITE(_ah, _reg, _val) do { \ + writel((_val), (_ah)->ah_sh + (_reg)); \ + } while (0) +#define _OS_REG_READ(_ah, _reg) \ + readl((_ah)->ah_sh + (_reg)) +#endif /* KERNEL_VERSION(2,6,12) */ +#endif /* AH_BYTE_ORDER != AH_BIG_ENDIAN */ #define HAL_DEBUG_OFF 0 /* Show register accesses */