summaryrefslogtreecommitdiff
path: root/usrp2/firmware/apps
diff options
context:
space:
mode:
Diffstat (limited to 'usrp2/firmware/apps')
-rw-r--r--usrp2/firmware/apps/.gitignore2
-rw-r--r--usrp2/firmware/apps/Makefile.am8
-rw-r--r--usrp2/firmware/apps/app_common_v2.c14
3 files changed, 23 insertions, 1 deletions
diff --git a/usrp2/firmware/apps/.gitignore b/usrp2/firmware/apps/.gitignore
index b8ab0dc8d..33469a796 100644
--- a/usrp2/firmware/apps/.gitignore
+++ b/usrp2/firmware/apps/.gitignore
@@ -63,6 +63,8 @@
/tx_only_v2
/rx_only_v2
/txrx
+/txrx_wbx
+/txrx_xcvr
/eth_serdes
/serdes_txrx
/set_hw_rev
diff --git a/usrp2/firmware/apps/Makefile.am b/usrp2/firmware/apps/Makefile.am
index b809039d0..00f682fc7 100644
--- a/usrp2/firmware/apps/Makefile.am
+++ b/usrp2/firmware/apps/Makefile.am
@@ -45,6 +45,8 @@ noinst_PROGRAMS = \
timer_test \
tx_standalone \
txrx \
+ txrx_wbx \
+ txrx_xcvr \
factory_test \
burnrev30 \
burnrev31 \
@@ -61,12 +63,18 @@ noinst_PROGRAMS = \
# tx_drop_rate_limited_SOURCES = tx_drop_rate_limited.c app_common.c
# tx_drop2_SOURCES = tx_drop2.c app_common.c
txrx_SOURCES = txrx.c app_common_v2.c
+txrx_wbx_SOURCES = txrx.c app_common_v2.c
+txrx_xcvr_SOURCES = txrx.c app_common_v2.c
factory_test_SOURCES = factory_test.c app_common_v2.c
eth_serdes_SOURCES = eth_serdes.c app_passthru_v2.c
serdes_txrx_SOURCES = serdes_txrx.c app_common_v2.c
mimo_tx_SOURCES = mimo_tx.c mimo_app_common_v2.c
mimo_tx_slave_SOURCES = mimo_tx_slave.c app_common_v2.c
+txrx_wbx_LDADD = ../lib/libu2fw_wbx.a
+
+txrx_xcvr_LDADD = ../lib/libu2fw_xcvr.a
+
noinst_HEADERS = \
app_common_v2.h \
app_passthru_v2.h \
diff --git a/usrp2/firmware/apps/app_common_v2.c b/usrp2/firmware/apps/app_common_v2.c
index 2d131bda7..7716ed992 100644
--- a/usrp2/firmware/apps/app_common_v2.c
+++ b/usrp2/firmware/apps/app_common_v2.c
@@ -31,6 +31,7 @@
#include "clocks.h"
#include "u2_init.h"
#include <string.h>
+#include "usrp2_i2c_addr.h"
volatile bool link_is_up = false; // eth handler sets this
int cpu_tx_buf_dest_port = PORT_ETH;
@@ -308,7 +309,7 @@ read_time_cmd(const op_generic_t *p,
static void
fill_db_info(u2_db_info_t *p, const struct db_base *db)
{
- p->dbid = db->dbid;
+ //p->dbid = db->dbid;
p->freq_min_hi = u2_fxpt_freq_hi(db->freq_min);
p->freq_min_lo = u2_fxpt_freq_lo(db->freq_min);
p->freq_max_hi = u2_fxpt_freq_hi(db->freq_max);
@@ -334,6 +335,9 @@ dboard_info_cmd(const op_generic_t *p,
fill_db_info(&r->tx_db_info, tx_dboard);
fill_db_info(&r->rx_db_info, rx_dboard);
+ r->tx_db_info.dbid = read_dboard_eeprom(I2C_ADDR_TX_A);
+ r->rx_db_info.dbid = read_dboard_eeprom(I2C_ADDR_RX_A);
+
return r->len;
}
@@ -490,6 +494,14 @@ handle_control_chan_frame(u2_eth_packet_t *pkt, size_t len)
ok = true;
goto generic_reply;
+ case OP_RX_ANTENNA:
+ ok = db_set_antenna(rx_dboard, ((op_config_mimo_t *)payload)->flags);
+ goto generic_reply;
+
+ case OP_TX_ANTENNA:
+ ok = db_set_antenna(tx_dboard, ((op_config_mimo_t *)payload)->flags);
+ goto generic_reply;
+
case OP_BURN_MAC_ADDR:
ok = ethernet_set_mac_addr(&((op_burn_mac_addr_t *)payload)->addr);
goto generic_reply;