diff --git a/drivers/staging/rtl8723bs/core/rtw_ap.c b/drivers/staging/rtl8723bs/core/rtw_ap.c index dd361714f9ac..27abd6021ca9 100644 --- a/drivers/staging/rtl8723bs/core/rtw_ap.c +++ b/drivers/staging/rtl8723bs/core/rtw_ap.c @@ -782,7 +782,7 @@ int rtw_check_beacon_data(struct adapter *padapter, u8 *pbuf, int len) memcpy(ie, pbuf, pbss_network->ie_length); - if (pbss_network->infrastructure_mode != Ndis802_11APMode) + if (pbss_network->infrastructure_mode != NL80211_IFTYPE_AP) return _FAIL; pbss_network->rssi = 0; @@ -1889,7 +1889,7 @@ void rtw_ap_restore_network(struct adapter *padapter) char chk_alive_list[NUM_STA]; int i; - rtw_setopmode_cmd(padapter, Ndis802_11APMode, false); + rtw_setopmode_cmd(padapter, NL80211_IFTYPE_AP, false); set_channel_bwmode(padapter, pmlmeext->cur_channel, diff --git a/drivers/staging/rtl8723bs/core/rtw_cmd.c b/drivers/staging/rtl8723bs/core/rtw_cmd.c index b932670f5d63..c3f9ff5ffb43 100644 --- a/drivers/staging/rtl8723bs/core/rtw_cmd.c +++ b/drivers/staging/rtl8723bs/core/rtw_cmd.c @@ -682,7 +682,7 @@ u8 rtw_joinbss_cmd(struct adapter *padapter, struct wlan_network *pnetwork) struct security_priv *psecuritypriv = &padapter->securitypriv; struct registry_priv *pregistrypriv = &padapter->registrypriv; struct ht_priv *phtpriv = &pmlmepriv->htpriv; - enum ndis_802_11_network_infrastructure ndis_network_mode = pnetwork->network.infrastructure_mode; + enum nl80211_iftype ndis_network_mode = pnetwork->network.infrastructure_mode; struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv; struct mlme_ext_info *pmlmeinfo = &pmlmeext->mlmext_info; u32 tmp_len; @@ -699,17 +699,15 @@ u8 rtw_joinbss_cmd(struct adapter *padapter, struct wlan_network *pnetwork) /* for hidden ap to set fw_state here */ if (!check_fwstate(pmlmepriv, WIFI_STATION_STATE | WIFI_ADHOC_STATE)) { switch (ndis_network_mode) { - case Ndis802_11IBSS: + case NL80211_IFTYPE_ADHOC: set_fwstate(pmlmepriv, WIFI_ADHOC_STATE); break; - case Ndis802_11Infrastructure: + case NL80211_IFTYPE_STATION: set_fwstate(pmlmepriv, WIFI_STATION_STATE); break; - case Ndis802_11APMode: - case Ndis802_11AutoUnknown: - case Ndis802_11InfrastructureMax: + default: break; } } @@ -832,7 +830,7 @@ exit: return res; } -u8 rtw_setopmode_cmd(struct adapter *padapter, enum ndis_802_11_network_infrastructure networktype, bool enqueue) +u8 rtw_setopmode_cmd(struct adapter *padapter, enum nl80211_iftype networktype, bool enqueue) { struct cmd_obj *ph2c; struct setopmode_parm *psetop; diff --git a/drivers/staging/rtl8723bs/core/rtw_ioctl_set.c b/drivers/staging/rtl8723bs/core/rtw_ioctl_set.c index 85f50ef44812..c8992a148508 100644 --- a/drivers/staging/rtl8723bs/core/rtw_ioctl_set.c +++ b/drivers/staging/rtl8723bs/core/rtw_ioctl_set.c @@ -278,15 +278,15 @@ exit: } u8 rtw_set_802_11_infrastructure_mode(struct adapter *padapter, - enum ndis_802_11_network_infrastructure networktype) + enum nl80211_iftype networktype) { struct mlme_priv *pmlmepriv = &padapter->mlmepriv; struct wlan_network *cur_network = &pmlmepriv->cur_network; - enum ndis_802_11_network_infrastructure *pold_state = &(cur_network->network.infrastructure_mode); + enum nl80211_iftype *pold_state = &(cur_network->network.infrastructure_mode); if (*pold_state != networktype) { - if (*pold_state == Ndis802_11APMode) { - /* change to other mode from Ndis802_11APMode */ + if (*pold_state == NL80211_IFTYPE_AP) { + /* change to other mode from AP mode */ cur_network->join_res = -1; stop_ap_mode(padapter); @@ -294,14 +294,14 @@ u8 rtw_set_802_11_infrastructure_mode(struct adapter *padapter, spin_lock_bh(&pmlmepriv->lock); - if (check_fwstate(pmlmepriv, _FW_LINKED) || (*pold_state == Ndis802_11IBSS)) + if (check_fwstate(pmlmepriv, _FW_LINKED) || (*pold_state == NL80211_IFTYPE_ADHOC)) rtw_disassoc_cmd(padapter, 0, true); if (check_fwstate(pmlmepriv, _FW_LINKED) || check_fwstate(pmlmepriv, WIFI_ADHOC_MASTER_STATE)) rtw_free_assoc_resources(padapter, 1); - if ((*pold_state == Ndis802_11Infrastructure) || (*pold_state == Ndis802_11IBSS)) { + if ((*pold_state == NL80211_IFTYPE_STATION) || (*pold_state == NL80211_IFTYPE_ADHOC)) { if (check_fwstate(pmlmepriv, _FW_LINKED)) rtw_indicate_disconnect(padapter); /* will clr Linked_state; before this function, we must have checked whether issue dis-assoc_cmd or not */ } @@ -311,23 +311,22 @@ u8 rtw_set_802_11_infrastructure_mode(struct adapter *padapter, _clr_fwstate_(pmlmepriv, ~WIFI_NULL_STATE); switch (networktype) { - case Ndis802_11IBSS: + case NL80211_IFTYPE_ADHOC: set_fwstate(pmlmepriv, WIFI_ADHOC_STATE); break; - case Ndis802_11Infrastructure: + case NL80211_IFTYPE_STATION: set_fwstate(pmlmepriv, WIFI_STATION_STATE); break; - case Ndis802_11APMode: + case NL80211_IFTYPE_AP: set_fwstate(pmlmepriv, WIFI_AP_STATE); start_ap_mode(padapter); /* rtw_indicate_connect(padapter); */ break; - case Ndis802_11AutoUnknown: - case Ndis802_11InfrastructureMax: + default: break; } diff --git a/drivers/staging/rtl8723bs/core/rtw_mlme.c b/drivers/staging/rtl8723bs/core/rtw_mlme.c index 48986e9de77b..8c09ceb0a1df 100644 --- a/drivers/staging/rtl8723bs/core/rtw_mlme.c +++ b/drivers/staging/rtl8723bs/core/rtw_mlme.c @@ -51,7 +51,7 @@ int rtw_init_mlme_priv(struct adapter *padapter) pmlmepriv->pscanned = NULL; pmlmepriv->fw_state = WIFI_STATION_STATE; /* Must sync with rtw_wdev_alloc() */ - pmlmepriv->cur_network.network.infrastructure_mode = Ndis802_11AutoUnknown; + pmlmepriv->cur_network.network.infrastructure_mode = NL80211_IFTYPE_UNSPECIFIED; pmlmepriv->scan_mode = SCAN_ACTIVE;/* 1: active, 0: passive. Maybe someday we should rename this variable to "active_mode" (Jeff) */ spin_lock_init(&pmlmepriv->lock); @@ -1051,7 +1051,7 @@ static void rtw_joinbss_update_network(struct adapter *padapter, struct wlan_net /* update fw_state will clr _FW_UNDER_LINKING here indirectly */ switch (pnetwork->network.infrastructure_mode) { - case Ndis802_11Infrastructure: + case NL80211_IFTYPE_STATION: if (pmlmepriv->fw_state & WIFI_UNDER_WPS) pmlmepriv->fw_state = WIFI_STATION_STATE | WIFI_UNDER_WPS; @@ -1059,7 +1059,7 @@ static void rtw_joinbss_update_network(struct adapter *padapter, struct wlan_net pmlmepriv->fw_state = WIFI_STATION_STATE; break; - case Ndis802_11IBSS: + case NL80211_IFTYPE_ADHOC: pmlmepriv->fw_state = WIFI_ADHOC_STATE; break; default: @@ -2145,7 +2145,7 @@ void rtw_update_registrypriv_dev_network(struct adapter *adapter) pdev_network->configuration.ds_config = (pregistrypriv->channel); - if (cur_network->network.infrastructure_mode == Ndis802_11IBSS) + if (cur_network->network.infrastructure_mode == NL80211_IFTYPE_ADHOC) pdev_network->configuration.atim_window = (0); pdev_network->infrastructure_mode = (cur_network->network.infrastructure_mode); diff --git a/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c b/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c index adea7e38bace..208055e658aa 100644 --- a/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c +++ b/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c @@ -3901,10 +3901,10 @@ u8 collect_bss_info(struct adapter *padapter, union recv_frame *precv_frame, str val16 = rtw_get_capability((struct wlan_bssid_ex *)bssid); if (val16 & BIT(0)) { - bssid->infrastructure_mode = Ndis802_11Infrastructure; + bssid->infrastructure_mode = NL80211_IFTYPE_STATION; memcpy(bssid->mac_address, GetAddr2Ptr(pframe), ETH_ALEN); } else { - bssid->infrastructure_mode = Ndis802_11IBSS; + bssid->infrastructure_mode = NL80211_IFTYPE_ADHOC; memcpy(bssid->mac_address, GetAddr3Ptr(pframe), ETH_ALEN); } @@ -5039,15 +5039,15 @@ u8 setopmode_hdl(struct adapter *padapter, u8 *pbuf) struct mlme_ext_info *pmlmeinfo = &pmlmeext->mlmext_info; struct setopmode_parm *psetop = (struct setopmode_parm *)pbuf; - if (psetop->mode == Ndis802_11APMode) { + if (psetop->mode == NL80211_IFTYPE_AP) { pmlmeinfo->state = WIFI_FW_AP_STATE; type = _HW_STATE_AP_; /* start_ap_mode(padapter); */ - } else if (psetop->mode == Ndis802_11Infrastructure) { + } else if (psetop->mode == NL80211_IFTYPE_STATION) { pmlmeinfo->state &= ~(BIT(0) | BIT(1));/* clear state */ pmlmeinfo->state |= WIFI_FW_STATION_STATE;/* set to STATION_STATE */ type = _HW_STATE_STATION_; - } else if (psetop->mode == Ndis802_11IBSS) { + } else if (psetop->mode == NL80211_IFTYPE_ADHOC) { type = _HW_STATE_ADHOC_; } else { type = _HW_STATE_NOLINK_; @@ -5056,7 +5056,7 @@ u8 setopmode_hdl(struct adapter *padapter, u8 *pbuf) rtw_hal_set_hwreg(padapter, HW_VAR_SET_OPMODE, (u8 *)(&type)); /* set_msr(padapter, type); */ - if (psetop->mode == Ndis802_11APMode) { + if (psetop->mode == NL80211_IFTYPE_AP) { /* Do this after port switch to */ /* prevent from downloading rsvd page to wrong port */ rtw_btcoex_media_status_notify(padapter, 1); /* connect */ @@ -5079,7 +5079,7 @@ u8 createbss_hdl(struct adapter *padapter, u8 *pbuf) } /* below is for ad-hoc master */ - if (pparm->network.infrastructure_mode == Ndis802_11IBSS) { + if (pparm->network.infrastructure_mode == NL80211_IFTYPE_ADHOC) { rtw_joinbss_reset(padapter); pmlmeext->cur_bwmode = CHANNEL_WIDTH_20; diff --git a/drivers/staging/rtl8723bs/hal/hal_intf.c b/drivers/staging/rtl8723bs/hal/hal_intf.c index 9a3ebad35efc..e70dd5361f31 100644 --- a/drivers/staging/rtl8723bs/hal/hal_intf.c +++ b/drivers/staging/rtl8723bs/hal/hal_intf.c @@ -9,18 +9,18 @@ static void rtw_hal_init_opmode(struct adapter *padapter) { - enum ndis_802_11_network_infrastructure networkType = Ndis802_11InfrastructureMax; + enum nl80211_iftype networkType = NL80211_IFTYPE_UNSPECIFIED; struct mlme_priv *pmlmepriv = &(padapter->mlmepriv); signed int fw_state; fw_state = get_fwstate(pmlmepriv); if (fw_state & WIFI_ADHOC_STATE) - networkType = Ndis802_11IBSS; + networkType = NL80211_IFTYPE_ADHOC; else if (fw_state & WIFI_STATION_STATE) - networkType = Ndis802_11Infrastructure; + networkType = NL80211_IFTYPE_STATION; else if (fw_state & WIFI_AP_STATE) - networkType = Ndis802_11APMode; + networkType = NL80211_IFTYPE_AP; else return; diff --git a/drivers/staging/rtl8723bs/hal/rtl8723b_cmd.c b/drivers/staging/rtl8723bs/hal/rtl8723b_cmd.c index c35c7f1c38ef..0c6613fdb955 100644 --- a/drivers/staging/rtl8723bs/hal/rtl8723b_cmd.c +++ b/drivers/staging/rtl8723bs/hal/rtl8723b_cmd.c @@ -237,19 +237,19 @@ static void ConstructNullFunctionData( SetPwrMgt(fctrl); switch (cur_network->network.infrastructure_mode) { - case Ndis802_11Infrastructure: + case NL80211_IFTYPE_STATION: SetToDs(fctrl); ether_addr_copy(pwlanhdr->addr1, get_my_bssid(&(pmlmeinfo->network))); ether_addr_copy(pwlanhdr->addr2, myid(&(padapter->eeprompriv))); ether_addr_copy(pwlanhdr->addr3, StaAddr); break; - case Ndis802_11APMode: + case NL80211_IFTYPE_AP: SetFrDs(fctrl); ether_addr_copy(pwlanhdr->addr1, StaAddr); ether_addr_copy(pwlanhdr->addr2, get_my_bssid(&(pmlmeinfo->network))); ether_addr_copy(pwlanhdr->addr3, myid(&(padapter->eeprompriv))); break; - case Ndis802_11IBSS: + case NL80211_IFTYPE_ADHOC: default: ether_addr_copy(pwlanhdr->addr1, StaAddr); ether_addr_copy(pwlanhdr->addr2, myid(&(padapter->eeprompriv))); diff --git a/drivers/staging/rtl8723bs/include/rtw_cmd.h b/drivers/staging/rtl8723bs/include/rtw_cmd.h index f78aa0d7abc5..357d8cb452c6 100644 --- a/drivers/staging/rtl8723bs/include/rtw_cmd.h +++ b/drivers/staging/rtl8723bs/include/rtw_cmd.h @@ -586,7 +586,7 @@ extern u8 rtw_clearstakey_cmd(struct adapter *padapter, struct sta_info *sta, u8 extern u8 rtw_joinbss_cmd(struct adapter *padapter, struct wlan_network *pnetwork); u8 rtw_disassoc_cmd(struct adapter *padapter, u32 deauth_timeout_ms, bool enqueue); -extern u8 rtw_setopmode_cmd(struct adapter *padapter, enum ndis_802_11_network_infrastructure networktype, bool enqueue); +extern u8 rtw_setopmode_cmd(struct adapter *padapter, enum nl80211_iftype networktype, bool enqueue); extern u8 rtw_setrfintfs_cmd(struct adapter *padapter, u8 mode); extern u8 rtw_gettssi_cmd(struct adapter *padapter, u8 offset, u8 *pval); diff --git a/drivers/staging/rtl8723bs/include/rtw_ioctl_set.h b/drivers/staging/rtl8723bs/include/rtw_ioctl_set.h index c3a1d1a84f78..768e4868ecfd 100644 --- a/drivers/staging/rtl8723bs/include/rtw_ioctl_set.h +++ b/drivers/staging/rtl8723bs/include/rtw_ioctl_set.h @@ -13,7 +13,7 @@ u8 rtw_set_802_11_authentication_mode(struct adapter *pdapter, enum ndis_802_11_ u8 rtw_set_802_11_add_wep(struct adapter *padapter, struct ndis_802_11_wep *wep); u8 rtw_set_802_11_disassociate(struct adapter *padapter); u8 rtw_set_802_11_bssid_list_scan(struct adapter *padapter, struct ndis_802_11_ssid *pssid, int ssid_max_num); -u8 rtw_set_802_11_infrastructure_mode(struct adapter *padapter, enum ndis_802_11_network_infrastructure networktype); +u8 rtw_set_802_11_infrastructure_mode(struct adapter *padapter, enum nl80211_iftype networktype); u8 rtw_set_802_11_ssid(struct adapter *padapter, struct ndis_802_11_ssid *ssid); u8 rtw_set_802_11_connect(struct adapter *padapter, u8 *bssid, struct ndis_802_11_ssid *ssid); diff --git a/drivers/staging/rtl8723bs/include/wlan_bssdef.h b/drivers/staging/rtl8723bs/include/wlan_bssdef.h index 812a68394268..bcc5a1712670 100644 --- a/drivers/staging/rtl8723bs/include/wlan_bssdef.h +++ b/drivers/staging/rtl8723bs/include/wlan_bssdef.h @@ -42,14 +42,6 @@ struct ndis_802_11_conf { u32 ds_config; /* Frequency, units are kHz */ }; -enum ndis_802_11_network_infrastructure { - Ndis802_11IBSS, - Ndis802_11Infrastructure, - Ndis802_11AutoUnknown, - Ndis802_11InfrastructureMax, /* Not a real value, defined as upper bound */ - Ndis802_11APMode, -}; - struct ndis_802_11_fix_ie { u8 time_stamp[8]; u16 beacon_interval; @@ -125,10 +117,6 @@ struct ndis_802_11_wep { /* MIC check time, 60 seconds. */ #define MIC_CHECK_TIME 60000000 -#ifndef Ndis802_11APMode -#define Ndis802_11APMode (Ndis802_11InfrastructureMax + 1) -#endif - struct wlan_phy_info { u8 signal_strength;/* in percentage) */ u8 signal_quality;/* in percentage) */ @@ -161,7 +149,7 @@ struct wlan_bssid_ex { long rssi;/* in dBM, raw data , get from PHY) */ enum ndis_802_11_network_type network_type_in_use; struct ndis_802_11_conf configuration; - enum ndis_802_11_network_infrastructure infrastructure_mode; + enum nl80211_iftype infrastructure_mode; NDIS_802_11_RATES_EX supported_rates; struct wlan_phy_info phy_info; u32 ie_length; diff --git a/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c b/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c index 8d6c59b52f6c..ddbbd32f547a 100644 --- a/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c +++ b/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c @@ -1027,7 +1027,6 @@ static int cfg80211_rtw_change_iface(struct wiphy *wiphy, struct vif_params *params) { enum nl80211_iftype old_type; - enum ndis_802_11_network_infrastructure networkType; struct adapter *padapter = rtw_netdev_priv(ndev); struct wireless_dev *rtw_wdev = padapter->rtw_wdev; struct mlme_ext_priv *pmlmeext = &(padapter->mlmeextpriv); @@ -1057,30 +1056,22 @@ static int cfg80211_rtw_change_iface(struct wiphy *wiphy, pmlmeext->action_public_dialog_token = 0xff; } - switch (type) { - case NL80211_IFTYPE_ADHOC: - networkType = Ndis802_11IBSS; - break; - case NL80211_IFTYPE_STATION: - networkType = Ndis802_11Infrastructure; - break; - case NL80211_IFTYPE_AP: - networkType = Ndis802_11APMode; - break; - default: + if (type != NL80211_IFTYPE_ADHOC && + type != NL80211_IFTYPE_STATION && + type != NL80211_IFTYPE_AP) { ret = -EOPNOTSUPP; goto exit; } rtw_wdev->iftype = type; - if (!rtw_set_802_11_infrastructure_mode(padapter, networkType)) { + if (!rtw_set_802_11_infrastructure_mode(padapter, type)) { rtw_wdev->iftype = old_type; ret = -EPERM; goto exit; } - rtw_setopmode_cmd(padapter, networkType, true); + rtw_setopmode_cmd(padapter, type, true); exit: @@ -1611,12 +1602,12 @@ static int cfg80211_rtw_leave_ibss(struct wiphy *wiphy, struct net_device *ndev) rtw_wdev->iftype = NL80211_IFTYPE_STATION; - if (!rtw_set_802_11_infrastructure_mode(padapter, Ndis802_11Infrastructure)) { + if (!rtw_set_802_11_infrastructure_mode(padapter, NL80211_IFTYPE_STATION)) { rtw_wdev->iftype = old_type; ret = -EPERM; goto leave_ibss; } - rtw_setopmode_cmd(padapter, Ndis802_11Infrastructure, true); + rtw_setopmode_cmd(padapter, NL80211_IFTYPE_STATION, true); } leave_ibss: diff --git a/drivers/staging/rtl8723bs/os_dep/os_intfs.c b/drivers/staging/rtl8723bs/os_dep/os_intfs.c index b63db61649af..2d51786a4ba0 100644 --- a/drivers/staging/rtl8723bs/os_dep/os_intfs.c +++ b/drivers/staging/rtl8723bs/os_dep/os_intfs.c @@ -19,7 +19,7 @@ static int rtw_rfintfs = HWPI; static int rtw_lbkmode;/* RTL8712_AIR_TRX; */ -static int rtw_network_mode = Ndis802_11IBSS;/* Ndis802_11Infrastructure;infra, ad-hoc, auto */ +static int rtw_network_mode = NL80211_IFTYPE_ADHOC;/* infra, ad-hoc, auto */ /* struct ndis_802_11_ssid ssid; */ static int rtw_channel = 1;/* ad-hoc support requirement */ static int rtw_wireless_mode = WIRELESS_11BG_24N;