I've been .. fixing bwn(4) a bunch. I've fixed really badly behaved
rate control code, some TX/RX handling, and I have some descriptor
handling issues to fix. It's actually useful now, and I encourage
people to test it.

I've also added PHY-N support from Linux b43. It's GPL, so it's not
included by default. Here's what you have to do:

* add BWN_DEBUG and BWN_GPL_PHY to your kernel config
* edit sys/modules/bwn/Makefile and uncomment the PHY-N bits
* rebuild

The only NIC I've tested so far is the BCM4321, which is circa 2006.
The next NIC is the BCM4322 which is circa 2008 and requires a bit
more work.

My aim is to port the later GPL PHYs to bwn(4) so we at least have
support, even if it's GPL. It's not included in the default builds and
the PHY source is in sys/gnu/ so it doesn't clash with the BSD bits.

The BCM4321 also works in 5GHz 11a mode, so I'm now able to fix up
5GHz operation.

Here's what's outstanding:

* fix rx rssi for basically everything;
* add firmware revision 5xx support;
* fix up some busdma / contigmalloc issues with bwn;
* add the later PHYs;
* abstract the PHY code out to look like the ath_hal setup, which
means the PHY code doesn't know about the main driver, and we can load
the GPL PHY code as a module rather than recompiling things.

Once this list is done, I'll take a stab at porting over the 11n rate
bits so we can at least get basic 11n TX/RX working. That requires a
bunch of PHY work as well as a bunch of TX/RX work, so it's not going
to happen any time soon.

If anyone would like to help with the above entries then please let me know.

freebsd-wireless@freebsd.org mailing list
To unsubscribe, send any mail to "freebsd-wireless-unsubscr...@freebsd.org"

Reply via email to