[PATCH] libertas: sparse fixes

Fix various issues reported by sparse.

Signed-off-by: Dan Williams <dcbw@redhat.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
diff --git a/drivers/net/wireless/libertas/ioctl.c b/drivers/net/wireless/libertas/ioctl.c
index a59d26b..4b145e3 100644
--- a/drivers/net/wireless/libertas/ioctl.c
+++ b/drivers/net/wireless/libertas/ioctl.c
@@ -297,6 +297,7 @@
  */
 static int wlan_bt_get_invert_ioctl(wlan_private * priv, struct ifreq *req)
 {
+	struct iwreq *wrq = (struct iwreq *)req;
 	int ret;
 	union {
 		int id;
@@ -311,7 +312,7 @@
 				    (char *)&param);
 
 	if (ret == 0)
-		req->ifr_data = (char *)(le32_to_cpu(param.id));
+		wrq->u.param.value = le32_to_cpu(param.id);
 	else
 		return -EFAULT;