From 3566ef991eaa5395864c2f1966f5065389808d82 Mon Sep 17 00:00:00 2001
From: Florian Kaltenberger <florian.kaltenberger@eurecom.fr>
Date: Tue, 10 Dec 2019 10:53:01 +0100
Subject: [PATCH] programming pin 5 of GPIO to "Shutdown LNA" (high -> TX, low
 -> RX)

---
 targets/ARCH/USRP/USERSPACE/LIB/usrp_lib.cpp | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/targets/ARCH/USRP/USERSPACE/LIB/usrp_lib.cpp b/targets/ARCH/USRP/USERSPACE/LIB/usrp_lib.cpp
index 70652c6f62..d59980c310 100644
--- a/targets/ARCH/USRP/USERSPACE/LIB/usrp_lib.cpp
+++ b/targets/ARCH/USRP/USERSPACE/LIB/usrp_lib.cpp
@@ -319,8 +319,11 @@ static int trx_usrp_start(openair0_device *device) {
     s->usrp->set_gpio_attr("FP0", "DDR", 0x7f, 0x7f);
     //set control register to ATR
     s->usrp->set_gpio_attr("FP0", "CTRL", 0x7f,0x7f);
-    //set ATR register
+    //set pins 4 (RX_TX_Switch) and 6 (Shutdown PA) to 1 when the radio is only receiving (ATR_RX)
     s->usrp->set_gpio_attr("FP0", "ATR_RX", (1<<4)|(1<<6), 0x7f);
+    // set pin 5 (Shutdown LNA) to 1 when the radio is transmitting and receiveing (ATR_XX)
+    // (we use full duplex here, because our RX is on all the time - this might need to change later)
+    s->usrp->set_gpio_attr("FP0", "ATR_XX", (1<<5), 0x7f);
     // init recv and send streaming
     uhd::stream_cmd_t cmd(uhd::stream_cmd_t::STREAM_MODE_START_CONTINUOUS);
     LOG_I(HW,"Time in secs now: %llu \n", s->usrp->get_time_now().to_ticks(s->sample_rate));
-- 
2.26.2