Skip to content

Commit

Permalink
wl1271: take irq info from private board data
Browse files Browse the repository at this point in the history
Remove the hard coded irq information, and instead take
the irq information from the board's platform data.

Signed-off-by: Ohad Ben-Cohen <ohad@wizery.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
  • Loading branch information
Ohad Ben-Cohen authored and John W. Linville committed Sep 21, 2010
1 parent 61ee700 commit 09cecc3
Showing 1 changed file with 8 additions and 7 deletions.
15 changes: 8 additions & 7 deletions drivers/net/wireless/wl12xx/wl1271_sdio.c
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down Expand Up @@ -208,6 +206,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;

Expand All @@ -227,13 +226,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);
Expand Down

0 comments on commit 09cecc3

Please sign in to comment.