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 d48331682e7e6fd0b042439128063beb01804f72..a9ffdd86f9b8a6d02c56667d1b2006f47e6f2402 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");