| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
| |
Also fix support for AR7010 devices, fix mode hostap by properly
managing the firmware station table, and fix Tx rate reporting.
Tested on AR7010 and AR9271 devices.
ok kevlo@
|
|
|
|
|
| |
Errors will result in nice clean panic messages so we know what's wrong.
Reviewed by dhill visa natano jsg.
|
|
|
|
|
|
|
|
|
|
|
| |
The heavy lifting was done by damien@ years ago. I didn't even have
to figure out what the hardware expects, the code was already there.
This driver now supports MCS 0-15 in client and hostap mode.
No Tx aggregation and no 40 MHz channels yet.
tested by vgross@, bmercer@, tb@, jmc@, Vadim Vygonets, Peter Kay
ok bmercer@ tb@ phessler@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The previous code was racy and could dead-lock the USB task thread when a
firmware command timed out (e.g. because the user pulled out the device).
Handle this condition by marking the device as dying as soon as the interrupt
handler gets an IOERROR and making sleeping firmware command threads check
for a dying device when waking up.
Ensure that no thread will try to send a command before the previous one
has completed. There is only a single xfer data structure for firmware
command transfers and reusing an in-flight xfer will give the USB stack
curly toenails ("xfer not free").
Allow up to ATHN_USB_HOST_CMD_RING_COUNT firmware commands to be enqueued
on the command ring, rather than just one. Use standard usdb_wait_task()
when waiting for command ring completion instead of hand-rolled tsleep()s.
discussed with and ok mpi@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The driver artificially limited the number of slots for nodes in its net80211
node cache to 8, the rationale being the device firmware can only handle 8
associated nodes at a time. But that's not a good reason to only cache 8 of
potentially many APs in the area.
Instead of crippling upper layer data structures, impose the limit locally
by raising an error if more than 8 nodes are trying to associate (which can
only happen in hostap mode, and hostap mode seems to be broken anyway).
This matches what Linux ath9k does.
Also, use a USB-specific scan timeout callback to we can do USB refcounting
while scanning.
ok mpi@
|
|
|
|
|
|
|
|
|
| |
definitions instead. We don't change usb.h for now to stay compatible
with userland.
Tested by mpi@ on macppc and myself on i386.
ok mpi@
|
|
|
|
| |
can prevent calling athn_detach if it wasn't; suggestion and ok stsp
|
| |
|
|
this adds preliminary support for the Atheros AR9271 chipset and
probably the AR9280+AR7010 and AR9287+AR7010 too though those were
not tested.
scanning still takes a very long time (~1 sec per channel) but
otherwise, operation in STA mode seems stable.
will implement fast channel change soon.
committed over the Ubiquiti WifiStation EXT (AR9271) on i386 with WPA.
requires firmware (see man page for details)
ok deraadt@ (who checked the .h files)
|