Browse Source

wil6210: Init Rx vring right after reset

at the vring initialisation, memory pool get allocated in the FW.
Make it 1-st because FW need this memory pool to precess
next commands

Signed-off-by: Vladimir Kondratiev <qca_vkondrat@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Vladimir Kondratiev 12 years ago
parent
commit
e31b25627f

+ 5 - 2
drivers/net/wireless/ath/wil6210/cfg80211.c

@@ -454,6 +454,11 @@ static int wil_cfg80211_start_ap(struct wiphy *wiphy,
 	if (rc)
 		return rc;
 
+	/* Rx VRING. */
+	rc = wil_rx_init(wil);
+	if (rc)
+		return rc;
+
 	rc = wmi_set_ssid(wil, info->ssid_len, info->ssid);
 	if (rc)
 		return rc;
@@ -482,8 +487,6 @@ static int wil_cfg80211_start_ap(struct wiphy *wiphy,
 	if (rc)
 		return rc;
 
-	/* Rx VRING. After MAC and beacon */
-	rc = wil_rx_init(wil);
 
 	netif_carrier_on(ndev);
 

+ 5 - 3
drivers/net/wireless/ath/wil6210/main.c

@@ -295,6 +295,11 @@ static int __wil_up(struct wil6210_priv *wil)
 	if (rc)
 		return rc;
 
+	/* Rx VRING. After MAC and beacon */
+	rc = wil_rx_init(wil);
+	if (rc)
+		return rc;
+
 	/* FIXME Firmware works now in PBSS mode(ToDS=0, FromDS=0) */
 	wmi_nettype = wil_iftype_nl2wmi(NL80211_IFTYPE_ADHOC);
 	switch (wdev->iftype) {
@@ -356,9 +361,6 @@ static int __wil_up(struct wil6210_priv *wil)
 			return rc;
 	}
 
-	/* Rx VRING. After MAC and beacon */
-	wil_rx_init(wil);
-
 	napi_enable(&wil->napi_rx);
 	napi_enable(&wil->napi_tx);