mirror of
https://git.FreeBSD.org/src.git
synced 2024-12-28 11:57:28 +00:00
CABQ calculation changes to try and fix some weird corner cases leading
to stuck beacons. * Set the cabq readytime (ie, how long to burst for) to 50% of the total beacon interval time * fix the cabq adjustment calculation based on how the beacon offset is calculated (the SWBA/DBA time offset.) This is all still a bit magic voodoo but it does seem to have further quietened issues with missed/stuck beacons under my local testing. In any case, it better matches what the reference HAL implements. Obtained from: Qualcomm Atheros
This commit is contained in:
parent
8e787d67be
commit
49ddabc4bd
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=248670
@ -1191,10 +1191,10 @@ ar5416ResetTxQueue(struct ath_hal *ah, u_int q)
|
||||
* XXX which I gather is because of such a long
|
||||
* XXX cabq time.)
|
||||
*/
|
||||
value = (ahp->ah_beaconInterval * 70 / 100)
|
||||
- (ah->ah_config.ah_sw_beacon_response_time
|
||||
+ ah->ah_config.ah_dma_beacon_response_time)
|
||||
- ah->ah_config.ah_additional_swba_backoff;
|
||||
value = (ahp->ah_beaconInterval * 50 / 100)
|
||||
- ah->ah_config.ah_additional_swba_backoff
|
||||
- ah->ah_config.ah_sw_beacon_response_time
|
||||
+ ah->ah_config.ah_dma_beacon_response_time;
|
||||
/*
|
||||
* XXX Ensure it isn't too low - nothing lower
|
||||
* XXX than 10 TU
|
||||
|
Loading…
Reference in New Issue
Block a user