mac80211: fix wifi detect with 11n cards that have multiple bands
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Mon, 9 Nov 2009 00:58:39 +0000 (00:58 +0000)
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Mon, 9 Nov 2009 00:58:39 +0000 (00:58 +0000)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@18351 3c298f89-4303-0410-b956-a3cf2f4a3e73

package/mac80211/files/lib/wifi/mac80211.sh

index bae9fb6d78cda9a14743f3e984a89cf8743faa28..5af7a9a26c18f69bde7e68e4dc3ea8ac49ba1a6b 100644 (file)
@@ -293,9 +293,12 @@ detect_mac80211() {
                done
                mode_11n=""
                mode_band="g"
-               ht_cap="$(iw phy "$dev" info | grep 'HT capabilities' | cut -d: -f2)"
+               ht_cap=0
+               for cap in $(iw phy "$dev" info | grep 'HT capabilities' | cut -d: -f2); do
+                       ht_cap="$(($ht_cap | $cap))"
+               done
                ht_capab="";
-               [ -n "$ht_cap" ] && {
+               [ "$ht_cap" -gt 0 ] && {
                        mode_11n="n"
                        list="  list ht_capab"
                        [ "$(($ht_cap & 2))" -eq 1 ] && append ht_capab "$list  LDPC" "$N"