Instead of simply not scanning for the 11a channels when not supported by the
hardware, disable the channels in reg_notify. This centralizes the decision
on whether to scan 5GHz channel in one place and allows userspace to know
exactly which channels are in use.
Based on Juuso Oikarinen's idea.
Cc: Juuso Oikarinen <juuso.oikarinen@nokia.com>
Signed-off-by: Luciano Coelho <luciano.coelho@nokia.com>
Reviewed-by: Juuso Oikarinen <juuso.oikarinen@nokia.com>
}
static int wl1271_reg_notify(struct wiphy *wiphy,
- struct regulatory_request *request) {
+ struct regulatory_request *request)
+{
+ struct wl1271 *wl = wiphy_to_ieee80211_hw(wiphy)->priv;
struct ieee80211_supported_band *band;
struct ieee80211_channel *ch;
int i;
if (ch->flags & IEEE80211_CHAN_DISABLED)
continue;
+ if (!wl->enable_11a) {
+ ch->flags |= IEEE80211_CHAN_DISABLED;
+ continue;
+ }
+
if (ch->flags & IEEE80211_CHAN_RADAR)
ch->flags |= IEEE80211_CHAN_NO_IBSS |
IEEE80211_CHAN_PASSIVE_SCAN;