Lines Matching full:vif

168 	struct wilc_vif *vif = netdev_priv(dev);  in cfg_connect_result()  local
169 struct wilc *wl = vif->wilc; in cfg_connect_result()
174 vif->connecting = false; in cfg_connect_result()
184 if (vif->iftype != WILC_CLIENT_MODE) in cfg_connect_result()
194 cfg80211_ref_bss(wiphy, vif->bss); in cfg_connect_result()
195 cfg80211_connect_bss(dev, conn_info->bssid, vif->bss, in cfg_connect_result()
203 vif->bss = NULL; in cfg_connect_result()
210 if (vif->iftype != WILC_CLIENT_MODE) { in cfg_connect_result()
225 struct wilc_vif *vif; in wilc_get_wl_to_vif() local
227 vif = list_first_or_null_rcu(&wl->vif_list, typeof(*vif), list); in wilc_get_wl_to_vif()
228 if (!vif) in wilc_get_wl_to_vif()
231 return vif; in wilc_get_wl_to_vif()
238 struct wilc_vif *vif; in set_channel() local
244 vif = wilc_get_wl_to_vif(wl); in set_channel()
245 if (IS_ERR(vif)) { in set_channel()
247 return PTR_ERR(vif); in set_channel()
253 result = wilc_set_mac_chnl_num(vif, channelnum); in set_channel()
255 netdev_err(vif->ndev, "Error in setting channel\n"); in set_channel()
263 struct wilc_vif *vif = netdev_priv(request->wdev->netdev); in scan() local
264 struct wilc_priv *priv = &vif->priv; in scan()
271 netdev_err(vif->ndev, "Requested scanned channels over\n"); in scan()
288 ret = wilc_scan(vif, WILC_FW_USER_SCAN, scan_type, scan_ch_list, in scan()
303 struct wilc_vif *vif = netdev_priv(dev); in connect() local
304 struct wilc_priv *priv = &vif->priv; in connect()
315 vif->connecting = true; in connect()
329 wilc_set_wep_default_keyid(vif, sme->key_idx); in connect()
330 wilc_add_wep_key_bss_sta(vif, sme->key, sme->key_len, in connect()
339 wilc_set_wep_default_keyid(vif, sme->key_idx); in connect()
340 wilc_add_wep_key_bss_sta(vif, sme->key, sme->key_len, in connect()
391 netdev_err(vif->ndev, "%s: Scan in progress\n", __func__); in connect()
404 if (ether_addr_equal_unaligned(vif->bssid, bss->bssid)) { in connect()
418 vif->wilc->op_ch = ch; in connect()
419 if (vif->iftype != WILC_CLIENT_MODE) in connect()
420 vif->wilc->sta_ch = ch; in connect()
431 ret = wilc_set_join_req(vif, bss->bssid, sme->ie, sme->ie_len); in connect()
435 if (vif->iftype != WILC_CLIENT_MODE) in connect()
436 vif->wilc->sta_ch = WILC_INVALID_CHANNEL; in connect()
443 vif->bss = bss; in connect()
451 vif->connecting = false; in connect()
458 struct wilc_vif *vif = netdev_priv(dev); in disconnect() local
459 struct wilc_priv *priv = &vif->priv; in disconnect()
460 struct wilc *wilc = vif->wilc; in disconnect()
463 vif->connecting = false; in disconnect()
474 if (vif->iftype != WILC_CLIENT_MODE) in disconnect()
480 ret = wilc_disconnect(vif); in disconnect()
486 vif->bss = NULL; in disconnect()
552 struct wilc_vif *vif = netdev_priv(netdev); in add_key() local
553 struct wilc_priv *priv = &vif->priv; in add_key()
566 ret = wilc_add_wep_key_bss_ap(vif, params->key, in add_key()
576 ret = wilc_add_wep_key_bss_sta(vif, params->key, in add_key()
634 ret = wilc_add_rx_gtk(vif, params->key, keylen, in add_key()
639 ret = wilc_add_ptk(vif, params->key, keylen, mac_addr, in add_key()
658 struct wilc_vif *vif = netdev_priv(netdev); in del_key() local
659 struct wilc_priv *priv = &vif->priv; in del_key()
684 wilc_remove_wep_key(vif, key_index); in del_key()
694 struct wilc_vif *vif = netdev_priv(netdev); in get_key() local
695 struct wilc_priv *priv = &vif->priv; in get_key()
720 struct wilc_vif *vif = netdev_priv(netdev); in set_default_key() local
722 wilc_set_wep_default_keyid(vif, key_index); in set_default_key()
730 struct wilc_vif *vif = netdev_priv(dev); in get_station() local
731 struct wilc_priv *priv = &vif->priv; in get_station()
736 if (vif->iftype == WILC_AP_MODE || vif->iftype == WILC_GO_MODE) { in get_station()
753 wilc_get_inactive_time(vif, mac, &inactive_time); in get_station()
755 } else if (vif->iftype == WILC_STATION_MODE) { in get_station()
758 wilc_get_statistics(vif, &stats); in get_station()
774 wilc_enable_tcp_ack_filter(vif, true); in get_station()
776 wilc_enable_tcp_ack_filter(vif, false); in get_station()
792 struct wilc_vif *vif; in set_wiphy_params() local
797 vif = wilc_get_wl_to_vif(wl); in set_wiphy_params()
798 if (IS_ERR(vif)) in set_wiphy_params()
801 priv = &vif->priv; in set_wiphy_params()
805 netdev_dbg(vif->ndev, in set_wiphy_params()
812 netdev_dbg(vif->ndev, in set_wiphy_params()
821 netdev_dbg(vif->ndev, in set_wiphy_params()
827 netdev_err(vif->ndev, in set_wiphy_params()
835 netdev_dbg(vif->ndev, in set_wiphy_params()
841 netdev_err(vif->ndev, "RTS threshold out of range\n"); in set_wiphy_params()
846 ret = wilc_hif_set_cfg(vif, &cfg_param_val); in set_wiphy_params()
858 struct wilc_vif *vif = netdev_priv(netdev); in set_pmksa() local
859 struct wilc_priv *priv = &vif->priv; in set_pmksa()
884 ret = wilc_set_pmkid_info(vif, &priv->pmkid_list); in set_pmksa()
893 struct wilc_vif *vif = netdev_priv(netdev); in del_pmksa() local
894 struct wilc_priv *priv = &vif->priv; in del_pmksa()
923 struct wilc_vif *vif = netdev_priv(netdev); in flush_pmksa() local
925 memset(&vif->priv.pmkid_list, 0, sizeof(struct wilc_pmkid_attr)); in flush_pmksa()
977 void wilc_wfi_p2p_rx(struct wilc_vif *vif, u8 *buff, u32 size) in wilc_wfi_p2p_rx() argument
979 struct wilc *wl = vif->wilc; in wilc_wfi_p2p_rx()
980 struct wilc_priv *priv = &vif->priv; in wilc_wfi_p2p_rx()
1014 netdev_dbg(vif->ndev, "Receiving action wrong ch\n"); in wilc_wfi_p2p_rx()
1032 wilc_wfi_cfg_parse_ch_attr(p->attr, p->tag_len - 4, vif->wilc->sta_ch); in wilc_wfi_p2p_rx()
1048 struct wilc_vif *vif = data; in wilc_wfi_remain_on_channel_expired() local
1049 struct wilc_priv *priv = &vif->priv; in wilc_wfi_remain_on_channel_expired()
1067 struct wilc_vif *vif = netdev_priv(wdev->netdev); in remain_on_channel() local
1068 struct wilc_priv *priv = &vif->priv; in remain_on_channel()
1072 netdev_dbg(vif->ndev, "Required while in AP mode\n"); in remain_on_channel()
1080 ret = wilc_remain_on_channel(vif, id, duration, chan->hw_value, in remain_on_channel()
1082 (void *)vif); in remain_on_channel()
1086 vif->wilc->op_ch = chan->hw_value; in remain_on_channel()
1095 mod_timer(&vif->hif_drv->remain_on_ch_timer, in remain_on_channel()
1105 struct wilc_vif *vif = netdev_priv(wdev->netdev); in cancel_remain_on_channel() local
1106 struct wilc_priv *priv = &vif->priv; in cancel_remain_on_channel()
1111 return wilc_listen_state_expired(vif, cookie); in cancel_remain_on_channel()
1125 struct wilc_vif *vif = netdev_priv(wdev->netdev); in mgmt_tx() local
1126 struct wilc_priv *priv = &vif->priv; in mgmt_tx()
1157 wilc_set_mac_chnl_num(vif, chan->hw_value); in mgmt_tx()
1158 vif->wilc->op_ch = chan->hw_value; in mgmt_tx()
1168 wilc_set_mac_chnl_num(vif, chan->hw_value); in mgmt_tx()
1169 vif->wilc->op_ch = chan->hw_value; in mgmt_tx()
1182 wilc_wfi_cfg_parse_ch_attr(p->attr, p->tag_len - 4, vif->wilc->sta_ch); in mgmt_tx()
1202 struct wilc_vif *vif = netdev_priv(wdev->netdev); in mgmt_tx_cancel_wait() local
1203 struct wilc_priv *priv = &vif->priv; in mgmt_tx_cancel_wait()
1227 struct wilc_vif *vif = netdev_priv(wdev->netdev); in wilc_update_mgmt_frame_registrations() local
1232 bool prev = vif->mgmt_reg_stypes & presp_bit; in wilc_update_mgmt_frame_registrations()
1236 wilc_frame_register(vif, IEEE80211_STYPE_PROBE_REQ, now); in wilc_update_mgmt_frame_registrations()
1238 prev = vif->mgmt_reg_stypes & action_bit; in wilc_update_mgmt_frame_registrations()
1242 wilc_frame_register(vif, IEEE80211_STYPE_ACTION, now); in wilc_update_mgmt_frame_registrations()
1245 vif->mgmt_reg_stypes = in wilc_update_mgmt_frame_registrations()
1258 struct wilc_vif *vif = netdev_priv(dev); in dump_station() local
1266 ret = wilc_get_rssi(vif, &sinfo->signal); in dump_station()
1270 memcpy(mac, vif->priv.associated_bss, ETH_ALEN); in dump_station()
1277 struct wilc_vif *vif = netdev_priv(dev); in set_power_mgmt() local
1278 struct wilc_priv *priv = &vif->priv; in set_power_mgmt()
1283 wilc_set_power_mgmt(vif, enabled, timeout); in set_power_mgmt()
1293 struct wilc_vif *vif = netdev_priv(dev); in change_virtual_intf() local
1294 struct wilc_priv *priv = &vif->priv; in change_virtual_intf()
1298 vif->connecting = false; in change_virtual_intf()
1301 vif->monitor_flag = 0; in change_virtual_intf()
1302 if (vif->iftype == WILC_AP_MODE || vif->iftype == WILC_GO_MODE) in change_virtual_intf()
1304 vif->iftype = WILC_STATION_MODE; in change_virtual_intf()
1307 wilc_set_operation_mode(vif, wilc_get_vif_idx(vif), in change_virtual_intf()
1308 WILC_STATION_MODE, vif->idx); in change_virtual_intf()
1315 vif->connecting = false; in change_virtual_intf()
1318 vif->monitor_flag = 0; in change_virtual_intf()
1319 vif->iftype = WILC_CLIENT_MODE; in change_virtual_intf()
1322 wilc_set_operation_mode(vif, wilc_get_vif_idx(vif), in change_virtual_intf()
1323 WILC_STATION_MODE, vif->idx); in change_virtual_intf()
1329 vif->iftype = WILC_AP_MODE; in change_virtual_intf()
1332 wilc_set_operation_mode(vif, wilc_get_vif_idx(vif), in change_virtual_intf()
1333 WILC_AP_MODE, vif->idx); in change_virtual_intf()
1339 vif->iftype = WILC_GO_MODE; in change_virtual_intf()
1342 wilc_set_operation_mode(vif, wilc_get_vif_idx(vif), in change_virtual_intf()
1343 WILC_AP_MODE, vif->idx); in change_virtual_intf()
1357 struct wilc_vif *vif = netdev_priv(dev); in start_ap() local
1366 return wilc_add_beacon(vif, settings->beacon_interval, in start_ap()
1373 struct wilc_vif *vif = netdev_priv(dev); in change_beacon() local
1375 return wilc_add_beacon(vif, 0, 0, beacon); in change_beacon()
1381 struct wilc_vif *vif = netdev_priv(dev); in stop_ap() local
1385 ret = wilc_del_beacon(vif); in stop_ap()
1397 struct wilc_vif *vif = netdev_priv(dev); in add_station() local
1398 struct wilc_priv *priv = &vif->priv; in add_station()
1400 if (vif->iftype == WILC_AP_MODE || vif->iftype == WILC_GO_MODE) { in add_station()
1404 ret = wilc_add_station(vif, mac, params); in add_station()
1417 struct wilc_vif *vif = netdev_priv(dev); in del_station() local
1418 struct wilc_priv *priv = &vif->priv; in del_station()
1421 if (!(vif->iftype == WILC_AP_MODE || vif->iftype == WILC_GO_MODE)) in del_station()
1427 ret = wilc_del_allstation(vif, info->sta_associated_bss); in del_station()
1429 ret = wilc_del_station(vif, mac); in del_station()
1439 struct wilc_vif *vif = netdev_priv(dev); in change_station() local
1441 if (vif->iftype == WILC_AP_MODE || vif->iftype == WILC_GO_MODE) { in change_station()
1442 ret = wilc_edit_station(vif, mac, params); in change_station()
1451 struct wilc_vif *vif; in wilc_get_vif_from_type() local
1453 list_for_each_entry_rcu(vif, &wl->vif_list, list) { in wilc_get_vif_from_type()
1454 if (vif->iftype == type) in wilc_get_vif_from_type()
1455 return vif; in wilc_get_vif_from_type()
1468 struct wilc_vif *vif; in add_virtual_intf() local
1477 vif = wilc_get_vif_from_type(wl, WILC_AP_MODE); in add_virtual_intf()
1478 if (!vif) { in add_virtual_intf()
1479 vif = wilc_get_vif_from_type(wl, WILC_GO_MODE); in add_virtual_intf()
1480 if (!vif) { in add_virtual_intf()
1486 if (vif->monitor_flag) { in add_virtual_intf()
1491 ndev = wilc_wfi_init_mon_interface(wl, name, vif->ndev); in add_virtual_intf()
1493 vif->monitor_flag = 1; in add_virtual_intf()
1499 wdev = &vif->priv.wdev; in add_virtual_intf()
1524 vif = wilc_netdev_ifc_init(wl, name, iftype, type, true); in add_virtual_intf()
1525 if (IS_ERR(vif)) in add_virtual_intf()
1526 return ERR_CAST(vif); in add_virtual_intf()
1528 return &vif->priv.wdev; in add_virtual_intf()
1534 struct wilc_vif *vif; in del_virtual_intf() local
1539 vif = netdev_priv(wdev->netdev); in del_virtual_intf()
1541 cfg80211_unregister_netdevice(vif->ndev); in del_virtual_intf()
1542 vif->monitor_flag = 0; in del_virtual_intf()
1544 wilc_set_operation_mode(vif, 0, 0, 0); in del_virtual_intf()
1546 list_del_rcu(&vif->list); in del_virtual_intf()
1573 struct wilc_vif *vif; in wilc_set_wakeup() local
1577 vif = wilc_get_wl_to_vif(wl); in wilc_set_wakeup()
1578 if (IS_ERR(vif)) { in wilc_set_wakeup()
1583 netdev_info(vif->ndev, "cfg set wake up = %d\n", enabled); in wilc_set_wakeup()
1594 struct wilc_vif *vif; in set_tx_power() local
1600 vif = wilc_get_wl_to_vif(wl); in set_tx_power()
1601 if (IS_ERR(vif)) { in set_tx_power()
1606 netdev_info(vif->ndev, "Setting tx power %d\n", tx_power); in set_tx_power()
1611 ret = wilc_set_tx_power(vif, tx_power); in set_tx_power()
1613 netdev_err(vif->ndev, "Failed to set tx power\n"); in set_tx_power()
1623 struct wilc_vif *vif = netdev_priv(wdev->netdev); in get_tx_power() local
1624 struct wilc *wl = vif->wilc; in get_tx_power()
1630 ret = wilc_get_tx_power(vif, (u8 *)dbm); in get_tx_power()
1632 netdev_err(vif->ndev, "Failed to get tx power\n"); in get_tx_power()
1711 struct wilc_vif *vif; in wilc_cfg80211_init() local
1740 vif = wilc_netdev_ifc_init(wl, "wlan%d", WILC_STATION_MODE, in wilc_cfg80211_init()
1742 if (IS_ERR(vif)) { in wilc_cfg80211_init()
1743 ret = PTR_ERR(vif); in wilc_cfg80211_init()
1824 struct wilc_vif *vif = netdev_priv(net); in wilc_init_host_int() local
1825 struct wilc_priv *priv = &vif->priv; in wilc_init_host_int()
1840 struct wilc_vif *vif = netdev_priv(net); in wilc_deinit_host_int() local
1841 struct wilc_priv *priv = &vif->priv; in wilc_deinit_host_int()
1845 flush_workqueue(vif->wilc->hif_workqueue); in wilc_deinit_host_int()
1847 ret = wilc_deinit(vif); in wilc_deinit_host_int()