X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/1d3c1135c3b2ae0c9b6e28dce78fd3e6b1a4d5a9..525e22f2304417c05fd7fa26b443d4e4f7a3286f:/package/mac80211/patches/410-ath9k_allow_adhoc_and_ap.patch diff --git a/package/mac80211/patches/410-ath9k_allow_adhoc_and_ap.patch b/package/mac80211/patches/410-ath9k_allow_adhoc_and_ap.patch index b03a0661c..fdff5dcb9 100644 --- a/package/mac80211/patches/410-ath9k_allow_adhoc_and_ap.patch +++ b/package/mac80211/patches/410-ath9k_allow_adhoc_and_ap.patch @@ -1,11 +1,12 @@ --- a/drivers/net/wireless/ath/ath9k/main.c +++ b/drivers/net/wireless/ath/ath9k/main.c -@@ -1483,14 +1483,6 @@ static int ath9k_add_interface(struct ie +@@ -1495,15 +1495,6 @@ static int ath9k_add_interface(struct ie } } -- if ((vif->type == NL80211_IFTYPE_ADHOC) && -- sc->nvifs > 0) { +- if ((ah->opmode == NL80211_IFTYPE_ADHOC) || +- ((vif->type == NL80211_IFTYPE_ADHOC) && +- sc->nvifs > 0)) { - ath_err(common, "Cannot create ADHOC interface when other" - " interfaces already exist.\n"); - ret = -EINVAL; @@ -15,3 +16,19 @@ ath_dbg(common, ATH_DBG_CONFIG, "Attach a VIF of type: %d\n", vif->type); +@@ -1529,15 +1520,6 @@ static int ath9k_change_interface(struct + mutex_lock(&sc->mutex); + ath9k_ps_wakeup(sc); + +- /* See if new interface type is valid. */ +- if ((new_type == NL80211_IFTYPE_ADHOC) && +- (sc->nvifs > 1)) { +- ath_err(common, "When using ADHOC, it must be the only" +- " interface.\n"); +- ret = -EINVAL; +- goto out; +- } +- + if (ath9k_uses_beacons(new_type) && + !ath9k_uses_beacons(vif->type)) { + if (sc->nbcnvifs >= ATH_BCBUF) {