You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
openwrt/package/madwifi/patches/400-changeset_r3402.patch

36 lines
1.2 KiB
Diff

--- a/ath_hal/ah_os.h
+++ b/ath_hal/ah_os.h
@@ -194,10 +194,6 @@ extern u_int32_t __ahdecl ath_hal_getupt
*/
#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) ? \
@@ -219,6 +215,21 @@ extern u_int32_t __ahdecl ath_hal_getupt
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 */
/*
* The functions in this section are not intended to be invoked by MadWifi