Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 22 Feb 2013 02:11:44 -0800
From:      Adrian Chadd <adrian@freebsd.org>
To:        freebsd-wireless@freebsd.org
Subject:   [rft] ath - tx/rx chainmask tidyup in preparation for AR9380 support
Message-ID:  <CAJ-VmomKOhBo%2BKCw99YFBWBVUUK5bV6whvcNkfoj8Ej5pPEgjg@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
Hi,

As part of the AR9380 support that's hopefully appearing soon, I
finally found the motivation to tidy up how the chainmask handling is
done.

The summary:

* introduce a new HAL method that changes the currently configured
TX/RX chainmask;
* leave the TX chainmask as 1 for non-HT and the hardware default for HT;
* leave the RX chainmask as the hardware default for HT;
* push the chainmask decision making into the driver - and have it
done before each call to ath_hal_reset()

TODO:

* upon a channel reset, I need to absolutely make sure that anything
that's in the hardware queue gets dequeued and requeued with whatever
the new rate control information is. This includes channel width
changes and chainmask changes.

I'd appreciate it if people running ath(4) on -HEAD would try this
out. It shouldn't break non-11n NICs but I should test those out too.

http://people.freebsd.org/~adrian/ath/20130222-ath-chainmask-ctrl-1.diff

Thanks,


Adrian



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJ-VmomKOhBo%2BKCw99YFBWBVUUK5bV6whvcNkfoj8Ej5pPEgjg>