From: jow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Date: Sat, 13 Aug 2011 22:55:59 +0000 (+0000)
Subject: [package] mac80211: use first available channel from current phy if channel is set... 
X-Git-Url: https://git.rohieb.name/openwrt.git/commitdiff_plain/de43975f39838905396f5578ee5ae1c4e197f879

[package] mac80211: use first available channel from current phy if channel is set to "auto"


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@27976 3c298f89-4303-0410-b956-a3cf2f4a3e73
---

diff --git a/package/mac80211/files/lib/wifi/mac80211.sh b/package/mac80211/files/lib/wifi/mac80211.sh
index dbf13b810..86ec75cec 100644
--- a/package/mac80211/files/lib/wifi/mac80211.sh
+++ b/package/mac80211/files/lib/wifi/mac80211.sh
@@ -17,7 +17,13 @@ mac80211_hostapd_setup_base() {
 	config_get basic_rate_list "$device" basic_rate
 	config_get_bool noscan "$device" noscan
 	[ -n "$channel" -a -z "$hwmode" ] && wifi_fixup_hwmode "$device"
-	[ "$channel" = auto ] && channel=
+
+	[ "$channel" = auto ] && {
+		channel=$(iw phy "$phy" info | \
+			sed -ne '/MHz/ { /disabled\|passive\|radar/d; s/.*\[//; s/\].*//; p; q }')
+		config_set "$device" channel "$channel"
+	}
+
 	[ -n "$hwmode" ] && {
 		config_get hwmode_11n "$device" hwmode_11n
 		[ -n "$hwmode_11n" ] && {