mirror of
				https://github.com/Ysurac/openmptcprouter.git
				synced 2025-03-09 15:40:20 +00:00 
			
		
		
		
	Delete not needed patch for RPI on 6.6 kernel
This commit is contained in:
		
							parent
							
								
									5b90067d81
								
							
						
					
					
						commit
						37738ffc93
					
				
					 1 changed files with 0 additions and 137 deletions
				
			
		|  | @ -1,137 +0,0 @@ | |||
| From 20b81d1945a11e2e5f5abe7bdc73ac92dc8bbe9a Mon Sep 17 00:00:00 2001 | ||||
| From: Kurt Lee <kurt.lee@cypress.com> | ||||
| Date: Thu, 20 Aug 2020 03:07:02 -0500 | ||||
| Subject: [PATCH 0897/1002] brcmfmac: Fix interoperating DPP and other | ||||
|  encryption network access | ||||
| 
 | ||||
| 1. If firmware supports 4-way handshake offload but not supports DPP | ||||
| 4-way offload, when user first connects encryption network, driver will | ||||
| set "sup_wpa 1" to firmware, but it will further result in DPP | ||||
| connection failure since firmware won't send EAPOL frame to host. | ||||
| 
 | ||||
| 2. Fix DPP AP mode handling action frames. | ||||
| 
 | ||||
| 3. For some firmware without fwsup support, the join procedure will be | ||||
| skipped due to "sup_wpa" iovar returning not-support. Check the fwsup | ||||
| feature before do such iovar. | ||||
| 
 | ||||
| Signed-off-by: Kurt Lee <kurt.lee@cypress.com> | ||||
| Signed-off-by: Double Lo <double.lo@cypress.com> | ||||
| Signed-off-by: Chi-hsien Lin <chi-hsien.lin@cypress.com> | ||||
| ---
 | ||||
|  .../broadcom/brcm80211/brcmfmac/cfg80211.c    | 68 ++++++++++--------- | ||||
|  .../broadcom/brcm80211/brcmfmac/p2p.c         |  5 ++ | ||||
|  2 files changed, 42 insertions(+), 31 deletions(-) | ||||
| 
 | ||||
| diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
 | ||||
| index 77d9790e5d51..dd9778f6727d 100644
 | ||||
| --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
 | ||||
| +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
 | ||||
| @@ -2475,44 +2475,50 @@ brcmf_cfg80211_connect(struct wiphy *wiphy, struct net_device *ndev,
 | ||||
|  		goto done; | ||||
|  	} | ||||
|   | ||||
| -	if (sme->crypto.psk &&
 | ||||
| -	    profile->use_fwsup != BRCMF_PROFILE_FWSUP_SAE) {
 | ||||
| -		if (WARN_ON(profile->use_fwsup != BRCMF_PROFILE_FWSUP_NONE)) {
 | ||||
| -			err = -EINVAL;
 | ||||
| -			goto done;
 | ||||
| +	if (brcmf_feat_is_enabled(ifp, BRCMF_FEAT_FWSUP)) {
 | ||||
| +		if (sme->crypto.psk) {
 | ||||
| +			if (profile->use_fwsup != BRCMF_PROFILE_FWSUP_SAE) {
 | ||||
| +				if (WARN_ON(profile->use_fwsup !=
 | ||||
| +					BRCMF_PROFILE_FWSUP_NONE)) {
 | ||||
| +					err = -EINVAL;
 | ||||
| +					goto done;
 | ||||
| +				}
 | ||||
| +				brcmf_dbg(INFO, "using PSK offload\n");
 | ||||
| +				profile->use_fwsup = BRCMF_PROFILE_FWSUP_PSK;
 | ||||
| +			}
 | ||||
| +		} else {
 | ||||
| +			profile->use_fwsup = BRCMF_PROFILE_FWSUP_NONE;
 | ||||
|  		} | ||||
| -		brcmf_dbg(INFO, "using PSK offload\n");
 | ||||
| -		profile->use_fwsup = BRCMF_PROFILE_FWSUP_PSK;
 | ||||
| -	}
 | ||||
|   | ||||
| -	if (profile->use_fwsup != BRCMF_PROFILE_FWSUP_NONE) {
 | ||||
| -		/* enable firmware supplicant for this interface */
 | ||||
| -		err = brcmf_fil_iovar_int_set(ifp, "sup_wpa", 1);
 | ||||
| -		if (err < 0) {
 | ||||
| -			bphy_err(drvr, "failed to enable fw supplicant\n");
 | ||||
| -			goto done;
 | ||||
| +		if (profile->use_fwsup != BRCMF_PROFILE_FWSUP_NONE) {
 | ||||
| +			/* enable firmware supplicant for this interface */
 | ||||
| +			err = brcmf_fil_iovar_int_set(ifp, "sup_wpa", 1);
 | ||||
| +			if (err < 0) {
 | ||||
| +				bphy_err(drvr, "failed to enable fw supplicant\n");
 | ||||
| +				goto done;
 | ||||
| +			}
 | ||||
| +		} else {
 | ||||
| +			err = brcmf_fil_iovar_int_set(ifp, "sup_wpa", 0);
 | ||||
|  		} | ||||
| -	}
 | ||||
|   | ||||
| -	if (profile->use_fwsup == BRCMF_PROFILE_FWSUP_PSK)
 | ||||
| -		err = brcmf_set_pmk(ifp, sme->crypto.psk,
 | ||||
| -				    BRCMF_WSEC_MAX_PSK_LEN);
 | ||||
| -	else if (profile->use_fwsup == BRCMF_PROFILE_FWSUP_SAE) {
 | ||||
| -		/* clean up user-space RSNE */
 | ||||
| -		err = brcmf_fil_iovar_data_set(ifp, "wpaie", NULL, 0);
 | ||||
| -		if (err) {
 | ||||
| -			bphy_err(drvr, "failed to clean up user-space RSNE\n");
 | ||||
| -			goto done;
 | ||||
| -		}
 | ||||
| -		err = brcmf_set_sae_password(ifp, sme->crypto.sae_pwd,
 | ||||
| -					     sme->crypto.sae_pwd_len);
 | ||||
| -		if (!err && sme->crypto.psk)
 | ||||
| +		if (profile->use_fwsup == BRCMF_PROFILE_FWSUP_PSK)
 | ||||
|  			err = brcmf_set_pmk(ifp, sme->crypto.psk, | ||||
|  					    BRCMF_WSEC_MAX_PSK_LEN); | ||||
| +		else if (profile->use_fwsup == BRCMF_PROFILE_FWSUP_SAE) {
 | ||||
| +			/* clean up user-space RSNE */
 | ||||
| +			if (brcmf_fil_iovar_data_set(ifp, "wpaie", NULL, 0)) {
 | ||||
| +				bphy_err(drvr, "failed to clean up user-space RSNE\n");
 | ||||
| +				goto done;
 | ||||
| +			}
 | ||||
| +			err = brcmf_set_sae_password(ifp, sme->crypto.sae_pwd,
 | ||||
| +						     sme->crypto.sae_pwd_len);
 | ||||
| +			if (!err && sme->crypto.psk)
 | ||||
| +				err = brcmf_set_pmk(ifp, sme->crypto.psk,
 | ||||
| +						    BRCMF_WSEC_MAX_PSK_LEN);
 | ||||
| +		}
 | ||||
| +		if (err)
 | ||||
| +			goto done;
 | ||||
|  	} | ||||
| -	if (err)
 | ||||
| -		goto done;
 | ||||
| -
 | ||||
|  	/* Join with specific BSSID and cached SSID | ||||
|  	 * If SSID is zero join based on BSSID only | ||||
|  	 */ | ||||
| diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/p2p.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/p2p.c
 | ||||
| index d4492d02e4ea..7376f9f37d07 100644
 | ||||
| --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/p2p.c
 | ||||
| +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/p2p.c
 | ||||
| @@ -1281,6 +1281,10 @@ static s32 brcmf_p2p_abort_action_frame(struct brcmf_cfg80211_info *cfg)
 | ||||
|  	brcmf_dbg(TRACE, "Enter\n"); | ||||
|   | ||||
|  	vif = p2p->bss_idx[P2PAPI_BSSCFG_DEVICE].vif; | ||||
| +
 | ||||
| +	if (!vif)
 | ||||
| +		vif = p2p->bss_idx[P2PAPI_BSSCFG_PRIMARY].vif;
 | ||||
| +
 | ||||
|  	err = brcmf_fil_bsscfg_data_set(vif->ifp, "actframe_abort", &int_val, | ||||
|  					sizeof(s32)); | ||||
|  	if (err) | ||||
| @@ -1826,6 +1830,7 @@ bool brcmf_p2p_send_action_frame(struct brcmf_cfg80211_info *cfg,
 | ||||
|  	/* validate channel and p2p ies */ | ||||
|  	if (config_af_params.search_channel && | ||||
|  	    IS_P2P_SOCIAL_CHANNEL(le32_to_cpu(af_params->channel)) && | ||||
| +	    p2p->bss_idx[P2PAPI_BSSCFG_DEVICE].vif &&
 | ||||
|  	    p2p->bss_idx[P2PAPI_BSSCFG_DEVICE].vif->saved_ie.probe_req_ie_len) { | ||||
|  		afx_hdl = &p2p->afx_hdl; | ||||
|  		afx_hdl->peer_listen_chan = le32_to_cpu(af_params->channel); | ||||
| -- 
 | ||||
| 2.44.0 | ||||
| 
 | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue