From 5f3e21c5dea72ef4b7ebe3c55c75a8bd890353e9 Mon Sep 17 00:00:00 2001 From: Christian B Date: Wed, 15 Nov 2017 08:18:50 +0100 Subject: [PATCH 01/13] Some fixes to Makefile * Build on all available cores * Check for available GCC 4.9 on "EXTRA_CFLAGS += -Wno-date-time" --- Makefile | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/Makefile b/Makefile index f848e2a..2a3e8c3 100755 --- a/Makefile +++ b/Makefile @@ -15,8 +15,12 @@ EXTRA_CFLAGS += -Wno-unused-function EXTRA_CFLAGS += -Wno-unused EXTRA_CFLAGS += -Wno-date-time EXTRA_CFLAGS += -Wno-misleading-indentation -EXTRA_CFLAGS += -Wno-uninitialized -EXTRA_CFLAGS += -Wno-error=date-time # Fix compile error on gcc 4.9 and later +#EXTRA_CFLAGS += -Wno-uninitialized + +GCC_VER_49 := $(shell echo `$(CC) -dumpversion | cut -f1-2 -d.` \>= 4.9 | bc ) +ifeq ($(GCC_VER_49),1) +EXTRA_CFLAGS += -Wno-date-time # Fix compile error && warning on gcc 4.9 and later +endif EXTRA_CFLAGS += -I$(src)/include EXTRA_CFLAGS += -I$(src)/hal/phydm @@ -1866,7 +1870,7 @@ export CONFIG_RTL8812AU = m all: modules modules: - $(MAKE) ARCH=$(ARCH) CROSS_COMPILE=$(CROSS_COMPILE) -C $(KSRC) M=$(shell pwd) modules + $(MAKE) -j $(shell nproc || echo 1) ARCH=$(ARCH) CROSS_COMPILE=$(CROSS_COMPILE) -C $(KSRC) M=$(shell pwd) modules strip: $(CROSS_COMPILE)strip $(MODULE_NAME).ko --strip-unneeded From d31682febe438e4092693c3fc489b5c101c9dba3 Mon Sep 17 00:00:00 2001 From: Christian B Date: Wed, 15 Nov 2017 09:23:18 +0100 Subject: [PATCH 02/13] Remove Intel WIDI code * Intel WIDI project is discontinued, removed support. --- Makefile | 6 ------ 1 file changed, 6 deletions(-) diff --git a/Makefile b/Makefile index 2a3e8c3..251b4db 100755 --- a/Makefile +++ b/Makefile @@ -54,7 +54,6 @@ CONFIG_USB_AUTOSUSPEND = n CONFIG_HW_PWRP_DETECTION = n CONFIG_WIFI_TEST = n CONFIG_BT_COEXIST = n -CONFIG_INTEL_WIDI = n CONFIG_WAPI_SUPPORT = n CONFIG_EFUSE_CONFIG_FILE = y CONFIG_EXT_CLK = n @@ -890,10 +889,6 @@ ifeq ($(CONFIG_BT_COEXIST), y) EXTRA_CFLAGS += -DCONFIG_BT_COEXIST endif -ifeq ($(CONFIG_INTEL_WIDI), y) -EXTRA_CFLAGS += -DCONFIG_INTEL_WIDI -endif - ifeq ($(CONFIG_WAPI_SUPPORT), y) EXTRA_CFLAGS += -DCONFIG_WAPI_SUPPORT endif @@ -1845,7 +1840,6 @@ endif $(MODULE_NAME)-y += $(rtk_core) -$(MODULE_NAME)-$(CONFIG_INTEL_WIDI) += core/rtw_intel_widi.o $(MODULE_NAME)-$(CONFIG_WAPI_SUPPORT) += core/rtw_wapi.o \ core/rtw_wapi_sms4.o From fbb0b8d2c0f339c41d04778d46c38cbd3c4505a5 Mon Sep 17 00:00:00 2001 From: Christian B Date: Wed, 15 Nov 2017 09:24:23 +0100 Subject: [PATCH 03/13] Remove Intel WIDI support --- core/rtw_cmd.c | 5 ----- 1 file changed, 5 deletions(-) diff --git a/core/rtw_cmd.c b/core/rtw_cmd.c index 1dc8d31..2ee0b51 100644 --- a/core/rtw_cmd.c +++ b/core/rtw_cmd.c @@ -4108,11 +4108,6 @@ u8 rtw_drvextra_cmd_hdl(_adapter *padapter, unsigned char *pbuf) case CHECK_HIQ_WK_CID: rtw_chk_hi_queue_hdl(padapter); break; -#endif -#ifdef CONFIG_INTEL_WIDI - case INTEl_WIDI_WK_CID: - intel_widi_wk_hdl(padapter, pdrvextra_cmd->type, pdrvextra_cmd->pbuf); - break; #endif /* add for CONFIG_IEEE80211W, none 11w can use it */ case RESET_SECURITYPRIV: From 30f4034da87c0294aa44ba29b5e0a78b3cc51226 Mon Sep 17 00:00:00 2001 From: Christian B Date: Wed, 15 Nov 2017 09:26:51 +0100 Subject: [PATCH 04/13] Remove Intel WIDI Support * Intel WIDI project is dead, removed support (code) --- core/rtw_mlme.c | 30 ------------------------------ 1 file changed, 30 deletions(-) diff --git a/core/rtw_mlme.c b/core/rtw_mlme.c index 71ffc2a..4cb54db 100644 --- a/core/rtw_mlme.c +++ b/core/rtw_mlme.c @@ -1279,13 +1279,6 @@ void rtw_surveydone_event_callback(_adapter *adapter, u8 *pbuf) || _SUCCESS != rtw_sitesurvey_cmd(adapter, &pmlmepriv->assoc_ssid, 1, NULL, 0) ) { rtw_set_to_roam(adapter, 0); -#ifdef CONFIG_INTEL_WIDI - if (adapter->mlmepriv.widi_state == INTEL_WIDI_STATE_ROAMING) { - _rtw_memset(pmlmepriv->sa_ext, 0x00, L2SDTA_SERVICE_VE_LEN); - intel_widi_wk_cmd(adapter, INTEL_WIDI_LISTEN_WK, NULL, 0); - RTW_INFO("change to widi listen\n"); - } -#endif /* CONFIG_INTEL_WIDI */ rtw_free_assoc_resources(adapter, 1); rtw_indicate_disconnect(adapter, 0, _FALSE); } else @@ -1515,20 +1508,12 @@ void rtw_indicate_connect(_adapter *padapter) } rtw_set_to_roam(padapter, 0); -#ifdef CONFIG_INTEL_WIDI - if (padapter->mlmepriv.widi_state == INTEL_WIDI_STATE_ROAMING) { - _rtw_memset(pmlmepriv->sa_ext, 0x00, L2SDTA_SERVICE_VE_LEN); - intel_widi_wk_cmd(padapter, INTEL_WIDI_LISTEN_WK, NULL, 0); - RTW_INFO("change to widi listen\n"); - } -#endif /* CONFIG_INTEL_WIDI */ if (!check_fwstate(&padapter->mlmepriv, WIFI_AP_STATE)) rtw_mi_set_scan_deny(padapter, 3000); } - /* *rtw_indicate_disconnect: the caller has to lock pmlmepriv->lock */ @@ -2442,10 +2427,6 @@ void rtw_stadel_event_callback(_adapter *adapter, u8 *pbuf) roam = _TRUE; roam_target = pmlmepriv->roam_network; } -#ifdef CONFIG_INTEL_WIDI - else if (adapter->mlmepriv.widi_state == INTEL_WIDI_STATE_CONNECTED) - roam = _TRUE; -#endif /* CONFIG_INTEL_WIDI */ if (roam == _TRUE) { if (rtw_to_roam(adapter) > 0) @@ -2471,10 +2452,6 @@ void rtw_stadel_event_callback(_adapter *adapter, u8 *pbuf) _exit_critical_bh(&(pmlmepriv->scanned_queue.lock), &irqL); rtw_indicate_disconnect(adapter, *(u16 *)pstadel->rsvd, pstadel->locally_generated); -#ifdef CONFIG_INTEL_WIDI - if (!rtw_to_roam(adapter)) - process_intel_widi_disconnect(adapter, 1); -#endif /* CONFIG_INTEL_WIDI */ _rtw_roaming(adapter, roam_target); } @@ -2593,13 +2570,6 @@ void _rtw_join_timeout_handler(_adapter *adapter) } break; } else { -#ifdef CONFIG_INTEL_WIDI - if (adapter->mlmepriv.widi_state == INTEL_WIDI_STATE_ROAMING) { - _rtw_memset(pmlmepriv->sa_ext, 0x00, L2SDTA_SERVICE_VE_LEN); - intel_widi_wk_cmd(adapter, INTEL_WIDI_LISTEN_WK, NULL, 0); - RTW_INFO("change to widi listen\n"); - } -#endif /* CONFIG_INTEL_WIDI */ RTW_INFO("%s We've try roaming but fail\n", __FUNCTION__); rtw_indicate_disconnect(adapter, 0, _FALSE); break; From 3a546402814ac15b1620bfbc041f04d0fd53130c Mon Sep 17 00:00:00 2001 From: Christian B Date: Wed, 15 Nov 2017 09:30:12 +0100 Subject: [PATCH 05/13] Removed Intel WIDI Support --- core/rtw_mlme_ext.c | 68 --------------------------------------------- 1 file changed, 68 deletions(-) diff --git a/core/rtw_mlme_ext.c b/core/rtw_mlme_ext.c index 9ff7eaf..cc65410 100755 --- a/core/rtw_mlme_ext.c +++ b/core/rtw_mlme_ext.c @@ -5645,9 +5645,6 @@ void issue_probersp_p2p(_adapter *padapter, unsigned char *da) #ifdef CONFIG_WFD u32 wfdielen = 0; #endif -#ifdef CONFIG_INTEL_WIDI - u8 zero_array_check[L2SDTA_SERVICE_VE_LEN] = { 0x00 }; -#endif /* CONFIG_INTEL_WIDI */ /* RTW_INFO("%s\n", __FUNCTION__); */ @@ -5749,39 +5746,6 @@ void issue_probersp_p2p(_adapter *padapter, unsigned char *da) /* Value: */ wpsie[wpsielen++] = WPS_VERSION_1; /* Version 1.0 */ -#ifdef CONFIG_INTEL_WIDI - /* Commented by Kurt */ - /* Appended WiDi info. only if we did issued_probereq_widi(), and then we saved ven. ext. in pmlmepriv->sa_ext. */ - if (_rtw_memcmp(pmlmepriv->sa_ext, zero_array_check, L2SDTA_SERVICE_VE_LEN) == _FALSE - || pmlmepriv->num_p2p_sdt != 0) { - /* Sec dev type */ - *(u16 *)(wpsie + wpsielen) = cpu_to_be16(WPS_ATTR_SEC_DEV_TYPE_LIST); - wpsielen += 2; - - /* Length: */ - *(u16 *)(wpsie + wpsielen) = cpu_to_be16(0x0008); - wpsielen += 2; - - /* Value: */ - /* Category ID */ - *(u16 *)(wpsie + wpsielen) = cpu_to_be16(WPS_PDT_CID_DISPLAYS); - wpsielen += 2; - - /* OUI */ - *(u32 *)(wpsie + wpsielen) = cpu_to_be32(INTEL_DEV_TYPE_OUI); - wpsielen += 4; - - *(u16 *)(wpsie + wpsielen) = cpu_to_be16(WPS_PDT_SCID_WIDI_CONSUMER_SINK); - wpsielen += 2; - - if (_rtw_memcmp(pmlmepriv->sa_ext, zero_array_check, L2SDTA_SERVICE_VE_LEN) == _FALSE) { - /* Vendor Extension */ - _rtw_memcpy(wpsie + wpsielen, pmlmepriv->sa_ext, L2SDTA_SERVICE_VE_LEN); - wpsielen += L2SDTA_SERVICE_VE_LEN; - } - } -#endif /* CONFIG_INTEL_WIDI */ - /* WiFi Simple Config State */ /* Type: */ *(u16 *)(wpsie + wpsielen) = cpu_to_be16(WPS_ATTR_SIMPLE_CONF_STATE); @@ -6406,13 +6370,6 @@ unsigned int on_action_public_p2p(union recv_frame *precv_frame) result = process_p2p_group_negotation_req(pwdinfo, frame_body, len); issue_p2p_GO_response(padapter, GetAddr2Ptr(pframe), frame_body, len, result); -#ifdef CONFIG_INTEL_WIDI - if (padapter->mlmepriv.widi_state == INTEL_WIDI_STATE_LISTEN) { - padapter->mlmepriv.widi_state = INTEL_WIDI_STATE_WFD_CONNECTION; - _cancel_timer_ex(&(padapter->mlmepriv.listen_timer)); - intel_widi_wk_cmd(padapter, INTEL_WIDI_LISTEN_STOP_WK, NULL, 0); - } -#endif /* CONFIG_INTEL_WIDI */ /* Commented by Albert 20110718 */ /* No matter negotiating or negotiation failure, the driver should set up the restore P2P state timer. */ @@ -6564,11 +6521,6 @@ unsigned int on_action_public_p2p(union recv_frame *precv_frame) } } else { rtw_p2p_set_state(pwdinfo, P2P_STATE_RECV_INVITE_REQ_DISMATCH); -#ifdef CONFIG_INTEL_WIDI - _rtw_memcpy(pwdinfo->p2p_peer_device_addr, group_id.go_device_addr , ETH_ALEN); - rtw_p2p_set_role(pwdinfo, P2P_ROLE_CLIENT); -#endif /* CONFIG_INTEL_WIDI */ - status_code = P2P_STATUS_FAIL_UNKNOWN_P2PGROUP; } } @@ -6614,13 +6566,6 @@ unsigned int on_action_public_p2p(union recv_frame *precv_frame) issue_p2p_invitation_response(padapter, GetAddr2Ptr(pframe), pwdinfo->inviteresp_info.token, status_code); _set_timer(&pwdinfo->restore_p2p_state_timer, 3000); } -#ifdef CONFIG_INTEL_WIDI - if (padapter->mlmepriv.widi_state == INTEL_WIDI_STATE_LISTEN) { - padapter->mlmepriv.widi_state = INTEL_WIDI_STATE_WFD_CONNECTION; - _cancel_timer_ex(&(padapter->mlmepriv.listen_timer)); - intel_widi_wk_cmd(padapter, INTEL_WIDI_LISTEN_STOP_WK, NULL, 0); - } -#endif /* CONFIG_INTEL_WIDI */ break; } case P2P_INVIT_RESP: { @@ -6685,13 +6630,6 @@ unsigned int on_action_public_p2p(union recv_frame *precv_frame) rtw_p2p_set_state(pwdinfo, P2P_STATE_RX_PROVISION_DIS_REQ); _set_timer(&pwdinfo->restore_p2p_state_timer, P2P_PROVISION_TIMEOUT); -#ifdef CONFIG_INTEL_WIDI - if (padapter->mlmepriv.widi_state == INTEL_WIDI_STATE_LISTEN) { - padapter->mlmepriv.widi_state = INTEL_WIDI_STATE_WFD_CONNECTION; - _cancel_timer_ex(&(padapter->mlmepriv.listen_timer)); - intel_widi_wk_cmd(padapter, INTEL_WIDI_LISTEN_STOP_WK, NULL, 0); - } -#endif /* CONFIG_INTEL_WIDI */ break; case P2P_PROVISION_DISC_RESP: @@ -10500,12 +10438,6 @@ u8 collect_bss_info(_adapter *padapter, union recv_frame *precv_frame, WLAN_BSSI } -#ifdef CONFIG_INTEL_WIDI - /* process_intel_widi_query_or_tigger(padapter, bssid); */ - if (process_intel_widi_query_or_tigger(padapter, bssid)) - return _FAIL; -#endif /* CONFIG_INTEL_WIDI */ - #if defined(DBG_RX_SIGNAL_DISPLAY_SSID_MONITORED) & 1 if (strcmp(bssid->Ssid.Ssid, DBG_RX_SIGNAL_DISPLAY_SSID_MONITORED) == 0) { RTW_INFO("Receiving %s("MAC_FMT", DSConfig:%u) from ch%u with ss:%3u, sq:%3u, RawRSSI:%3ld\n" From b0b91632ea017bb8078a3bba87d47d549d4369d9 Mon Sep 17 00:00:00 2001 From: Christian B Date: Wed, 15 Nov 2017 09:32:23 +0100 Subject: [PATCH 06/13] Removed Intel WIDI Support --- core/rtw_p2p.c | 67 +------------------------------------------------- 1 file changed, 1 insertion(+), 66 deletions(-) diff --git a/core/rtw_p2p.c b/core/rtw_p2p.c index ca69e57..2d36a20 100644 --- a/core/rtw_p2p.c +++ b/core/rtw_p2p.c @@ -1867,16 +1867,6 @@ u32 build_probe_resp_p2p_ie(struct wifidirect_info *pwdinfo, u8 *pbuf) { u8 p2pie[MAX_P2P_IE_LEN] = { 0x00 }; u32 len = 0, p2pielen = 0; -#ifdef CONFIG_INTEL_WIDI - struct mlme_priv *pmlmepriv = &(pwdinfo->padapter->mlmepriv); - u8 zero_array_check[L2SDTA_SERVICE_VE_LEN] = { 0x00 }; - u8 widi_version = 0, i = 0; - - if (_rtw_memcmp(pmlmepriv->sa_ext, zero_array_check, L2SDTA_SERVICE_VE_LEN) == _FALSE) - widi_version = 35; - else if (pmlmepriv->num_p2p_sdt != 0) - widi_version = 40; -#endif /* CONFIG_INTEL_WIDI */ /* P2P OUI */ p2pielen = 0; @@ -1959,13 +1949,7 @@ u32 build_probe_resp_p2p_ie(struct wifidirect_info *pwdinfo, u8 *pbuf) /* 21->P2P Device Address (6bytes) + Config Methods (2bytes) + Primary Device Type (8bytes) */ /* + NumofSecondDevType (1byte) + WPS Device Name ID field (2bytes) + WPS Device Name Len field (2bytes) */ /* *(u16*) ( p2pie + p2pielen ) = cpu_to_le16( 21 + pwdinfo->device_name_len ); */ -#ifdef CONFIG_INTEL_WIDI - if (widi_version == 35) - RTW_PUT_LE16(p2pie + p2pielen, 21 + 8 + pwdinfo->device_name_len); - else if (widi_version == 40) - RTW_PUT_LE16(p2pie + p2pielen, 21 + 8 * pmlmepriv->num_p2p_sdt + pwdinfo->device_name_len); - else -#endif /* CONFIG_INTEL_WIDI */ + RTW_PUT_LE16(p2pie + p2pielen, 21 + pwdinfo->device_name_len); p2pielen += 2; @@ -1980,25 +1964,6 @@ u32 build_probe_resp_p2p_ie(struct wifidirect_info *pwdinfo, u8 *pbuf) RTW_PUT_BE16(p2pie + p2pielen, pwdinfo->supported_wps_cm); p2pielen += 2; -#ifdef CONFIG_INTEL_WIDI - if (widi_version == 40) { - /* Primary Device Type */ - /* Category ID */ - /* *(u16*) ( p2pie + p2pielen ) = cpu_to_be16( WPS_PDT_CID_MULIT_MEDIA ); */ - RTW_PUT_BE16(p2pie + p2pielen, pmlmepriv->p2p_pdt_cid); - p2pielen += 2; - - /* OUI */ - /* *(u32*) ( p2pie + p2pielen ) = cpu_to_be32( WPSOUI ); */ - RTW_PUT_BE32(p2pie + p2pielen, WPSOUI); - p2pielen += 4; - - /* Sub Category ID */ - /* *(u16*) ( p2pie + p2pielen ) = cpu_to_be16( WPS_PDT_SCID_MEDIA_SERVER ); */ - RTW_PUT_BE16(p2pie + p2pielen, pmlmepriv->p2p_pdt_scid); - p2pielen += 2; - } else -#endif /* CONFIG_INTEL_WIDI */ { /* Primary Device Type */ /* Category ID */ @@ -2018,32 +1983,6 @@ u32 build_probe_resp_p2p_ie(struct wifidirect_info *pwdinfo, u8 *pbuf) } /* Number of Secondary Device Types */ -#ifdef CONFIG_INTEL_WIDI - if (widi_version == 35) { - p2pie[p2pielen++] = 0x01; - - RTW_PUT_BE16(p2pie + p2pielen, WPS_PDT_CID_DISPLAYS); - p2pielen += 2; - - RTW_PUT_BE32(p2pie + p2pielen, INTEL_DEV_TYPE_OUI); - p2pielen += 4; - - RTW_PUT_BE16(p2pie + p2pielen, P2P_SCID_WIDI_CONSUMER_SINK); - p2pielen += 2; - } else if (widi_version == 40) { - p2pie[p2pielen++] = pmlmepriv->num_p2p_sdt; - for (; i < pmlmepriv->num_p2p_sdt; i++) { - RTW_PUT_BE16(p2pie + p2pielen, pmlmepriv->p2p_sdt_cid[i]); - p2pielen += 2; - - RTW_PUT_BE32(p2pie + p2pielen, INTEL_DEV_TYPE_OUI); - p2pielen += 4; - - RTW_PUT_BE16(p2pie + p2pielen, pmlmepriv->p2p_sdt_scid[i]); - p2pielen += 2; - } - } else -#endif /* CONFIG_INTEL_WIDI */ p2pie[p2pielen++] = 0x00; /* No Secondary Device Type List */ /* Device Name */ @@ -5133,10 +5072,6 @@ int rtw_p2p_enable(_adapter *padapter, enum P2P_ROLE role) #endif } else if (role == P2P_ROLE_DISABLE) { -#ifdef CONFIG_INTEL_WIDI - if (padapter->mlmepriv.p2p_reject_disable == _TRUE) - return ret; -#endif /* CONFIG_INTEL_WIDI */ #ifdef CONFIG_IOCTL_CFG80211 if (padapter->wdinfo.driver_interface == DRIVER_CFG80211) From 70a668020850d338e4e5142901c2f4b1aaeb93a4 Mon Sep 17 00:00:00 2001 From: Christian B Date: Wed, 15 Nov 2017 09:32:59 +0100 Subject: [PATCH 07/13] Removed Intel WIDI Support --- core/rtw_wlan_util.c | 5 ----- 1 file changed, 5 deletions(-) diff --git a/core/rtw_wlan_util.c b/core/rtw_wlan_util.c index 5943c12..54c9a35 100644 --- a/core/rtw_wlan_util.c +++ b/core/rtw_wlan_util.c @@ -3038,11 +3038,6 @@ void update_tx_basic_rate(_adapter *padapter, u8 wirelessmode) if (!rtw_p2p_chk_state(pwdinfo, P2P_STATE_NONE)) return; #endif /* CONFIG_P2P */ -#ifdef CONFIG_INTEL_WIDI - if (padapter->mlmepriv.widi_state != INTEL_WIDI_STATE_NONE) - return; -#endif /* CONFIG_INTEL_WIDI */ - _rtw_memset(supported_rates, 0, NDIS_802_11_LENGTH_RATES_EX); /* clear B mod if current channel is in 5G band, avoid tx cck rate in 5G band. */ From 5a2339e56f3bf17a3a0c5be6db5cc8ac7d807a45 Mon Sep 17 00:00:00 2001 From: Christian B Date: Wed, 15 Nov 2017 09:33:42 +0100 Subject: [PATCH 08/13] Removed Intel WIDI Support --- include/drv_types.h | 4 ---- 1 file changed, 4 deletions(-) diff --git a/include/drv_types.h b/include/drv_types.h index 3d400f9..9d03776 100644 --- a/include/drv_types.h +++ b/include/drv_types.h @@ -73,10 +73,6 @@ typedef struct _ADAPTER _adapter, ADAPTER, *PADAPTER; #include #endif -#ifdef CONFIG_INTEL_WIDI - #include -#endif - #include #include #include From 644a34a2049f8fe9cdbd31236b9fe0908a87e1d1 Mon Sep 17 00:00:00 2001 From: Christian B Date: Wed, 15 Nov 2017 09:34:31 +0100 Subject: [PATCH 09/13] Removed Intel WIDI Support --- include/rtw_mlme.h | 27 --------------------------- 1 file changed, 27 deletions(-) diff --git a/include/rtw_mlme.h b/include/rtw_mlme.h index 1761f97..839027e 100644 --- a/include/rtw_mlme.h +++ b/include/rtw_mlme.h @@ -710,33 +710,6 @@ struct mlme_priv { _workitem Linkup_workitem; _workitem Linkdown_workitem; #endif - -#ifdef CONFIG_INTEL_WIDI - int widi_state; - int listen_state; - _timer listen_timer; - ATOMIC_T rx_probe_rsp; /* 1:receive probe respone from RDS source. */ - u8 *l2sdTaBuffer; - u8 channel_idx; - u8 group_cnt; /* In WiDi 3.5, they specified another scan algo. for WFD/RDS co-existed */ - u8 sa_ext[L2SDTA_SERVICE_VE_LEN]; - - u8 widi_enable; - /** - * For WiDi 4; upper layer would set - * p2p_primary_device_type_category_id - * p2p_primary_device_type_sub_category_id - * p2p_secondary_device_type_category_id - * p2p_secondary_device_type_sub_category_id - */ - u16 p2p_pdt_cid; - u16 p2p_pdt_scid; - u8 num_p2p_sdt; - u16 p2p_sdt_cid[MAX_NUM_P2P_SDT]; - u16 p2p_sdt_scid[MAX_NUM_P2P_SDT]; - u8 p2p_reject_disable; /* When starting NL80211 wpa_supplicant/hostapd, it will call netdev_close */ - /* such that it will cause p2p disabled. Use this flag to reject. */ -#endif /* CONFIG_INTEL_WIDI */ u32 lastscantime; #ifdef CONFIG_CONCURRENT_MODE u8 scanning_via_buddy_intf; From f86fb89dda9fdefbe14cb2cbe6766c09c17fc7ab Mon Sep 17 00:00:00 2001 From: Christian B Date: Wed, 15 Nov 2017 09:37:17 +0100 Subject: [PATCH 10/13] Removed Intel WIDI Support --- os_dep/linux/ioctl_linux.c | 108 ------------------------------------- 1 file changed, 108 deletions(-) diff --git a/os_dep/linux/ioctl_linux.c b/os_dep/linux/ioctl_linux.c index c1adefb..3cc32bc 100644 --- a/os_dep/linux/ioctl_linux.c +++ b/os_dep/linux/ioctl_linux.c @@ -4285,10 +4285,6 @@ static int rtw_wps_start(struct net_device *dev, else if (u32wps_start == 3) /* WPS Stop because of wps fail */ rtw_led_control(padapter, LED_CTL_STOP_WPS_FAIL); -#ifdef CONFIG_INTEL_WIDI - process_intel_widi_wps_status(padapter, u32wps_start); -#endif /* CONFIG_INTEL_WIDI */ - exit: return ret; @@ -5184,13 +5180,6 @@ static int rtw_p2p_connect(struct net_device *dev, return ret; } -#ifdef CONFIG_INTEL_WIDI - if (check_fwstate(pmlmepriv, _FW_UNDER_SURVEY) == _TRUE) { - RTW_INFO("[%s] WiFi is under survey!\n", __FUNCTION__); - return ret; - } -#endif /* CONFIG_INTEL_WIDI */ - if (pwdinfo->ui_got_wps_info == P2P_NO_WPSINFO) return -1; @@ -5273,19 +5262,6 @@ static int rtw_p2p_connect(struct net_device *dev, } else { RTW_INFO("[%s] Not Found in Scanning Queue~\n", __FUNCTION__); -#ifdef CONFIG_INTEL_WIDI - _cancel_timer_ex(&pwdinfo->restore_p2p_state_timer); - rtw_p2p_set_state(pwdinfo, P2P_STATE_FIND_PHASE_SEARCH); - rtw_p2p_findphase_ex_set(pwdinfo, P2P_FINDPHASE_EX_NONE); - rtw_free_network_queue(padapter, _TRUE); - /** - * For WiDi, if we can't find candidate device in scanning queue, - * driver will do scanning itself - */ - _enter_critical_bh(&pmlmepriv->lock, &irqL); - rtw_sitesurvey_cmd(padapter, NULL, 0, NULL, 0); - _exit_critical_bh(&pmlmepriv->lock, &irqL); -#endif /* CONFIG_INTEL_WIDI */ ret = -1; } exit: @@ -5854,13 +5830,6 @@ static int rtw_p2p_prov_disc(struct net_device *dev, RTW_INFO("[%s] WiFi Direct is disable!\n", __FUNCTION__); return ret; } else { -#ifdef CONFIG_INTEL_WIDI - if (check_fwstate(pmlmepriv, _FW_UNDER_SURVEY) == _TRUE) { - RTW_INFO("[%s] WiFi is under survey!\n", __FUNCTION__); - return ret; - } -#endif /* CONFIG_INTEL_WIDI */ - /* Reset the content of struct tx_provdisc_req_info excluded the wps_config_method_request. */ _rtw_memset(pwdinfo->tx_prov_disc_info.peerDevAddr, 0x00, ETH_ALEN); _rtw_memset(pwdinfo->tx_prov_disc_info.peerIFAddr, 0x00, ETH_ALEN); @@ -5930,18 +5899,6 @@ static int rtw_p2p_prov_disc(struct net_device *dev, } -#ifdef CONFIG_INTEL_WIDI - /* Some Intel WiDi source may not provide P2P IE, */ - /* so we could only compare mac addr by 802.11 Source Address */ - if (pmlmepriv->widi_state == INTEL_WIDI_STATE_WFD_CONNECTION - && uintPeerChannel == 0) { - if (_rtw_memcmp(pnetwork->network.MacAddress, peerMAC, ETH_ALEN)) { - uintPeerChannel = pnetwork->network.Configuration.DSConfig; - break; - } - } -#endif /* CONFIG_INTEL_WIDI */ - plist = get_next(plist); } @@ -6031,15 +5988,6 @@ static int rtw_p2p_prov_disc(struct net_device *dev, } else { RTW_INFO("[%s] NOT Found in the Scanning Queue!\n", __FUNCTION__); -#ifdef CONFIG_INTEL_WIDI - _cancel_timer_ex(&pwdinfo->restore_p2p_state_timer); - rtw_p2p_set_state(pwdinfo, P2P_STATE_FIND_PHASE_SEARCH); - rtw_p2p_findphase_ex_set(pwdinfo, P2P_FINDPHASE_EX_NONE); - rtw_free_network_queue(padapter, _TRUE); - _enter_critical_bh(&pmlmepriv->lock, &irqL); - rtw_sitesurvey_cmd(padapter, NULL, 0, NULL, 0); - _exit_critical_bh(&pmlmepriv->lock, &irqL); -#endif /* CONFIG_INTEL_WIDI */ } exit: @@ -11527,46 +11475,6 @@ static int rtw_tdls_get(struct net_device *dev, return ret; } - - - - -#ifdef CONFIG_INTEL_WIDI -static int rtw_widi_set(struct net_device *dev, - struct iw_request_info *info, - union iwreq_data *wrqu, char *extra) -{ - int ret = 0; - _adapter *padapter = (_adapter *)rtw_netdev_priv(dev); - - process_intel_widi_cmd(padapter, extra); - - return ret; -} - -static int rtw_widi_set_probe_request(struct net_device *dev, - struct iw_request_info *info, - union iwreq_data *wrqu, char *extra) -{ - int ret = 0; - u8 *pbuf = NULL; - _adapter *padapter = (_adapter *)rtw_netdev_priv(dev); - - pbuf = rtw_malloc(sizeof(l2_msg_t)); - if (pbuf) { - if (copy_from_user(pbuf, wrqu->data.pointer, wrqu->data.length)) - ret = -EFAULT; - /* _rtw_memcpy(pbuf, wrqu->data.pointer, wrqu->data.length); */ - - if (wrqu->data.flags == 0) - intel_widi_wk_cmd(padapter, INTEL_WIDI_ISSUE_PROB_WK, pbuf, sizeof(l2_msg_t)); - else if (wrqu->data.flags == 1) - rtw_set_wfd_rds_sink_info(padapter, (l2_msg_t *)pbuf); - } - return ret; -} -#endif /* CONFIG_INTEL_WIDI */ - #ifdef CONFIG_MAC_LOOPBACK_DRIVER #if defined(CONFIG_RTL8188E) @@ -12411,18 +12319,6 @@ static const struct iw_priv_args rtw_private_args[] = { SIOCIWFIRSTPRIV + 0x1D, IW_PRIV_TYPE_CHAR | 40, IW_PRIV_TYPE_CHAR | 0x7FF, "test" }, - -#ifdef CONFIG_INTEL_WIDI - { - SIOCIWFIRSTPRIV + 0x1E, - IW_PRIV_TYPE_CHAR | 1024, 0, "widi_set" - }, - { - SIOCIWFIRSTPRIV + 0x1F, - IW_PRIV_TYPE_CHAR | 128, 0, "widi_prob_req" - }, -#endif /* CONFIG_INTEL_WIDI */ - { SIOCIWFIRSTPRIV + 0x0E, IW_PRIV_TYPE_CHAR | 1024, 0 , ""}, /* set */ { SIOCIWFIRSTPRIV + 0x0F, IW_PRIV_TYPE_CHAR | 1024, IW_PRIV_TYPE_CHAR | IW_PRIV_SIZE_MASK , ""},/* get * --- sub-ioctls definitions --- */ @@ -12547,10 +12443,6 @@ static iw_handler rtw_private_handler[] = { #endif NULL, /* 0x1C is reserved for hostapd */ rtw_test, /* 0x1D */ -#ifdef CONFIG_INTEL_WIDI - rtw_widi_set, /* 0x1E */ - rtw_widi_set_probe_request, /* 0x1F */ -#endif /* CONFIG_INTEL_WIDI */ }; #if WIRELESS_EXT >= 17 From 0e67494be9f6fb38656792285827a935f12e4a36 Mon Sep 17 00:00:00 2001 From: Christian B Date: Wed, 15 Nov 2017 09:38:45 +0100 Subject: [PATCH 11/13] Removed Intel WIDI Support * Intel WIDI project is dead, removed support/code. --- os_dep/linux/os_intfs.c | 15 --------------- 1 file changed, 15 deletions(-) diff --git a/os_dep/linux/os_intfs.c b/os_dep/linux/os_intfs.c index 1079a7a..2ad6ea7 100644 --- a/os_dep/linux/os_intfs.c +++ b/os_dep/linux/os_intfs.c @@ -826,9 +826,6 @@ uint loadparam(_adapter *padapter) #ifdef CONFIG_LAYER2_ROAMING registry_par->max_roaming_times = (u8)rtw_max_roaming_times; -#ifdef CONFIG_INTEL_WIDI - registry_par->max_roaming_times = (u8)rtw_max_roaming_times + 2; -#endif /* CONFIG_INTEL_WIDI */ #endif #ifdef CONFIG_IOL @@ -1948,14 +1945,6 @@ u8 rtw_init_drv_sw(_adapter *padapter) rtw_hal_sreset_init(padapter); #endif -#ifdef CONFIG_INTEL_WIDI - if (rtw_init_intel_widi(padapter) == _FAIL) { - RTW_INFO("Can't rtw_init_intel_widi\n"); - ret8 = _FAIL; - goto exit; - } -#endif /* CONFIG_INTEL_WIDI */ - #ifdef CONFIG_WAPI_SUPPORT padapter->WapiSupport = true; /* set true temp, will revise according to Efuse or Registry value later. */ rtw_wapi_init(padapter); @@ -2055,10 +2044,6 @@ u8 rtw_free_drv_sw(_adapter *padapter) _rtw_spinlock_free(&padapter->br_ext_lock); #endif /* CONFIG_BR_EXT */ -#ifdef CONFIG_INTEL_WIDI - rtw_free_intel_widi(padapter); -#endif /* CONFIG_INTEL_WIDI */ - free_mlme_ext_priv(&padapter->mlmeextpriv); #ifdef CONFIG_TDLS From b11e32dc458d74e1cd55bc0409055234a997327c Mon Sep 17 00:00:00 2001 From: Christian B Date: Wed, 15 Nov 2017 10:55:16 +0100 Subject: [PATCH 12/13] Add RPI Option to Makefile --- Makefile | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/Makefile b/Makefile index 251b4db..1bf9d4f 100755 --- a/Makefile +++ b/Makefile @@ -136,6 +136,7 @@ CONFIG_PLATFORM_ARM_RTD299X = n CONFIG_PLATFORM_ARM_SPREADTRUM_6820 = n CONFIG_PLATFORM_ARM_SPREADTRUM_8810 = n CONFIG_PLATFORM_ARM_WMT = n +CONFIG_PLATFORM_ARM_RPI = n CONFIG_PLATFORM_TI_DM365 = n CONFIG_PLATFORM_MOZART = n CONFIG_PLATFORM_RTK119X = n @@ -1715,6 +1716,15 @@ MODULE_NAME := 8192eu endif +ifeq ($(CONFIG_PLATFORM_ARM_RPI), y) +EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN +ARCH := arm +CROSS_COMPILE := +KVER ?= $(shell uname -r) +KSRC ?= /lib/modules/$(KVER)/build +MODDESTDIR := /lib/modules/$(KVER)/kernel/drivers/net/wireless/ +endif + ifeq ($(CONFIG_PLATFORM_RTK129X), y) EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN EXTRA_CFLAGS += -DRTK_129X_PLATFORM From 3e70835ef0febe9005b38368a09253aeed1360ad Mon Sep 17 00:00:00 2001 From: Christian B Date: Wed, 15 Nov 2017 15:52:02 +0100 Subject: [PATCH 13/13] Added more adapter support * Added support for Edimax EDUP adapters (like EDUP_EP-AC1621) https://wikidevi.com/wiki/EDUP_EP-AC1621 --- os_dep/linux/usb_intf.c | 1 + 1 file changed, 1 insertion(+) diff --git a/os_dep/linux/usb_intf.c b/os_dep/linux/usb_intf.c index a35d045..e807512 100644 --- a/os_dep/linux/usb_intf.c +++ b/os_dep/linux/usb_intf.c @@ -230,6 +230,7 @@ static struct usb_device_id rtw_usb_id_tbl[] = { {USB_DEVICE(0x056E, 0x400D), .driver_info = RTL8814A}, /* ELECOM - ELECOM */ {USB_DEVICE(0x7392, 0xA834), .driver_info = RTL8814A}, /* Edimax - Edimax */ {USB_DEVICE(0x7392, 0xA833), .driver_info = RTL8814A}, /* Edimax - AC1750 */ + {USB_DEVICE(0x0BDA, 0x8813), .driver_info = RTL8814A}, /* Edimax - EDUP Adapters */ {USB_DEVICE(0x2357, 0x0106), .driver_info = RTL8814A}, /* TP-LINK Archer T9UH */ {USB_DEVICE(0x20F4, 0x809A), .driver_info = RTL8814A}, /* TRENDnet - TRENDnet */ {USB_DEVICE(0x20F4, 0x809B), .driver_info = RTL8814A}, /* TRENDnet TEW-809UB */