diff options
author | 2007-10-12 15:34:11 +0000 | |
---|---|---|
committer | 2007-10-12 15:34:11 +0000 | |
commit | 0a6c70f8acc4a52f8fa634c8b37b92c4d4736c59 (patch) | |
tree | 66e2cd6fade3d1f35a154cdf0c5a6aa60d549374 /lib/libc | |
parent | Silence some lint(1) warnings (diff) | |
download | wireguard-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