[PATCH] libertas: don't stomp on interface-specific private data

Signed-off-by: Dan Williams <dcbw@redhat.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
diff --git a/drivers/net/wireless/libertas/main.c b/drivers/net/wireless/libertas/main.c
index 6304bd9..3feddcc 100644
--- a/drivers/net/wireless/libertas/main.c
+++ b/drivers/net/wireless/libertas/main.c
@@ -256,7 +256,7 @@
 static ssize_t libertas_rtap_get(struct device * dev,
 		struct device_attribute *attr, char * buf)
 {
-	wlan_private *priv = (wlan_private *) dev->driver_data;
+	wlan_private *priv = (wlan_private *) (to_net_dev(dev))->priv;
 	wlan_adapter *adapter = priv->adapter;
 	return snprintf(buf, 5, "0x%X\n", adapter->monitormode);
 }
@@ -268,7 +268,7 @@
 		struct device_attribute *attr, const char * buf, size_t count)
 {
 	int monitor_mode;
-	wlan_private *priv = (wlan_private *) dev->driver_data;
+	wlan_private *priv = (wlan_private *) (to_net_dev(dev))->priv;
 	wlan_adapter *adapter = priv->adapter;
 
 	sscanf(buf, "%x", &monitor_mode);
@@ -1138,7 +1138,7 @@
 		lbs_pr_err("init ethX device failed\n");
 		goto done;
 	}
-	dmdev->driver_data = priv = dev->priv;
+	priv = dev->priv;
 
 	/* allocate buffer for wlan_adapter */
 	if (!(priv->adapter = kzalloc(sizeof(wlan_adapter), GFP_KERNEL))) {