blob: 65165cf3deaac805e1adece7fd9b590fbd47fb4e [file] [log] [blame]
--- a/net/wireless/core.c
+++ b/net/wireless/core.c
@@ -496,10 +496,6 @@ use_default_name:
INIT_WORK(&rdev->mlme_unreg_wk, cfg80211_mlme_unreg_wk);
INIT_DELAYED_WORK(&rdev->dfs_update_channels_wk,
cfg80211_dfs_channels_update_work);
-#ifdef CONFIG_CFG80211_WEXT
- rdev->wiphy.wext = &cfg80211_wext_handler;
-#endif
-
device_initialize(&rdev->wiphy.dev);
rdev->wiphy.dev.class = &ieee80211_class;
rdev->wiphy.dev.platform_data = rdev;
@@ -1283,6 +1279,15 @@ static int cfg80211_netdev_notifier_call
}
wdev->netdev = dev;
#ifdef CONFIG_CFG80211_WEXT
+#ifdef CONFIG_WIRELESS_EXT
+ if (!dev->wireless_handlers)
+ dev->wireless_handlers = &cfg80211_wext_handler;
+#else
+ printk_once(KERN_WARNING "cfg80211: wext will not work because "
+ "kernel was compiled with CONFIG_WIRELESS_EXT=n. "
+ "Tools using wext interface, like iwconfig will "
+ "not work.\n");
+#endif
wdev->wext.default_key = -1;
wdev->wext.default_mgmt_key = -1;
wdev->wext.connect.auth_type = NL80211_AUTHTYPE_AUTOMATIC;