Add ath_hal_setbeacontimers() to the AR9300 HAL.
authoradrian <adrian@FreeBSD.org>
Sun, 15 Feb 2015 19:56:31 +0000 (19:56 +0000)
committeradrian <adrian@FreeBSD.org>
Sun, 15 Feb 2015 19:56:31 +0000 (19:56 +0000)
commit90e8bc75a3dd74ca3057c4ad783aca20420937e0
treea031984850f178bbef111e07d80a9e1188c227fd
parent8f5603742f310f7d973f480187b5e3d6870a40cf
Add ath_hal_setbeacontimers() to the AR9300 HAL.

This is a custom FreeBSD HAL method that is used by the TDMA code
to program the beacon timers directly without any guesswork/assumptions
by the HAL.

This brings up basic TDMA master/slave support on the AR9380 HAL,
however there are other issues preventing it from being stable.
(I'm seeing beacon interval instability, which may be due to
busy 2GHz air, but also may be due to some HAL configuration
issues with regards to ANI, or hardware timer programming, etc.)

Tested:

* AR9331 (Carambola2), STA, AP, adhoc and TDMA master mode.
sys/contrib/dev/ath/ath_hal/ar9300/ar9300_beacon.c
sys/contrib/dev/ath/ath_hal/ar9300/ar9300_freebsd.c