Lines Matching refs:wdev
1113 void cfg80211_upload_connect_keys(struct wireless_dev *wdev) in cfg80211_upload_connect_keys() argument
1115 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_upload_connect_keys()
1116 struct net_device *dev = wdev->netdev; in cfg80211_upload_connect_keys()
1119 if (!wdev->connect_keys) in cfg80211_upload_connect_keys()
1123 if (!wdev->connect_keys->params[i].cipher) in cfg80211_upload_connect_keys()
1126 &wdev->connect_keys->params[i])) { in cfg80211_upload_connect_keys()
1130 if (wdev->connect_keys->def == i && in cfg80211_upload_connect_keys()
1137 kfree_sensitive(wdev->connect_keys); in cfg80211_upload_connect_keys()
1138 wdev->connect_keys = NULL; in cfg80211_upload_connect_keys()
1141 void cfg80211_process_wdev_events(struct wireless_dev *wdev) in cfg80211_process_wdev_events() argument
1146 spin_lock_irqsave(&wdev->event_lock, flags); in cfg80211_process_wdev_events()
1147 while (!list_empty(&wdev->event_list)) { in cfg80211_process_wdev_events()
1148 ev = list_first_entry(&wdev->event_list, in cfg80211_process_wdev_events()
1151 spin_unlock_irqrestore(&wdev->event_lock, flags); in cfg80211_process_wdev_events()
1156 wdev->netdev, in cfg80211_process_wdev_events()
1161 __cfg80211_roamed(wdev, &ev->rm); in cfg80211_process_wdev_events()
1164 __cfg80211_disconnected(wdev->netdev, in cfg80211_process_wdev_events()
1170 __cfg80211_ibss_joined(wdev->netdev, ev->ij.bssid, in cfg80211_process_wdev_events()
1174 cfg80211_leave(wiphy_to_rdev(wdev->wiphy), wdev); in cfg80211_process_wdev_events()
1177 __cfg80211_port_authorized(wdev, ev->pa.peer_addr, in cfg80211_process_wdev_events()
1185 spin_lock_irqsave(&wdev->event_lock, flags); in cfg80211_process_wdev_events()
1187 spin_unlock_irqrestore(&wdev->event_lock, flags); in cfg80211_process_wdev_events()
1192 struct wireless_dev *wdev; in cfg80211_process_rdev_events() local
1196 list_for_each_entry(wdev, &rdev->wiphy.wdev_list, list) in cfg80211_process_rdev_events()
1197 cfg80211_process_wdev_events(wdev); in cfg80211_process_rdev_events()
2340 static int cfg80211_wdev_bi(struct wireless_dev *wdev) in cfg80211_wdev_bi() argument
2342 switch (wdev->iftype) { in cfg80211_wdev_bi()
2345 WARN_ON(wdev->valid_links); in cfg80211_wdev_bi()
2346 return wdev->links[0].ap.beacon_interval; in cfg80211_wdev_bi()
2348 return wdev->u.mesh.beacon_interval; in cfg80211_wdev_bi()
2350 return wdev->u.ibss.beacon_interval; in cfg80211_wdev_bi()
2364 struct wireless_dev *wdev; in cfg80211_calculate_bi_data() local
2370 list_for_each_entry(wdev, &wiphy->wdev_list, list) { in cfg80211_calculate_bi_data()
2374 if (wdev->valid_links) in cfg80211_calculate_bi_data()
2379 !(rdev_get_radio_mask(rdev, wdev->netdev) & BIT(radio_idx))) in cfg80211_calculate_bi_data()
2382 wdev_bi = cfg80211_wdev_bi(wdev); in cfg80211_calculate_bi_data()
2646 struct wireless_dev *wdev; in cfg80211_get_station() local
2648 wdev = dev->ieee80211_ptr; in cfg80211_get_station()
2649 if (!wdev) in cfg80211_get_station()
2652 rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_get_station()
2911 void cfg80211_remove_link(struct wireless_dev *wdev, unsigned int link_id) in cfg80211_remove_link() argument
2913 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_remove_link()
2915 lockdep_assert_wiphy(wdev->wiphy); in cfg80211_remove_link()
2917 switch (wdev->iftype) { in cfg80211_remove_link()
2920 cfg80211_stop_ap(rdev, wdev->netdev, link_id, true); in cfg80211_remove_link()
2927 rdev_del_intf_link(rdev, wdev, link_id); in cfg80211_remove_link()
2929 wdev->valid_links &= ~BIT(link_id); in cfg80211_remove_link()
2930 eth_zero_addr(wdev->links[link_id].addr); in cfg80211_remove_link()
2933 void cfg80211_remove_links(struct wireless_dev *wdev) in cfg80211_remove_links() argument
2941 if (wdev->iftype != NL80211_IFTYPE_AP) in cfg80211_remove_links()
2944 if (wdev->valid_links) { in cfg80211_remove_links()
2945 for_each_valid_link(wdev, link_id) in cfg80211_remove_links()
2946 cfg80211_remove_link(wdev, link_id); in cfg80211_remove_links()
2951 struct wireless_dev *wdev) in cfg80211_remove_virtual_intf() argument
2953 cfg80211_remove_links(wdev); in cfg80211_remove_virtual_intf()
2955 return rdev_del_virtual_intf(rdev, wdev); in cfg80211_remove_virtual_intf()
3007 bool cfg80211_wdev_channel_allowed(struct wireless_dev *wdev, in cfg80211_wdev_channel_allowed() argument
3010 struct wiphy *wiphy = wdev->wiphy; in cfg80211_wdev_channel_allowed()
3016 radio_mask = wdev->radio_mask; in cfg80211_wdev_channel_allowed()