summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuciano Coelho <coelho@ti.com>2011-12-13 09:39:50 (GMT)
committerLuciano Coelho <coelho@ti.com>2011-12-15 07:58:41 (GMT)
commit2c8f82eabc6b3b6d1fc97954377e67f2d83db687 (patch)
tree755c64ad5307f2bdd1caec0f3d4a04088cf66945
parentf414218ed8bc716825755c9cf59f16a19f28314a (diff)
downloadlinux-fsl-qoriq-2c8f82eabc6b3b6d1fc97954377e67f2d83db687.tar.xz
wl12xx: call extended radio parameters for wl127x AP mode
We need to set the extended radio parameters for wl127x only. Currently, we were only calling this command with wl127x STA mode, but we should also do it for AP mode. Move the call to the extended radio paramaters to the common hw_init and use a single if for the chip type to do everything at once. Signed-off-by: Luciano Coelho <coelho@ti.com>
-rw-r--r--drivers/net/wireless/wl12xx/init.c31
1 files changed, 15 insertions, 16 deletions
diff --git a/drivers/net/wireless/wl12xx/init.c b/drivers/net/wireless/wl12xx/init.c
index 88891cd..7662514 100644
--- a/drivers/net/wireless/wl12xx/init.c
+++ b/drivers/net/wireless/wl12xx/init.c
@@ -328,12 +328,6 @@ static int wl1271_sta_hw_init(struct wl1271 *wl, struct wl12xx_vif *wlvif)
{
int ret;
- if (wl->chip.id != CHIP_ID_1283_PG20) {
- ret = wl1271_cmd_ext_radio_parms(wl);
- if (ret < 0)
- return ret;
- }
-
/* PS config */
ret = wl12xx_acx_config_ps(wl, wlvif);
if (ret < 0)
@@ -659,19 +653,24 @@ int wl1271_hw_init(struct wl1271 *wl)
{
int ret;
- if (wl->chip.id == CHIP_ID_1283_PG20)
+ if (wl->chip.id == CHIP_ID_1283_PG20) {
ret = wl128x_cmd_general_parms(wl);
- else
- ret = wl1271_cmd_general_parms(wl);
- if (ret < 0)
- return ret;
-
- if (wl->chip.id == CHIP_ID_1283_PG20)
+ if (ret < 0)
+ return ret;
ret = wl128x_cmd_radio_parms(wl);
- else
+ if (ret < 0)
+ return ret;
+ } else {
+ ret = wl1271_cmd_general_parms(wl);
+ if (ret < 0)
+ return ret;
ret = wl1271_cmd_radio_parms(wl);
- if (ret < 0)
- return ret;
+ if (ret < 0)
+ return ret;
+ ret = wl1271_cmd_ext_radio_parms(wl);
+ if (ret < 0)
+ return ret;
+ }
/* Chip-specific init */
ret = wl1271_chip_specific_init(wl);