Re: [Madwifi-users] madwifi-users@lists.sourceforge.net
Status: Beta
Brought to you by:
otaku
From: Mark R. <mr...@ma...> - 2004-06-28 20:02:44
|
it is kernel changes, and NOT madwifi changes, that are causing the issue. an older version of the -uc* kernel would work with any of the versions of Madwifi you've listed (and have, I'm sure :). all the pieces needed to figure this out have been posted on the list, and *should* be in the archives somewhere. but, just in case that part of the archive is unreachable/lost, here's a patch that will/should apply to any version of the WPA branch since Sam turned on REGOPS for the xscale-be hal target. -mark diff -bBpruN madwifi/hal/linux/ah_osdep.c=20 madwifi-new/hal/linux/ah_osdep.c --- madwifi/hal/linux/ah_osdep.c 2004-05-15 15:26:25.000000000 = -0700 +++ madwifi-new/hal/linux/ah_osdep.c 2004-05-18 16:28:39.000000000 = -0700 @@ -153,12 +153,14 @@ ath_hal_reg_write(struct ath_hal *ah, u_ { #ifdef AH_DEBUG if (ath_hal_debug > 1) - ath_hal_printf(ah, "WRITE 0x%x <=3D 0x%x\n", reg, val); + ath_hal_printf(ah, "WRITE 0x%x <=3D 0x%x\n", reg, + (reg >=3D 0x4000 && reg < = 0x5000)?val:__bswap32(val)); #endif - if (reg >=3D 0x4000 && reg < 0x5000) - *((volatile u_int32_t *)(ah->ah_sh + reg)) =3D = __bswap32(val); - else - *((volatile u_int32_t *)(ah->ah_sh + reg)) =3D val; + if (!(reg >=3D 0x4000 && reg < 0x5000)) { + writel(__bswap32(val), (unsigned long)(ah->ah_sh + = reg)); + } else { + writel(val, (unsigned long)(ah->ah_sh + reg)); + } } u_int32_t __ahdecl @@ -166,8 +169,9 @@ ath_hal_reg_read(struct ath_hal *ah, u_i { u_int32_t val; - val =3D *((volatile u_int32_t *)(ah->ah_sh + reg)); - if (reg >=3D 0x4000 && reg < 0x5000) + val =3D readl((unsigned long)(ah->ah_sh + reg)); + + if (!(reg >=3D 0x4000 && reg < 0x5000)) val =3D __bswap32(val); #ifdef AH_DEBUG if (ath_hal_debug > 1) On Jun 28, 2004, at 8:25 AM, Anthony Tzouris wrote: > I also using SnapGear Linux version 3.1.1 with the Intel XScale IXP425=20= > processor with the Atheros 5212 mini-PCI A/B/G card 0168:0013.=A0 Is=20= > there more information available in making this work? > > I have tried CVS 06-23-2004, 04-23-2004, 05-15-2004 module checkouts=20= > and all have the same problem described below when I 'insmod=20 > ath_pci.o'.=A0 I was working on building the 01-12-2004 release too = but=20 > am in mid-process of setting up the environment variables since the=20 > older build has some different environment variable names.=A0 Going=20 > backward in time to make this work may not be the correct solution to=20= > my issue. > > After seeing this mailing list post below, it seems as if there=20 > already is some work being performed on this driver for the same=20 > processor target platform, distribution, and toolchain.=A0 There = appears=20 > to be some offline interchange going on.=A0 Any information would be=20= > greatly appreciated.=A0 Thanks. > > Anthony Tzouris ... <snip> ...= |