From 8e46c6058c9eb9e7b29e3f413e1ea77e68ba1f67 Mon Sep 17 00:00:00 2001 From: Michael Ossmann Date: Thu, 7 Mar 2013 17:45:27 -0700 Subject: [PATCH] switchctrl updated by set_freq() --- firmware/usb_performance/usb_performance.c | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/firmware/usb_performance/usb_performance.c b/firmware/usb_performance/usb_performance.c index 5b52660b..0355387d 100644 --- a/firmware/usb_performance/usb_performance.c +++ b/firmware/usb_performance/usb_performance.c @@ -97,8 +97,7 @@ bool set_freq(uint32_t freq_mhz, uint32_t freq_hz) { if(freq_mhz < MAX_LP_FREQ_MHZ) { - /* TODO fix/check Switch to LP mode (shall not change RX/TX mode) */ - //rffc5071_set_gpo(0); /* SWITCHCTRL_LP = 0 */ + switchctrl &= ~(SWITCHCTRL_HP | SWITCHCTRL_MIX_BYPASS); RFFC5071_freq_mhz = MAX2837_FREQ_NOMINAL_MHZ - freq_mhz; /* Set Freq and read real freq */ @@ -112,22 +111,20 @@ bool set_freq(uint32_t freq_mhz, uint32_t freq_hz) } MAX2837_freq_hz = MAX2837_FREQ_NOMINAL_HZ + tmp_hz + freq_hz; max2837_set_frequency(MAX2837_freq_hz); - rffc5071_tx(0); + rffc5071_tx(switchctrl); }else if( (freq_mhz >= MIN_BYPASS_FREQ_MHZ) && (freq_mhz < MAX_BYPASS_FREQ_MHZ) ) { - /* TODO fix/check Switch to SWITCHCTRL_MIX_BYPASS mode (shall not change RX/TX mode) */ - //rffc5071_set_gpo(SWITCHCTRL_MIX_BYPASS); + switchctrl |= SWITCHCTRL_MIX_BYPASS; MAX2837_freq_hz = (freq_mhz * FREQ_ONE_MHZ) + freq_hz; /* RFFC5071_freq_mhz <= not used in Bypass mode */ max2837_set_frequency(MAX2837_freq_hz); - rffc5071_tx(SWITCHCTRL_MIX_BYPASS); + rffc5071_tx(switchctrl); }else if( (freq_mhz >= MIN_HP_FREQ_MHZ) && (freq_mhz < MAX_HP_FREQ_MHZ) ) { - /* TODO fix/check Switch to SWITCHCTRL_HP mode (shall not change RX/TX mode) */ - //rffc5071_set_gpo(SWITCHCTRL_HP); + switchctrl &= ~SWITCHCTRL_MIX_BYPASS; + switchctrl |= SWITCHCTRL_HP; - //switch_ctrl = SWITCHCTRL_HP; RFFC5071_freq_mhz = freq_mhz - MAX2837_FREQ_NOMINAL_MHZ; /* Set Freq and read real freq */ real_RFFC5071_freq_mhz = rffc5071_set_frequency(RFFC5071_freq_mhz, 0); @@ -140,7 +137,7 @@ bool set_freq(uint32_t freq_mhz, uint32_t freq_hz) } MAX2837_freq_hz = MAX2837_FREQ_NOMINAL_HZ + tmp_hz + freq_hz; max2837_set_frequency(MAX2837_freq_hz); - rffc5071_tx(SWITCHCTRL_HP); + rffc5071_tx(switchctrl); }else { /* Error freq_mhz too high */