Lines Matching refs:rdev
185 int cfg80211_validate_key_settings(struct cfg80211_registered_device *rdev, in cfg80211_validate_key_settings() argument
192 if (!pairwise && mac_addr && !(rdev->wiphy.flags & WIPHY_FLAG_IBSS_RSN)) in cfg80211_validate_key_settings()
258 if (!cfg80211_supported_cipher_suite(&rdev->wiphy, params->cipher)) in cfg80211_validate_key_settings()
703 struct cfg80211_registered_device *rdev = wiphy_to_dev(wdev->wiphy); in cfg80211_upload_connect_keys() local
713 if (rdev_add_key(rdev, dev, i, false, NULL, in cfg80211_upload_connect_keys()
719 if (rdev_set_default_key(rdev, dev, i, true, true)) { in cfg80211_upload_connect_keys()
724 if (rdev_set_default_mgmt_key(rdev, dev, i)) in cfg80211_upload_connect_keys()
781 void cfg80211_process_rdev_events(struct cfg80211_registered_device *rdev) in cfg80211_process_rdev_events() argument
786 ASSERT_RDEV_LOCK(rdev); in cfg80211_process_rdev_events()
788 mutex_lock(&rdev->devlist_mtx); in cfg80211_process_rdev_events()
790 list_for_each_entry(wdev, &rdev->wdev_list, list) in cfg80211_process_rdev_events()
793 mutex_unlock(&rdev->devlist_mtx); in cfg80211_process_rdev_events()
796 int cfg80211_change_iface(struct cfg80211_registered_device *rdev, in cfg80211_change_iface() argument
803 ASSERT_RDEV_LOCK(rdev); in cfg80211_change_iface()
813 if (!rdev->ops->change_virtual_intf || in cfg80211_change_iface()
814 !(rdev->wiphy.interface_modes & (1 << ntype))) in cfg80211_change_iface()
825 mutex_lock(&rdev->devlist_mtx); in cfg80211_change_iface()
826 err = cfg80211_can_change_interface(rdev, dev->ieee80211_ptr, in cfg80211_change_iface()
828 mutex_unlock(&rdev->devlist_mtx); in cfg80211_change_iface()
837 cfg80211_stop_ap(rdev, dev); in cfg80211_change_iface()
840 cfg80211_leave_ibss(rdev, dev, false); in cfg80211_change_iface()
844 cfg80211_disconnect(rdev, dev, in cfg80211_change_iface()
854 cfg80211_process_rdev_events(rdev); in cfg80211_change_iface()
857 err = rdev_change_virtual_intf(rdev, dev, ntype, flags, params); in cfg80211_change_iface()
896 cfg80211_update_iface_num(rdev, ntype, 1); in cfg80211_change_iface()
897 cfg80211_update_iface_num(rdev, otype, -1); in cfg80211_change_iface()
1178 int cfg80211_validate_beacon_int(struct cfg80211_registered_device *rdev, in cfg80211_validate_beacon_int() argument
1187 mutex_lock(&rdev->devlist_mtx); in cfg80211_validate_beacon_int()
1189 list_for_each_entry(wdev, &rdev->wdev_list, list) { in cfg80211_validate_beacon_int()
1198 mutex_unlock(&rdev->devlist_mtx); in cfg80211_validate_beacon_int()
1203 int cfg80211_can_use_iftype_chan(struct cfg80211_registered_device *rdev, in cfg80211_can_use_iftype_chan() argument
1223 lockdep_assert_held(&rdev->devlist_mtx); in cfg80211_can_use_iftype_chan()
1254 if (rdev->wiphy.software_iftypes & BIT(iftype)) { in cfg80211_can_use_iftype_chan()
1278 list_for_each_entry(wdev_iter, &rdev->wdev_list, list) { in cfg80211_can_use_iftype_chan()
1291 if (rdev->wiphy.software_iftypes & BIT(wdev_iter->iftype)) in cfg80211_can_use_iftype_chan()
1334 for (i = 0; i < rdev->wiphy.n_iface_combinations; i++) { in cfg80211_can_use_iftype_chan()
1339 c = &rdev->wiphy.iface_combinations[i]; in cfg80211_can_use_iftype_chan()
1352 if (rdev->wiphy.software_iftypes & BIT(iftype)) in cfg80211_can_use_iftype_chan()