wlan - Don't check bgscanidle setting in net80211 for full-offload scan. * If full-offload scan is used, the NIC driver (or rather the firmware of the NIC) should take care of interrupting and continuing the background scan. So net80211 should ignore the vap->iv_bgscanidle setting then, instead the NIC driver might look at this setting and pass it on to the firmware in some way if possible. * Since full-offload scans won't be explicitly interrupted by net80211, it also doesn't really make sense to check the vap->iv_bgscanidle condition in that case, before starting a background scan. If the NIC driver advertises background scan support and full-offload scanning, the firmware should be able to execute that scan without interfering too much with our data traffic. Taken-From: FreeBSD (svn r308785)
kernel/wlan: Fix up the MAC address printing and add back __printflike()s. In the recent wlan, iwn and ath upgrades, porting this properly was hacked around by removing the __printflike()s because DragonFly has no support for %D (neither in GCC nor in kprintf()). This is wrong because even though it silences the warning, it will still not print MAC addresses correctly. So bring all that back. Also update the wlan's README.DRAGONFLY with some information about how to port this properly.
wlan/atheros - Synchronize sleep state code from FreeBSD * Synchronize Adrian Chadd's sleep state code and wlan updates. * With this commit if the wlan or ath interface is in a 'down' state, it will use full sleep mode and save power. * We get all of ATH through today but the 802_11 changes are a bit too substantial so this commit only brings in the sleep state code through today (3-May-2014). * There is a bunch of other 802_11 work that needs to be brought in but it's like 20,000 lines of patches so... not today. * Verified operational on Acer C720 chromebook. full-sleep mode saves 0.3-0.4W. Network sleep mode code is also verified to be operational but does not appear to save any power at the moment. Also verified: beacons are working properly for wakeups on packet reception.
kernel/802_11: More ratectl fixes (fixes an ath(4) panic). Set the default rate control algorithm to NONE instead of AMRR and add some missing ieee80211_ratectl_node_init()s which I had overlooked earlier. Reported-by: Johannes Hofmann <johannes.hofmann@gmx.de> Tested-by: Imre Vadasz <imre@vdsz.com>
kernel - Change time_second to time_uptime for all expiration calculations * Vet the entire kernel and change use cases for expiration calculations using time_second to use time_uptime instead. * Protects these expiration calculations from step changes in the wall time, particularly needed for route table entries. * Probably requires further variable type adjustments but the use of time_uptime instead if time_second is highly unlikely to ever overrun any demotions to int still present.