diff options
Diffstat (limited to 'package/madwifi/files/lib')
-rwxr-xr-x | package/madwifi/files/lib/wifi/madwifi.sh | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/package/madwifi/files/lib/wifi/madwifi.sh b/package/madwifi/files/lib/wifi/madwifi.sh index 550bba7e55..52086f04bd 100755 --- a/package/madwifi/files/lib/wifi/madwifi.sh +++ b/package/madwifi/files/lib/wifi/madwifi.sh @@ -78,12 +78,13 @@ enable_atheros() { fi config_get channel "$device" channel config_get vifs "$device" vifs + config_get txpower "$device" txpower [ auto = "$channel" ] && channel=0 local first=1 for vif in $vifs; do - local start_hostapd + local start_hostapd vif_txpower nosbeacon= config_get ifname "$vif" ifname config_get enc "$vif" encryption @@ -299,8 +300,14 @@ enable_atheros() { set_wifi_up "$vif" "$ifname" # TXPower settings only work if device is up already - config_get txpwr "$vif" txpower - [ -n "$txpwr" ] && iwconfig "$ifname" txpower "${txpwr%%.*}" + # while atheros hardware theoretically is capable of per-vif (even per-packet) txpower + # adjustment it does not work with the current atheros hal/madwifi driver + + config_get vif_txpower "$vif" txpower + # use vif_txpower (from wifi-iface) instead of txpower (from wifi-device) if + # the latter doesn't exist + txpower="${txpower:-$vif_txpower}" + [ -z "$txpower" ] || iwconfig "$ifname" txpower "${txpower%%.*}" case "$mode" in ap) |