mac80211: fix powersave setting
[openwrt.git] / package / mac80211 / files / lib / wifi / mac80211.sh
index 738c2aa..974fe5f 100644 (file)
@@ -363,7 +363,7 @@ enable_mac80211() {
                                iw phy "$phy" interface add "$ifname" type managed $wdsflag
                                config_get_bool powersave "$vif" powersave 0
                                [ "$powersave" -gt 0 ] && powersave="on" || powersave="off"
-                               iwconfig "$ifname" power "$powersave"
+                               iw "$ifname" set power_save "$powersave"
                        ;;
                esac
 
@@ -394,12 +394,6 @@ enable_mac80211() {
                        [ -n "$fixed" -a -n "$channel" ] && iw dev "$ifname" set channel "$channel"
                fi
 
-               config_get vif_txpower "$vif" txpower
-               # use vif_txpower (from wifi-iface) to override txpower (from
-               # wifi-device) if the latter doesn't exist
-               txpower="${txpower:-$vif_txpower}"
-               [ -z "$txpower" ] || iw dev "$ifname" set txpower fixed "${txpower%%.*}00"
-
                i=$(($i + 1))
        done
 
@@ -434,6 +428,12 @@ enable_mac80211() {
                [ ! "$mode" = "ap" ] || continue
                ifconfig "$ifname" up
 
+               config_get vif_txpower "$vif" txpower
+               # use vif_txpower (from wifi-iface) to override txpower (from
+               # wifi-device) if the latter doesn't exist
+               txpower="${txpower:-$vif_txpower}"
+               [ -z "$txpower" ] || iw dev "$ifname" set txpower fixed "${txpower%%.*}00"
+
                if [ ! "$mode" = "ap" ]; then
                        ifconfig "$ifname" up
                        case "$mode" in
This page took 0.020064 seconds and 4 git commands to generate.