>From 1c551f3b004747357fc6478fc4198a778ad2c776 Mon Sep 17 00:00:00 2001
From: Ohad Ben-Cohen <[email protected]>
Date: Thu, 16 Sep 2010 01:31:35 +0200
Subject: [PATCH 06/26] wl1271: take irq info from private board data

Remove the hard coded irq information, and instead take
the irq information from the board's platform data.

Signed-off-by: Ohad Ben-Cohen <[email protected]>
Signed-off-by: John W. Linville <[email protected]>
Signed-off-by: Claude Brouat <[email protected]>
---
 drivers/net/wireless/wl12xx/wl1271_sdio.c |   15 ++++++++-------
 1 files changed, 8 insertions(+), 7 deletions(-)

diff --git a/drivers/net/wireless/wl12xx/wl1271_sdio.c 
b/drivers/net/wireless/wl12xx/wl1271_sdio.c
index d0433e3..fead6a3 100644
--- a/drivers/net/wireless/wl12xx/wl1271_sdio.c
+++ b/drivers/net/wireless/wl12xx/wl1271_sdio.c
@@ -29,14 +29,12 @@
 #include <linux/mmc/sdio_ids.h>
 #include <linux/mmc/card.h>
 #include <linux/gpio.h>
+#include <linux/wl12xx.h>

 #include "wl1271.h"
 #include "wl12xx_80211.h"
 #include "wl1271_io.h"

-
-#define RX71_WL1271_IRQ_GPIO         42
-
 #ifndef SDIO_VENDOR_ID_TI
 #define SDIO_VENDOR_ID_TI      0x0097
 #endif
@@ -211,6 +209,7 @@ static int __devinit wl1271_probe(struct sdio_func *func,
                       const struct sdio_device_id *id)
 {
     struct ieee80211_hw *hw;
+    const struct wl12xx_platform_data *wlan_data;
     struct wl1271 *wl;
     int ret;

@@ -230,13 +229,15 @@ static int __devinit wl1271_probe(struct sdio_func *func,
     /* Grab access to FN0 for ELP reg. */
     func->card->quirks |= MMC_QUIRK_LENIENT_FN0;

-    wl->irq = gpio_to_irq(RX71_WL1271_IRQ_GPIO);
-    if (wl->irq < 0) {
-          ret = wl->irq;
-          wl1271_error("could not get irq!");
+    wlan_data = wl12xx_get_platform_data();
+    if (IS_ERR(wlan_data)) {
+          ret = PTR_ERR(wlan_data);
+          wl1271_error("missing wlan platform data: %d", ret);
           goto out_free;
     }

+    wl->irq = wlan_data->irq;
+
     ret = request_irq(wl->irq, wl1271_irq, 0, DRIVER_NAME, wl);
     if (ret < 0) {
           wl1271_error("request_irq() failed: %d", ret);
--
1.6.3.3




Claude BROUAT
UMG/MIPE/WSIV  System Integrator
Office:    +33 (0)1 72 21 04 54
mailto: mailto:[email protected]

Intel Corp. SAS
134, av du Général Eisenhower
BP 73586
31100 TOULOUSE
France



---------------------------------------------------------------------
Intel Corporation SAS (French simplified joint stock company)
Registered headquarters: "Les Montalets"- 2, rue de Paris, 
92196 Meudon Cedex, France
Registration Number:  302 456 199 R.C.S. NANTERRE
Capital: 4,572,000 Euros

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.

Attachment: 0006-wl1271-take-irq-info-from-private-board-data.patch
Description: 0006-wl1271-take-irq-info-from-private-board-data.patch

_______________________________________________
Meego-kernel mailing list
[email protected]
http://lists.meego.com/listinfo/meego-kernel

Reply via email to