Hi! People who had problems with unsupported Atheros devices (single chip variants found in recent laptops, macbooks, etc.) should get the latest code from CVS and test it... I was able to make 11b mode work on at least two different new-age chipsets:
ath0 at pci2 dev 0 function 0 "Atheros AR5212 (IBM MiniPCI)" rev 0x01: apic 1 int 17 (irq 11) ath0: ARxxxx 10.3 phy 6.1 rf 10.2, WOR2W, address 00:16:cf:ab:4c:97 ath1 at cardbus0 dev 0 function 0 "Atheros Communications, Inc., AR5001-0000-0000, Wireless LAN Reference Card": irq 10 ath1: AR5413 10.5 phy 6.1 rf 6.3, WOR0W, address 00:12:bf:0e:7d:36 Thanks again to Dave Del Debbio and David Menzel for donating me PCI Express MiniCards for testing and development. But there are still some known problems: - The ath0 device sometimes runs into a hardware-locking RX overrun bug. The only way to recover the device is to _cold_ start the computer. Use "ifconfig ath0 debug" and look for "rx FIFO overrun; resetting". - The devices sometimes need a long time to calibrate, just associate and wait some seconds before trying your first ping. - The offset is not alway right, I'm trying to find a better way to set the channels correctly. See the attached commit message for more info. - more...? Hacked and tested in the Melbourne Museum during the AUUG 2007... reyk ----- Forwarded message from Reyk Floeter <[EMAIL PROTECTED]> ----- Date: Fri, 12 Oct 2007 09:34:12 -0600 (MDT) From: Reyk Floeter <[EMAIL PROTECTED]> To: [EMAIL PROTECTED] Subject: CVS: cvs.openbsd.org: src X-Loop: [EMAIL PROTECTED] Precedence: list CVSROOT: /cvs Module name: src Changes by: [EMAIL PROTECTED] 2007/10/12 09:34:11 Modified files: sys/dev/ic : ar5xxx.c ar5xxx.h Log message: The newer single chip Atheros wireless chipsets like the AR5424, AR2423 etc. are mostly compatible to the AR5212 but use a different algorithm to set the 2GHz RF channel, that's why they didn't work in OpenBSD. I figured out that the channels were set with an offset, setting channel 11 in the driver caused the hardware to set channel 5 etc. Because I didn't figure out the pattern to fix the algoritm yet, I fixed it in a workaroundish way by defining a small "table" with offsets for the 11b channels to get the right results. For example, if we want to set channel 11 (2462MHz), we add an offset of -30MHz, and feed the result (2432MHz ^= channel 5) into the unmodified AR5212/AR5112 RF setup function. Long description for a commit message, but it needed some time to figure it out. It is still not perfect, needs some more work, and it doesn't work in all cases; but it allows to use newer chipsets in 11b mode restricted to 1 or to 2Mbit/s. 11a mode seems to work without problems so far. ----- End forwarded message -----