summaryrefslogtreecommitdiffstats
path: root/src/target/firmware/layer1
diff options
context:
space:
mode:
authorSteve Markgraf <steve@steve-m.de>2011-09-16 21:24:05 +0200
committerSteve Markgraf <steve@steve-m.de>2011-09-16 21:24:05 +0200
commit2b2209ebb5d6cad61b861d1816822bc9d31ee079 (patch)
tree2ecf5abb00d607d3f18b0c0fa030818c4b272bf2 /src/target/firmware/layer1
parent7bbd2ac411855c53972f4fe5b4759bfafa65fc0e (diff)
fw/layer1/tpu_window: Open and close RFFE tx_window at the right point of time
So far, the PA-enable signal has been enabled way to early and also has been disabled much too late. We're now setting the RFFE to TX-mode after opening the ABB window, and setting the RFFE to RX-mode again after TX. This yields to an almost perfectly timed TX-window, just like with the stock firmware of the phone. Signed-off-by: Steve Markgraf <steve@steve-m.de>
Diffstat (limited to 'src/target/firmware/layer1')
-rw-r--r--src/target/firmware/layer1/tpu_window.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/target/firmware/layer1/tpu_window.c b/src/target/firmware/layer1/tpu_window.c
index 1ac4ce48..2fdb048c 100644
--- a/src/target/firmware/layer1/tpu_window.c
+++ b/src/target/firmware/layer1/tpu_window.c
@@ -145,19 +145,26 @@ void l1s_tx_win_ctrl(uint16_t arfcn, enum l1_txwin_type wtype, uint8_t pwr, uint
offset -= l1s.ta << 2;
#ifdef CONFIG_TX_ENABLE
- /* window open for TRF6151 and RFFE */
- rffe_mode(gsm_arfcn2band(arfcn), 1);
+ /* window open for TRF6151 */
trf6151_tx_window(offset, arfcn);
#endif
/* Window open for ABB */
twl3025_uplink(1, offset);
+#ifdef CONFIG_TX_ENABLE
+ /* Window open for RFFE */
+ rffe_mode(gsm_arfcn2band(arfcn), 1);
+#endif
+
/* Window close for ABB */
twl3025_uplink(0, tx_burst_duration[wtype] + offset + 2); // TODO: "+ 2"
- /* window close for TRF6151 and RFFE */
+ /* window close for TRF6151 */
trf6151_set_mode(TRF6151_IDLE);
+
+ /* Window close for RFFE */
+ rffe_mode(gsm_arfcn2band(arfcn), 0);
}
void tpu_end_scenario(void)