aboutsummaryrefslogtreecommitdiffstats
path: root/recipes/networkmanager/networkmanager-0.7.1/cx3110_bring_up.patch
blob: db420ce2badc54c2048a2833f737f026e7c91d27 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Index: NetworkManager-0.7.0/src/nm-device-wifi.c
===================================================================
--- NetworkManager-0.7.0.orig/src/nm-device-wifi.c
+++ NetworkManager-0.7.0/src/nm-device-wifi.c
@@ -364,6 +364,15 @@ real_get_generic_capabilities (NMDevice 
 	const char *iface = nm_device_get_iface (dev);
 	gboolean success;
 
+	/* The cx3110 driver has to be UP in order to get its capabilities. */
+	gboolean no_firmware = FALSE;
+	const char *driver = nm_device_get_driver (dev);
+	if (driver && !strcmp ("wlan-omap", driver) && !nm_system_device_is_up (dev)) {
+		if (!nm_device_hw_bring_up (dev, TRUE, &no_firmware))
+			nm_warning ("(%s): couldn't bring up interface to get capabilities.",
+					iface);
+	}
+
 	memset (&range, 0, sizeof (struct iw_range));
 	success = wireless_get_range (NM_DEVICE_WIFI (dev), &range, &response_len);
 	if (!success)