Lines Matching refs:wiphy

90 static void *mwifiex_cfg80211_get_adapter(struct wiphy *wiphy)  in mwifiex_cfg80211_get_adapter()  argument
92 return (void *) (*(unsigned long *) wiphy_priv(wiphy)); in mwifiex_cfg80211_get_adapter()
99 mwifiex_cfg80211_del_key(struct wiphy *wiphy, struct net_device *netdev, in mwifiex_cfg80211_del_key() argument
107 wiphy_err(wiphy, "deleting the crypto keys\n"); in mwifiex_cfg80211_del_key()
111 wiphy_dbg(wiphy, "info: crypto keys deleted\n"); in mwifiex_cfg80211_del_key()
154 mwifiex_cfg80211_mgmt_tx(struct wiphy *wiphy, struct wireless_dev *wdev, in mwifiex_cfg80211_mgmt_tx() argument
166 wiphy_err(wiphy, "invalid buffer and length\n"); in mwifiex_cfg80211_mgmt_tx()
175 wiphy_dbg(wiphy, in mwifiex_cfg80211_mgmt_tx()
186 wiphy_err(wiphy, "allocate skb failed for management frame\n"); in mwifiex_cfg80211_mgmt_tx()
209 wiphy_dbg(wiphy, "info: management frame transmitted\n"); in mwifiex_cfg80211_mgmt_tx()
217 mwifiex_cfg80211_mgmt_frame_register(struct wiphy *wiphy, in mwifiex_cfg80211_mgmt_frame_register() argument
234 wiphy_dbg(wiphy, "info: mgmt frame registered\n"); in mwifiex_cfg80211_mgmt_frame_register()
242 mwifiex_cfg80211_remain_on_channel(struct wiphy *wiphy, in mwifiex_cfg80211_remain_on_channel() argument
251 wiphy_err(wiphy, "Invalid parameter for ROC\n"); in mwifiex_cfg80211_remain_on_channel()
256 wiphy_dbg(wiphy, "info: ongoing ROC, cookie = 0x%llx\n", in mwifiex_cfg80211_remain_on_channel()
272 wiphy_dbg(wiphy, "info: ROC, cookie = 0x%llx\n", *cookie); in mwifiex_cfg80211_remain_on_channel()
282 mwifiex_cfg80211_cancel_remain_on_channel(struct wiphy *wiphy, in mwifiex_cfg80211_cancel_remain_on_channel() argument
301 wiphy_dbg(wiphy, "info: cancel ROC, cookie = 0x%llx\n", cookie); in mwifiex_cfg80211_cancel_remain_on_channel()
311 mwifiex_cfg80211_set_tx_power(struct wiphy *wiphy, in mwifiex_cfg80211_set_tx_power() argument
316 struct mwifiex_adapter *adapter = mwifiex_cfg80211_get_adapter(wiphy); in mwifiex_cfg80211_set_tx_power()
339 mwifiex_cfg80211_set_power_mgmt(struct wiphy *wiphy, in mwifiex_cfg80211_set_power_mgmt() argument
347 wiphy_dbg(wiphy, in mwifiex_cfg80211_set_power_mgmt()
359 mwifiex_cfg80211_set_default_key(struct wiphy *wiphy, struct net_device *netdev, in mwifiex_cfg80211_set_default_key() argument
373 wiphy_err(wiphy, "set default Tx key index\n"); in mwifiex_cfg80211_set_default_key()
384 mwifiex_cfg80211_add_key(struct wiphy *wiphy, struct net_device *netdev, in mwifiex_cfg80211_add_key() argument
410 wiphy_err(wiphy, "crypto keys added\n"); in mwifiex_cfg80211_add_key()
424 static int mwifiex_send_domain_info_cmd_fw(struct wiphy *wiphy) in mwifiex_send_domain_info_cmd_fw() argument
434 struct mwifiex_adapter *adapter = mwifiex_cfg80211_get_adapter(wiphy); in mwifiex_send_domain_info_cmd_fw()
444 if (!wiphy->bands[band]) { in mwifiex_send_domain_info_cmd_fw()
445 wiphy_err(wiphy, "11D: setting domain info in FW\n"); in mwifiex_send_domain_info_cmd_fw()
449 sband = wiphy->bands[band]; in mwifiex_send_domain_info_cmd_fw()
496 wiphy_err(wiphy, "11D: setting domain info in FW\n"); in mwifiex_send_domain_info_cmd_fw()
513 static void mwifiex_reg_notifier(struct wiphy *wiphy, in mwifiex_reg_notifier() argument
516 struct mwifiex_adapter *adapter = mwifiex_cfg80211_get_adapter(wiphy); in mwifiex_reg_notifier()
520 wiphy_dbg(wiphy, "info: cfg80211 regulatory domain callback for %c%c\n", in mwifiex_reg_notifier()
530 wiphy_err(wiphy, "unknown regdom initiator: %d\n", in mwifiex_reg_notifier()
541 mwifiex_send_domain_info_cmd_fw(wiphy); in mwifiex_reg_notifier()
588 mwifiex_cfg80211_set_wiphy_params(struct wiphy *wiphy, u32 changed) in mwifiex_cfg80211_set_wiphy_params() argument
590 struct mwifiex_adapter *adapter = mwifiex_cfg80211_get_adapter(wiphy); in mwifiex_cfg80211_set_wiphy_params()
612 bss_cfg->rts_threshold = wiphy->rts_threshold; in mwifiex_cfg80211_set_wiphy_params()
614 bss_cfg->frag_threshold = wiphy->frag_threshold; in mwifiex_cfg80211_set_wiphy_params()
616 bss_cfg->retry_limit = wiphy->retry_long; in mwifiex_cfg80211_set_wiphy_params()
625 wiphy_err(wiphy, "Failed to set wiphy phy params\n"); in mwifiex_cfg80211_set_wiphy_params()
638 wiphy->rts_threshold); in mwifiex_cfg80211_set_wiphy_params()
644 wiphy->frag_threshold); in mwifiex_cfg80211_set_wiphy_params()
995 mwifiex_cfg80211_change_virtual_intf(struct wiphy *wiphy, in mwifiex_cfg80211_change_virtual_intf() argument
1023 wiphy_warn(wiphy, "%s: kept type as IBSS\n", dev->name); in mwifiex_cfg80211_change_virtual_intf()
1027 wiphy_err(wiphy, "%s: changing to %d not supported\n", in mwifiex_cfg80211_change_virtual_intf()
1051 wiphy_warn(wiphy, "%s: kept type as STA\n", dev->name); in mwifiex_cfg80211_change_virtual_intf()
1055 wiphy_err(wiphy, "%s: changing to %d not supported\n", in mwifiex_cfg80211_change_virtual_intf()
1073 wiphy_warn(wiphy, "%s: kept type as AP\n", dev->name); in mwifiex_cfg80211_change_virtual_intf()
1077 wiphy_err(wiphy, "%s: changing to %d not supported\n", in mwifiex_cfg80211_change_virtual_intf()
1103 wiphy_warn(wiphy, "%s: kept type as P2P\n", dev->name); in mwifiex_cfg80211_change_virtual_intf()
1108 wiphy_err(wiphy, "%s: changing to %d not supported\n", in mwifiex_cfg80211_change_virtual_intf()
1114 wiphy_err(wiphy, "%s: unknown iftype: %d\n", in mwifiex_cfg80211_change_virtual_intf()
1260 mwifiex_cfg80211_get_station(struct wiphy *wiphy, struct net_device *dev, in mwifiex_cfg80211_get_station() argument
1277 mwifiex_cfg80211_dump_station(struct wiphy *wiphy, struct net_device *dev, in mwifiex_cfg80211_dump_station() argument
1291 mwifiex_cfg80211_dump_survey(struct wiphy *wiphy, struct net_device *dev, in mwifiex_cfg80211_dump_survey() argument
1308 survey->channel = ieee80211_get_channel(wiphy, in mwifiex_cfg80211_dump_survey()
1325 survey->channel = ieee80211_get_channel(wiphy, in mwifiex_cfg80211_dump_survey()
1464 static int mwifiex_cfg80211_set_bitrate_mask(struct wiphy *wiphy, in mwifiex_cfg80211_set_bitrate_mask() argument
1516 static int mwifiex_cfg80211_set_cqm_rssi_config(struct wiphy *wiphy, in mwifiex_cfg80211_set_cqm_rssi_config() argument
1552 static int mwifiex_cfg80211_change_beacon(struct wiphy *wiphy, in mwifiex_cfg80211_change_beacon() argument
1559 wiphy_err(wiphy, "%s: bss_type mismatched\n", __func__); in mwifiex_cfg80211_change_beacon()
1564 wiphy_err(wiphy, "%s: bss not started\n", __func__); in mwifiex_cfg80211_change_beacon()
1569 wiphy_err(wiphy, "%s: setting mgmt ies failed\n", __func__); in mwifiex_cfg80211_change_beacon()
1583 mwifiex_cfg80211_del_station(struct wiphy *wiphy, struct net_device *dev, in mwifiex_cfg80211_del_station() argument
1597 wiphy_dbg(wiphy, "%s: mac address %pM\n", __func__, params->mac); in mwifiex_cfg80211_del_station()
1618 mwifiex_cfg80211_set_antenna(struct wiphy *wiphy, u32 tx_ant, u32 rx_ant) in mwifiex_cfg80211_set_antenna() argument
1620 struct mwifiex_adapter *adapter = mwifiex_cfg80211_get_adapter(wiphy); in mwifiex_cfg80211_set_antenna()
1662 if (!adapter->wiphy->bands[band]) in mwifiex_cfg80211_set_antenna()
1665 ht_info = &adapter->wiphy->bands[band]->ht_cap; in mwifiex_cfg80211_set_antenna()
1683 static int mwifiex_cfg80211_stop_ap(struct wiphy *wiphy, struct net_device *dev) in mwifiex_cfg80211_stop_ap() argument
1690 wiphy_err(wiphy, "Failed to delete mgmt IEs!\n"); in mwifiex_cfg80211_stop_ap()
1697 wiphy_err(wiphy, "Failed to stop the BSS\n"); in mwifiex_cfg80211_stop_ap()
1709 static int mwifiex_cfg80211_start_ap(struct wiphy *wiphy, in mwifiex_cfg80211_start_ap() argument
1759 wiphy_err(wiphy, "Failed to parse secuirty parameters!\n"); in mwifiex_cfg80211_start_ap()
1779 !cfg80211_chandef_dfs_required(wiphy, &params->chandef, in mwifiex_cfg80211_start_ap()
1791 wiphy_err(wiphy, "Failed to start AP\n"); in mwifiex_cfg80211_start_ap()
1811 mwifiex_cfg80211_disconnect(struct wiphy *wiphy, struct net_device *dev, in mwifiex_cfg80211_disconnect() argument
1819 wiphy_dbg(wiphy, "info: successfully disconnected from %pM:" in mwifiex_cfg80211_disconnect()
1859 chan = __ieee80211_get_channel(priv->wdev.wiphy, in mwifiex_cfg80211_inform_ibss_bss()
1863 bss = cfg80211_inform_bss(priv->wdev.wiphy, chan, in mwifiex_cfg80211_inform_ibss_bss()
1867 cfg80211_put_bss(priv->wdev.wiphy, bss); in mwifiex_cfg80211_inform_ibss_bss()
1988 bss = cfg80211_get_bss(priv->wdev.wiphy, channel, in mwifiex_cfg80211_assoc()
1993 bss = cfg80211_get_bss(priv->wdev.wiphy, channel, in mwifiex_cfg80211_assoc()
2036 mwifiex_cfg80211_connect(struct wiphy *wiphy, struct net_device *dev, in mwifiex_cfg80211_connect() argument
2044 wiphy_err(wiphy, in mwifiex_cfg80211_connect()
2051 wiphy_warn(wiphy, "%s: already connected\n", dev->name); in mwifiex_cfg80211_connect()
2056 wiphy_err(wiphy, in mwifiex_cfg80211_connect()
2062 wiphy_dbg(wiphy, "info: Trying to associate to %s and bssid %pM\n", in mwifiex_cfg80211_connect()
2108 struct wiphy *wiphy = priv->wdev.wiphy; in mwifiex_set_ibss_params() local
2165 wiphy_dbg(wiphy, "info: set ibss band %d, chan %d, chan offset %d\n", in mwifiex_set_ibss_params()
2178 mwifiex_cfg80211_join_ibss(struct wiphy *wiphy, struct net_device *dev, in mwifiex_cfg80211_join_ibss() argument
2185 wiphy_err(wiphy, "request to join ibss received " in mwifiex_cfg80211_join_ibss()
2190 wiphy_dbg(wiphy, "info: trying to join to %s and bssid %pM\n", in mwifiex_cfg80211_join_ibss()
2221 mwifiex_cfg80211_leave_ibss(struct wiphy *wiphy, struct net_device *dev) in mwifiex_cfg80211_leave_ibss() argument
2225 wiphy_dbg(wiphy, "info: disconnecting from essid %pM\n", in mwifiex_cfg80211_leave_ibss()
2243 mwifiex_cfg80211_scan(struct wiphy *wiphy, in mwifiex_cfg80211_scan() argument
2253 wiphy_dbg(wiphy, "info: received scan request on %s\n", dev->name); in mwifiex_cfg80211_scan()
2436 struct wireless_dev *mwifiex_add_virtual_intf(struct wiphy *wiphy, in mwifiex_add_virtual_intf() argument
2443 struct mwifiex_adapter *adapter = mwifiex_cfg80211_get_adapter(wiphy); in mwifiex_add_virtual_intf()
2457 wiphy_err(wiphy, in mwifiex_add_virtual_intf()
2464 wiphy_err(wiphy, in mwifiex_add_virtual_intf()
2469 priv->wdev.wiphy = wiphy; in mwifiex_add_virtual_intf()
2487 wiphy_err(wiphy, in mwifiex_add_virtual_intf()
2494 wiphy_err(wiphy, in mwifiex_add_virtual_intf()
2499 priv->wdev.wiphy = wiphy; in mwifiex_add_virtual_intf()
2514 wiphy_err(wiphy, in mwifiex_add_virtual_intf()
2521 wiphy_err(wiphy, in mwifiex_add_virtual_intf()
2526 priv->wdev.wiphy = wiphy; in mwifiex_add_virtual_intf()
2553 wiphy_err(wiphy, "type not supported\n"); in mwifiex_add_virtual_intf()
2561 wiphy_err(wiphy, "no memory available for netdevice\n"); in mwifiex_add_virtual_intf()
2571 mwifiex_setup_ht_caps(&wiphy->bands[IEEE80211_BAND_2GHZ]->ht_cap, priv); in mwifiex_add_virtual_intf()
2574 &wiphy->bands[IEEE80211_BAND_2GHZ]->vht_cap, priv); in mwifiex_add_virtual_intf()
2578 &wiphy->bands[IEEE80211_BAND_5GHZ]->ht_cap, priv); in mwifiex_add_virtual_intf()
2582 &wiphy->bands[IEEE80211_BAND_5GHZ]->vht_cap, priv); in mwifiex_add_virtual_intf()
2584 dev_net_set(dev, wiphy_net(wiphy)); in mwifiex_add_virtual_intf()
2587 memcpy(dev->dev_addr, wiphy->perm_addr, ETH_ALEN); in mwifiex_add_virtual_intf()
2588 SET_NETDEV_DEV(dev, wiphy_dev(wiphy)); in mwifiex_add_virtual_intf()
2602 wiphy_err(wiphy, "cannot register virtual network device\n"); in mwifiex_add_virtual_intf()
2616 wiphy_err(wiphy, "cannot register virtual network device\n"); in mwifiex_add_virtual_intf()
2631 wiphy_err(wiphy, "cannot register virtual network device\n"); in mwifiex_add_virtual_intf()
2664 wiphy_err(wiphy, "type not supported\n"); in mwifiex_add_virtual_intf()
2675 int mwifiex_del_virtual_intf(struct wiphy *wiphy, struct wireless_dev *wdev) in mwifiex_del_virtual_intf() argument
2941 static int mwifiex_cfg80211_suspend(struct wiphy *wiphy, in mwifiex_cfg80211_suspend() argument
2944 struct mwifiex_adapter *adapter = mwifiex_cfg80211_get_adapter(wiphy); in mwifiex_cfg80211_suspend()
2992 static int mwifiex_cfg80211_resume(struct wiphy *wiphy) in mwifiex_cfg80211_resume() argument
2997 static void mwifiex_cfg80211_set_wakeup(struct wiphy *wiphy, in mwifiex_cfg80211_set_wakeup() argument
3000 struct mwifiex_adapter *adapter = mwifiex_cfg80211_get_adapter(wiphy); in mwifiex_cfg80211_set_wakeup()
3085 static int mwifiex_cfg80211_set_coalesce(struct wiphy *wiphy, in mwifiex_cfg80211_set_coalesce() argument
3088 struct mwifiex_adapter *adapter = mwifiex_cfg80211_get_adapter(wiphy); in mwifiex_cfg80211_set_coalesce()
3123 mwifiex_cfg80211_tdls_mgmt(struct wiphy *wiphy, struct net_device *dev, in mwifiex_cfg80211_tdls_mgmt() argument
3132 if (!(wiphy->flags & WIPHY_FLAG_SUPPORTS_TDLS)) in mwifiex_cfg80211_tdls_mgmt()
3198 mwifiex_cfg80211_tdls_oper(struct wiphy *wiphy, struct net_device *dev, in mwifiex_cfg80211_tdls_oper() argument
3203 if (!(wiphy->flags & WIPHY_FLAG_SUPPORTS_TDLS) || in mwifiex_cfg80211_tdls_oper()
3204 !(wiphy->flags & WIPHY_FLAG_TDLS_EXTERNAL_SETUP)) in mwifiex_cfg80211_tdls_oper()
3246 mwifiex_cfg80211_add_station(struct wiphy *wiphy, struct net_device *dev, in mwifiex_cfg80211_add_station() argument
3262 mwifiex_cfg80211_channel_switch(struct wiphy *wiphy, struct net_device *dev, in mwifiex_cfg80211_channel_switch() argument
3300 wiphy_err(wiphy, "Failed to delete mgmt IEs!\n"); in mwifiex_cfg80211_channel_switch()
3303 wiphy_err(wiphy, "%s: setting mgmt ies failed\n", __func__); in mwifiex_cfg80211_channel_switch()
3318 mwifiex_cfg80211_start_radar_detection(struct wiphy *wiphy, in mwifiex_cfg80211_start_radar_detection() argument
3358 mwifiex_cfg80211_change_station(struct wiphy *wiphy, struct net_device *dev, in mwifiex_cfg80211_change_station() argument
3486 struct wiphy *wiphy; in mwifiex_register_cfg80211() local
3492 wiphy = wiphy_new(&mwifiex_cfg80211_ops, in mwifiex_register_cfg80211()
3494 if (!wiphy) { in mwifiex_register_cfg80211()
3498 wiphy->max_scan_ssids = MWIFIEX_MAX_SSID_LIST_LENGTH; in mwifiex_register_cfg80211()
3499 wiphy->max_scan_ie_len = MWIFIEX_MAX_VSIE_LEN; in mwifiex_register_cfg80211()
3500 wiphy->mgmt_stypes = mwifiex_mgmt_stypes; in mwifiex_register_cfg80211()
3501 wiphy->max_remain_on_channel_duration = 5000; in mwifiex_register_cfg80211()
3502 wiphy->interface_modes = BIT(NL80211_IFTYPE_STATION) | in mwifiex_register_cfg80211()
3508 wiphy->bands[IEEE80211_BAND_2GHZ] = &mwifiex_band_2ghz; in mwifiex_register_cfg80211()
3510 wiphy->bands[IEEE80211_BAND_5GHZ] = &mwifiex_band_5ghz; in mwifiex_register_cfg80211()
3512 wiphy->bands[IEEE80211_BAND_5GHZ] = NULL; in mwifiex_register_cfg80211()
3514 wiphy->iface_combinations = &mwifiex_iface_comb_ap_sta; in mwifiex_register_cfg80211()
3515 wiphy->n_iface_combinations = 1; in mwifiex_register_cfg80211()
3518 wiphy->cipher_suites = mwifiex_cipher_suites; in mwifiex_register_cfg80211()
3519 wiphy->n_cipher_suites = ARRAY_SIZE(mwifiex_cipher_suites); in mwifiex_register_cfg80211()
3521 ether_addr_copy(wiphy->perm_addr, adapter->perm_addr); in mwifiex_register_cfg80211()
3522 wiphy->signal_type = CFG80211_SIGNAL_TYPE_MBM; in mwifiex_register_cfg80211()
3523 wiphy->flags |= WIPHY_FLAG_HAVE_AP_SME | in mwifiex_register_cfg80211()
3530 wiphy->flags |= WIPHY_FLAG_SUPPORTS_TDLS | in mwifiex_register_cfg80211()
3534 wiphy->wowlan = &mwifiex_wowlan_support; in mwifiex_register_cfg80211()
3537 wiphy->coalesce = &mwifiex_coalesce_support; in mwifiex_register_cfg80211()
3539 wiphy->probe_resp_offload = NL80211_PROBE_RESP_OFFLOAD_SUPPORT_WPS | in mwifiex_register_cfg80211()
3543 wiphy->available_antennas_tx = BIT(adapter->number_of_antenna) - 1; in mwifiex_register_cfg80211()
3544 wiphy->available_antennas_rx = BIT(adapter->number_of_antenna) - 1; in mwifiex_register_cfg80211()
3546 wiphy->features |= NL80211_FEATURE_HT_IBSS | in mwifiex_register_cfg80211()
3551 wiphy->features |= NL80211_FEATURE_SK_TX_STATUS; in mwifiex_register_cfg80211()
3554 wiphy->bss_priv_size = sizeof(struct mwifiex_bss_priv); in mwifiex_register_cfg80211()
3556 wiphy->reg_notifier = mwifiex_reg_notifier; in mwifiex_register_cfg80211()
3559 wdev_priv = wiphy_priv(wiphy); in mwifiex_register_cfg80211()
3562 set_wiphy_dev(wiphy, priv->adapter->dev); in mwifiex_register_cfg80211()
3564 ret = wiphy_register(wiphy); in mwifiex_register_cfg80211()
3568 wiphy_free(wiphy); in mwifiex_register_cfg80211()
3573 wiphy_info(wiphy, "driver hint alpha2: %2.2s\n", reg_alpha2); in mwifiex_register_cfg80211()
3574 regulatory_hint(wiphy, reg_alpha2); in mwifiex_register_cfg80211()
3578 wiphy_info(wiphy, "ignoring F/W country code %2.2s\n", in mwifiex_register_cfg80211()
3584 wiphy->frag_threshold = thr; in mwifiex_register_cfg80211()
3587 wiphy->rts_threshold = thr; in mwifiex_register_cfg80211()
3590 wiphy->retry_short = (u8) retry; in mwifiex_register_cfg80211()
3593 wiphy->retry_long = (u8) retry; in mwifiex_register_cfg80211()
3595 adapter->wiphy = wiphy; in mwifiex_register_cfg80211()