aboutsummaryrefslogtreecommitdiffstats
path: root/net/wireless
diff options
context:
space:
mode:
authorMarcel Holtmann <marcel@holtmann.org>2009-10-02 01:15:28 -0400
committerDavid S. Miller <davem@davemloft.net>2009-10-05 03:43:34 -0400
commit053a93dd126f68ba37973f95f00af6045fa7c957 (patch)
tree2ecb601cf6ea7bb9c2f14649e2edcab06b7b1027 /net/wireless
parent7ffbe3fdace0bdfcdab8dc6c77506feda0871f79 (diff)
cfg80211: assign device type in netdev notifier callback
Instead of having to modify every non-mac80211 for device type assignment, do this inside the netdev notifier callback of cfg80211. So all drivers that integrate with cfg80211 will export a proper device type. Signed-off-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/wireless')
-rw-r--r--net/wireless/core.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/net/wireless/core.c b/net/wireless/core.c
index 45b2be3274db..e6f02e98e5fd 100644
--- a/net/wireless/core.c
+++ b/net/wireless/core.c
@@ -625,6 +625,10 @@ static void wdev_cleanup_work(struct work_struct *work)
625 dev_put(wdev->netdev); 625 dev_put(wdev->netdev);
626} 626}
627 627
628static struct device_type wiphy_type = {
629 .name = "wlan",
630};
631
628static int cfg80211_netdev_notifier_call(struct notifier_block * nb, 632static int cfg80211_netdev_notifier_call(struct notifier_block * nb,
629 unsigned long state, 633 unsigned long state,
630 void *ndev) 634 void *ndev)
@@ -641,6 +645,9 @@ static int cfg80211_netdev_notifier_call(struct notifier_block * nb,
641 WARN_ON(wdev->iftype == NL80211_IFTYPE_UNSPECIFIED); 645 WARN_ON(wdev->iftype == NL80211_IFTYPE_UNSPECIFIED);
642 646
643 switch (state) { 647 switch (state) {
648 case NETDEV_POST_INIT:
649 SET_NETDEV_DEVTYPE(dev, &wiphy_type);
650 break;
644 case NETDEV_REGISTER: 651 case NETDEV_REGISTER:
645 /* 652 /*
646 * NB: cannot take rdev->mtx here because this may be 653 * NB: cannot take rdev->mtx here because this may be