wl12xx: Set correct REF CLK and TCXO CLK values to the FW
authorShahar Levi <shahar_levi@ti.com>
Sun, 3 Apr 2011 10:54:54 +0000 (13:54 +0300)
committerLuciano Coelho <coelho@ti.com>
Mon, 2 May 2011 07:25:48 +0000 (10:25 +0300)
Fix mismatch between the REF CLK and TCXO CLK information that is
set in the platform data and the NVS, so we override what comes
from the NVS and replace it with what comes from the platform data.

[Small fix in a comment -- Luca]

Signed-off-by: Shahar Levi <shahar_levi@ti.com>
Signed-off-by: Luciano Coelho <coelho@ti.com>
drivers/net/wireless/wl12xx/cmd.c

index d483316..a9ffdd8 100644 (file)
@@ -129,6 +129,9 @@ int wl1271_cmd_general_parms(struct wl1271 *wl)
        if (gp->tx_bip_fem_auto_detect)
                answer = true;
 
+       /* Override the REF CLK from the NVS with the one from platform data */
+       gen_parms->general_params.ref_clock = wl->ref_clock;
+
        ret = wl1271_cmd_test(wl, gen_parms, sizeof(*gen_parms), answer);
        if (ret < 0) {
                wl1271_warning("CMD_INI_FILE_GENERAL_PARAM failed");
@@ -168,6 +171,10 @@ int wl128x_cmd_general_parms(struct wl1271 *wl)
        if (gp->tx_bip_fem_auto_detect)
                answer = true;
 
+       /* Replace REF and TCXO CLKs with the ones from platform data */
+       gen_parms->general_params.ref_clock = wl->ref_clock;
+       gen_parms->general_params.tcxo_ref_clock = wl->tcxo_clock;
+
        ret = wl1271_cmd_test(wl, gen_parms, sizeof(*gen_parms), answer);
        if (ret < 0) {
                wl1271_warning("CMD_INI_FILE_GENERAL_PARAM failed");