mirror of
https://github.com/proski/madwifi
synced 2024-11-24 23:40:00 +03:00
Revert r2852 as it uses the incorrect method to access IO memory and breaks on many archs.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@2854 0192ed92-7a03-0410-a25b-9323aeb14dbd
This commit is contained in:
parent
035de65235
commit
a068895300
@ -172,25 +172,44 @@ extern u_int32_t __ahdecl ath_hal_getuptime(struct ath_hal *);
|
|||||||
* never byte-swapped by PCI chipsets or bridges, but always
|
* never byte-swapped by PCI chipsets or bridges, but always
|
||||||
* written directly (i.e. the format defined by the manufacturer).
|
* written directly (i.e. the format defined by the manufacturer).
|
||||||
*/
|
*/
|
||||||
#if (AH_BYTE_ORDER == AH_BIG_ENDIAN)
|
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,12)
|
||||||
|
# if (AH_BYTE_ORDER == AH_BIG_ENDIAN)
|
||||||
#define _OS_REG_WRITE(_ah, _reg, _val) do { \
|
#define _OS_REG_WRITE(_ah, _reg, _val) do { \
|
||||||
(0x4000 <= (_reg) && (_reg) < 0x5000) ? \
|
(0x4000 <= (_reg) && (_reg) < 0x5000) ? \
|
||||||
writel((_val), (_ah)->ah_sh + (_reg)) : \
|
iowrite32((_val), (_ah)->ah_sh + (_reg)) : \
|
||||||
({__raw_writel((_val), (_ah)->ah_sh + (_reg)); \
|
iowrite32be((_val), (_ah)->ah_sh + (_reg)); \
|
||||||
mb(); }); \
|
} while (0)
|
||||||
} while (0)
|
#define _OS_REG_READ(_ah, _reg) \
|
||||||
|
((0x4000 <= (_reg) && (_reg) < 0x5000) ? \
|
||||||
|
ioread32((_ah)->ah_sh + (_reg)) : \
|
||||||
|
ioread32be((_ah)->ah_sh + (_reg)));
|
||||||
|
# else /* AH_LITTLE_ENDIAN */
|
||||||
|
#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))
|
||||||
|
|
||||||
|
# endif /* AH_BYTE_ORDER */
|
||||||
|
#else
|
||||||
|
# if (AH_BYTE_ORDER == AH_BIG_ENDIAN)
|
||||||
|
#define _OS_REG_WRITE(_ah, _reg, _val) do { \
|
||||||
|
writel((0x4000 <= (_reg) && (_reg) < 0x5000) ? \
|
||||||
|
(_val) : cpu_to_le32(_val), \
|
||||||
|
(_ah)->ah_sh + (_reg)); \
|
||||||
|
} while (0)
|
||||||
#define _OS_REG_READ(_ah, _reg) \
|
#define _OS_REG_READ(_ah, _reg) \
|
||||||
((0x4000 <= (_reg) && (_reg) < 0x5000) ? \
|
((0x4000 <= (_reg) && (_reg) < 0x5000) ? \
|
||||||
readl((_ah)->ah_sh + (_reg)) : \
|
readl((_ah)->ah_sh + (_reg)) : \
|
||||||
({unsigned long __v = __raw_readl((_ah)->ah_sh + \
|
cpu_to_le32(readl((_ah)->ah_sh + (_reg))))
|
||||||
(_reg)); mb(); __v; }))
|
# else /* AH_LITTLE_ENDIAN */
|
||||||
#else /* AH_LITTLE_ENDIAN */
|
|
||||||
#define _OS_REG_WRITE(_ah, _reg, _val) do { \
|
#define _OS_REG_WRITE(_ah, _reg, _val) do { \
|
||||||
writel(_val, (_ah)->ah_sh + (_reg)); \
|
writel(_val, (_ah)->ah_sh + (_reg)); \
|
||||||
} while (0)
|
} while (0)
|
||||||
#define _OS_REG_READ(_ah, _reg) \
|
#define _OS_REG_READ(_ah, _reg) \
|
||||||
readl((_ah)->ah_sh + (_reg))
|
readl((_ah)->ah_sh + (_reg))
|
||||||
#endif /* AH_BYTE_ORDER */
|
# endif /* AH_BYTE_ORDER */
|
||||||
|
#endif /* KERNEL_VERSON(2,6,12) */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
The functions in this section are not intended to be invoked by MadWifi driver
|
The functions in this section are not intended to be invoked by MadWifi driver
|
||||||
|
Loading…
Reference in New Issue
Block a user