X-Git-Url: https://git.karo-electronics.de/?a=blobdiff_plain;f=net%2Fwireless%2Fchan.c;h=2f876b9ee3443b05efc54445b747e7ee7101e50d;hb=df632d3ce7eacf92ad9b642301c7b53a1d95b8d8;hp=d355f67d0cdd1ff64ac68f917c2eb8c11e8b1af2;hpb=43a60c1792b13eed49220af0e1344bf48e3a0677;p=karo-tx-linux.git diff --git a/net/wireless/chan.c b/net/wireless/chan.c index d355f67d0cdd..2f876b9ee344 100644 --- a/net/wireless/chan.c +++ b/net/wireless/chan.c @@ -105,7 +105,7 @@ cfg80211_get_chan_state(struct wireless_dev *wdev, ASSERT_WDEV_LOCK(wdev); - if (!netif_running(wdev->netdev)) + if (wdev->netdev && !netif_running(wdev->netdev)) return; switch (wdev->iftype) { @@ -143,6 +143,11 @@ cfg80211_get_chan_state(struct wireless_dev *wdev, case NL80211_IFTYPE_WDS: /* these interface types don't really have a channel */ return; + case NL80211_IFTYPE_P2P_DEVICE: + if (wdev->wiphy->features & + NL80211_FEATURE_P2P_DEVICE_NEEDS_CHANNEL) + *chanmode = CHAN_MODE_EXCLUSIVE; + return; case NL80211_IFTYPE_UNSPECIFIED: case NUM_NL80211_IFTYPES: WARN_ON(1);