summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorLuciano Coelho <coelho@ti.com>2012-05-10 09:14:02 (GMT)
committerLuciano Coelho <coelho@ti.com>2012-06-05 12:57:41 (GMT)
commit4afc37a0c1c58415ac3ad1c07afd8ebf81cb90c5 (patch)
tree667bb70773342274dbb1ec28e4f0bf0d8574abac /drivers
parent73d8a42464d3fd8de907d032a7dafa1d23d88490 (diff)
downloadlinux-fsl-qoriq-4afc37a0c1c58415ac3ad1c07afd8ebf81cb90c5.tar.xz
wlcore: reorder identify_chip and get_hw_info
We can do get the HW information and identify the chip already at probe time. This makes it easier to mangle with the parameters during identify chip before registering the hardware with mac80211. Signed-off-by: Luciano Coelho <coelho@ti.com> Signed-off-by: Arik Nemtsov <arik@wizery.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/wireless/ti/wlcore/main.c20
1 files changed, 10 insertions, 10 deletions
diff --git a/drivers/net/wireless/ti/wlcore/main.c b/drivers/net/wireless/ti/wlcore/main.c
index bc33ee2..2e77f73 100644
--- a/drivers/net/wireless/ti/wlcore/main.c
+++ b/drivers/net/wireless/ti/wlcore/main.c
@@ -962,10 +962,6 @@ static int wl12xx_chip_wakeup(struct wl1271 *wl, bool plt)
if (wl1271_set_block_size(wl))
wl->quirks |= WLCORE_QUIRK_TX_BLOCKSIZE_ALIGN;
- ret = wl->ops->identify_chip(wl);
- if (ret < 0)
- goto out;
-
/* TODO: make sure the lower driver has set things up correctly */
ret = wl1271_setup(wl);
@@ -4872,12 +4868,6 @@ static int wl1271_register_hw(struct wl1271 *wl)
if (wl->mac80211_registered)
return 0;
- ret = wl12xx_get_hw_info(wl);
- if (ret < 0) {
- wl1271_error("couldn't get hw info");
- goto out;
- }
-
ret = wl1271_fetch_nvs(wl);
if (ret == 0) {
/* NOTE: The wl->nvs->nvs element must be first, in
@@ -5282,6 +5272,16 @@ int __devinit wlcore_probe(struct wl1271 *wl, struct platform_device *pdev)
}
disable_irq(wl->irq);
+ ret = wl12xx_get_hw_info(wl);
+ if (ret < 0) {
+ wl1271_error("couldn't get hw info");
+ goto out;
+ }
+
+ ret = wl->ops->identify_chip(wl);
+ if (ret < 0)
+ goto out;
+
ret = wl1271_init_ieee80211(wl);
if (ret)
goto out_irq;