summaryrefslogtreecommitdiffstats
path: root/lib/libc
diff options
context:
space:
mode:
authorreyk <reyk@openbsd.org>2007-10-12 15:34:11 +0000
committerreyk <reyk@openbsd.org>2007-10-12 15:34:11 +0000
commit0a6c70f8acc4a52f8fa634c8b37b92c4d4736c59 (patch)
tree66e2cd6fade3d1f35a154cdf0c5a6aa60d549374 /lib/libc
parentSilence some lint(1) warnings (diff)
downloadwireguard-openbsd-0a6c70f8acc4a52f8fa634c8b37b92c4d4736c59.tar.xz
wireguard-openbsd-0a6c70f8acc4a52f8fa634c8b37b92c4d4736c59.zip
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.
Diffstat (limited to 'lib/libc')
0 files changed, 0 insertions, 0 deletions