Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 986a1ee7 authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "wil6210: store bss object and use cfg80211_connect_bss()"

parents 272879fc fc489713
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -766,6 +766,7 @@ static int wil_cfg80211_connect(struct wiphy *wiphy,
	if (rc == 0) {
		netif_carrier_on(ndev);
		wil6210_bus_request(wil, WIL_MAX_BUS_REQUEST_KBPS);
		wil->bss = bss;
		/* Connect can take lots of time */
		mod_timer(&wil->connect_timer,
			  jiffies + msecs_to_jiffies(2000));
+1 −0
Original line number Diff line number Diff line
@@ -281,6 +281,7 @@ static void _wil6210_disconnect(struct wil6210_priv *wil, const u8 *bssid,
			cfg80211_connect_result(ndev, bssid, NULL, 0, NULL, 0,
						WLAN_STATUS_UNSPECIFIED_FAILURE,
						GFP_KERNEL);
			wil->bss = NULL;
		}
		clear_bit(wil_status_fwconnecting, wil->status);
		break;
+1 −0
Original line number Diff line number Diff line
@@ -621,6 +621,7 @@ struct wil6210_priv {
	u16 channel; /* relevant in AP mode */
	int sinfo_gen;
	u32 ap_isolate; /* no intra-BSS communication */
	struct cfg80211_bss *bss; /* connected bss, relevant in STA mode */
	/* interrupt moderation */
	u32 tx_max_burst_duration;
	u32 tx_interframe_timeout;
+9 −5
Original line number Diff line number Diff line
@@ -573,12 +573,16 @@ static void wmi_evt_connect(struct wil6210_priv *wil, int id, void *d, int len)
						GFP_KERNEL);
			goto out;
		} else {
			cfg80211_connect_result(ndev, evt->bssid,
			struct wiphy *wiphy = wil_to_wiphy(wil);

			cfg80211_ref_bss(wiphy, wil->bss);
			cfg80211_connect_bss(ndev, evt->bssid, wil->bss,
					     assoc_req_ie, assoc_req_ielen,
					     assoc_resp_ie, assoc_resp_ielen,
						WLAN_STATUS_SUCCESS,
						GFP_KERNEL);
					     WLAN_STATUS_SUCCESS, GFP_KERNEL,
					     NL80211_TIMEOUT_UNSPECIFIED);
		}
		wil->bss = NULL;
	} else if ((wdev->iftype == NL80211_IFTYPE_AP) ||
		   (wdev->iftype == NL80211_IFTYPE_P2P_GO)) {
		if (rc) {