X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=carlfw%2Fsrc%2Frf.c;h=9537c2a747f4d3d48849c4b36e45884f6ccd4e0e;hb=e8d747355467293087e6818a19073627b0528fce;hp=8a9895914990d82817a86ddbb28c9d954ffd651b;hpb=12d3f1ba6ba522cd1ef11483d813fe2c2e64f04b;p=carl9170fw.git diff --git a/carlfw/src/rf.c b/carlfw/src/rf.c index 8a98959..9537c2a 100644 --- a/carlfw/src/rf.c +++ b/carlfw/src/rf.c @@ -199,6 +199,9 @@ void rf_cmd(const struct carl9170_cmd *cmd, struct carl9170_rsp *resp) fw.phy.ht_settings = cmd->rf_init.ht_settings; fw.phy.frequency = cmd->rf_init.freq; + /* + * Is the clock controlled by the PHY? + */ if ((fw.phy.ht_settings & EIGHTY_FLAG) == EIGHTY_FLAG) clock_set(AHB_80_88MHZ, true); else @@ -215,7 +218,6 @@ void rf_cmd(const struct carl9170_cmd *cmd, struct carl9170_rsp *resp) resp->rf_init_res.ret = cpu_to_le32(ret); } -#ifdef CONFIG_CARL9170FW_PSM void rf_psm(void) { u32 bank3; @@ -244,7 +246,7 @@ void rf_psm(void) /* Synthesizer off + RX off */ bank3 = 0x00400018; - clock_set(true, AHB_20_22MHZ); + clock_set(AHB_20_22MHZ, false); } else { /* advance to the next PSM step */ fw.phy.psm.state--; @@ -262,19 +264,18 @@ void rf_psm(void) bank3 = 0x01420098; if ((fw.phy.ht_settings & EIGHTY_FLAG) == EIGHTY_FLAG) - clock_set(true, AHB_80_88MHZ); + clock_set(AHB_80_88MHZ, true); else - clock_set(true, AHB_40_44MHZ); + clock_set(AHB_40_44MHZ, true); } else { return ; } } - if (fw.phy.frequency < 30000000) + if (fw.phy.frequency < 3000000) bank3 |= 0x00800000; set(0x1c58f0, bank3); } -#endif /* CONFIG_CARL9170FW_PSM */ #endif /* CONFIG_CARL9170FW_RADIO_FUNCTIONS */