summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--package/madwifi/Makefile8
-rwxr-xr-xpackage/madwifi/files/lib/wifi/madwifi.sh13
2 files changed, 14 insertions, 7 deletions
diff --git a/package/madwifi/Makefile b/package/madwifi/Makefile
index e6d13a936..943a13c21 100644
--- a/package/madwifi/Makefile
+++ b/package/madwifi/Makefile
@@ -1,5 +1,5 @@
-#
-# Copyright (C) 2006-2008 OpenWrt.org
+#
+# Copyright (C) 2006-2009 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
@@ -13,7 +13,7 @@ PKG_NAME:=madwifi
ifneq ($(CONFIG_MADWIFI_UPSTREAM),)
PKG_VERSION:=0.9.4
- PKG_RELEASE:=1
+ PKG_RELEASE:=2
PKG_SOURCE:=madwifi-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://downloads.sourceforge.net/madwifi/
@@ -26,7 +26,7 @@ else
# PKG_BRANCH:=madwifi-dfs
PKG_REV:=3314
PKG_VERSION:=r$(PKG_REV)
- PKG_RELEASE:=1
+ PKG_RELEASE:=2
PKG_SOURCE_PROTO:=svn
PKG_SOURCE_VERSION:=$(PKG_REV)
diff --git a/package/madwifi/files/lib/wifi/madwifi.sh b/package/madwifi/files/lib/wifi/madwifi.sh
index 550bba7e5..52086f04b 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)