summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLuciano Coelho <coelho@ti.com>2011-12-13 11:39:50 +0200
committerLuciano Coelho <coelho@ti.com>2011-12-15 09:58:41 +0200
commit2c8f82eabc6b3b6d1fc97954377e67f2d83db687 (patch)
tree755c64ad5307f2bdd1caec0f3d4a04088cf66945
parentf414218ed8bc716825755c9cf59f16a19f28314a (diff)
downloadop-kernel-dev-2c8f82eabc6b3b6d1fc97954377e67f2d83db687.zip
op-kernel-dev-2c8f82eabc6b3b6d1fc97954377e67f2d83db687.tar.gz
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);
OpenPOWER on IntegriCloud