[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Commit-gnuradio] r9956 - in gnuradio/branches/developers/eb/cppdb-wip:
From: |
eb |
Subject: |
[Commit-gnuradio] r9956 - in gnuradio/branches/developers/eb/cppdb-wip: gnuradio-examples/c++/usrp_test gr-usrp/src usrp/host/lib/legacy usrp2/host/include/usrp2 |
Date: |
Sat, 8 Nov 2008 00:24:40 -0700 (MST) |
Author: eb
Date: 2008-11-08 00:24:40 -0700 (Sat, 08 Nov 2008)
New Revision: 9956
Added:
gnuradio/branches/developers/eb/cppdb-wip/usrp/host/lib/legacy/usrp_tune_result.h
Modified:
gnuradio/branches/developers/eb/cppdb-wip/gnuradio-examples/c++/usrp_test/Makefile.am
gnuradio/branches/developers/eb/cppdb-wip/gnuradio-examples/c++/usrp_test/usrp_test.cc
gnuradio/branches/developers/eb/cppdb-wip/gr-usrp/src/Makefile.am
gnuradio/branches/developers/eb/cppdb-wip/gr-usrp/src/usrp_base.h
gnuradio/branches/developers/eb/cppdb-wip/gr-usrp/src/usrp_sink_base.cc
gnuradio/branches/developers/eb/cppdb-wip/gr-usrp/src/usrp_sink_base.h
gnuradio/branches/developers/eb/cppdb-wip/gr-usrp/src/usrp_source_base.cc
gnuradio/branches/developers/eb/cppdb-wip/gr-usrp/src/usrp_source_base.h
gnuradio/branches/developers/eb/cppdb-wip/usrp/host/lib/legacy/Makefile.am
gnuradio/branches/developers/eb/cppdb-wip/usrp/host/lib/legacy/usrp_standard.cc
gnuradio/branches/developers/eb/cppdb-wip/usrp/host/lib/legacy/usrp_standard.h
gnuradio/branches/developers/eb/cppdb-wip/usrp2/host/include/usrp2/tune_result.h
Log:
Everything compiles and runs. The Rx d'board framework looks
reasonable. usrp_test prints reasonable values... However,
the first call to the usrp_source_c::work returns -1, so something
wrong somewhere...
Modified:
gnuradio/branches/developers/eb/cppdb-wip/gnuradio-examples/c++/usrp_test/Makefile.am
===================================================================
---
gnuradio/branches/developers/eb/cppdb-wip/gnuradio-examples/c++/usrp_test/Makefile.am
2008-11-08 02:39:56 UTC (rev 9955)
+++
gnuradio/branches/developers/eb/cppdb-wip/gnuradio-examples/c++/usrp_test/Makefile.am
2008-11-08 07:24:40 UTC (rev 9956)
@@ -28,9 +28,11 @@
-I$(top_srcdir)/usrp/firmware/include \
$(WITH_INCLUDES)
-GR_USRP_LA=$(top_builddir)/gr-usrp/src/libusrp1.la \
- $(top_builddir)/usrp/host/lib/legacy/libusrp.la
+#GR_USRP_LA=$(top_builddir)/gr-usrp/src/libusrp1.la \
+# $(top_builddir)/usrp/host/lib/legacy/libusrp.la
+GR_USRP_LA=$(top_builddir)/gr-usrp/src/libgnuradio-usrp.la
+
# For compiling outside the tree, these will get fished out by pkgconfig
noinst_PROGRAMS = \
@@ -44,7 +46,7 @@
main.cc
usrp_test_LDADD = \
- $(GNURADIO_CORE_LA) \
- $(GR_USRP_LA)
+ $(GR_USRP_LA)
+# $(GNURADIO_CORE_LA)
MOSTLYCLEANFILES = *~
Modified:
gnuradio/branches/developers/eb/cppdb-wip/gnuradio-examples/c++/usrp_test/usrp_test.cc
===================================================================
---
gnuradio/branches/developers/eb/cppdb-wip/gnuradio-examples/c++/usrp_test/usrp_test.cc
2008-11-08 02:39:56 UTC (rev 9955)
+++
gnuradio/branches/developers/eb/cppdb-wip/gnuradio-examples/c++/usrp_test/usrp_test.cc
2008-11-08 07:24:40 UTC (rev 9956)
@@ -37,34 +37,37 @@
int decim = 64;
usrp_source_c_sptr usrp = usrp_make_source_c(0, decim);
- usrp_subdev_spec spec(2,0);
+ usrp_subdev_spec spec(0,0);
db_base_sptr subdev = usrp->selected_subdev(spec);
printf("Subdevice name is %s\n", subdev->name().c_str());
- printf("Subdevice freq range: (%f, %f)\n", subdev->freq_min(),
subdev->freq_max());
+ printf("Subdevice freq range: (%g, %g)\n", subdev->freq_min(),
subdev->freq_max());
unsigned int mux = usrp->determine_rx_mux_value(spec);
printf("mux: %x\n", mux);
usrp->set_mux(mux);
float input_rate = usrp->adc_freq() / usrp->decim_rate();
- printf("input_rate: %f\n", input_rate);
+ printf("baseband rate: %g\n", input_rate);
float gain_min = subdev->gain_min();
float gain_max = subdev->gain_max();
- printf("gain: (%f, %f)\n", gain_min, gain_max);
+ printf("gain: (%g, %g)\n", gain_min, gain_max);
subdev->set_gain((gain_min + gain_max)/2.0);
- float target_freq = 101.3e6;
- tune_result r = subdev->tune(0, target_freq);
- printf("r.ok: %d\n", r.ok);
+ usrp_tune_result r;
+ double target_freq = 101.3e6;
+ bool ok = usrp->tune(0, subdev, target_freq, &r);
+
+ printf("target_freq: %f\n", target_freq);
+ printf("ok: %s\n", ok ? "true" : "false");
printf("r.baseband_freq: %f\n", r.baseband_freq);
printf("r.dxc_freq: %f\n", r.dxc_freq);
printf("r.residual_freq: %f\n", r.residual_freq);
printf("r.inverted: %d\n", r.inverted);
/* The rest */
- gr_block_sptr head = gr_make_head(sizeof(gr_complex), 100);
+ gr_block_sptr head = gr_make_head(sizeof(gr_complex), 1024);
sink = gr_make_vector_sink_c();
connect(usrp, 0, head, 0);
Modified: gnuradio/branches/developers/eb/cppdb-wip/gr-usrp/src/Makefile.am
===================================================================
--- gnuradio/branches/developers/eb/cppdb-wip/gr-usrp/src/Makefile.am
2008-11-08 02:39:56 UTC (rev 9955)
+++ gnuradio/branches/developers/eb/cppdb-wip/gr-usrp/src/Makefile.am
2008-11-08 07:24:40 UTC (rev 9956)
@@ -71,26 +71,44 @@
$(LOCAL_IFILES)
+# ----------------------------------------------------------------
+# The straight C++ library
+
+lib_LTLIBRARIES = \
+ libgnuradio-usrp.la
+# libgnuradio-usrp-qa.la
+
+libgnuradio_usrp_la_SOURCES = \
+ usrp_base.cc \
+ usrp_sink_base.cc \
+ usrp_sink_c.cc \
+ usrp_sink_s.cc \
+ usrp_source_base.cc \
+ usrp_source_c.cc \
+ usrp_source_s.cc
+
+libgnuradio_usrp_la_LIBADD = \
+ $(GNURADIO_CORE_LA) \
+ $(USRP_LA)
+
+
+libgnuradio_usrp_la_LDFLAGS = $(NO_UNDEFINED) -version-info 0:0:0
+
+
+# ----------------------------------------------------------------
+# The SWIG library
+
ourlib_LTLIBRARIES = _usrp_swig.la
-_usrp_swig_la_SOURCES = \
- usrp_base.cc \
- usrp_sink_base.cc \
- usrp_sink_c.cc \
- usrp_sink_s.cc \
- usrp_source_base.cc \
- usrp_source_c.cc \
- usrp_source_s.cc \
+_usrp_swig_la_SOURCES = \
usrp_swig.cc
-_usrp_swig_la_LIBADD = \
- $(PYTHON_LDFLAGS) \
- $(GNURADIO_CORE_LA) \
- $(USRP_LA)
+_usrp_swig_la_LIBADD = \
+ $(PYTHON_LDFLAGS) \
+ libgnuradio-usrp.la
-
_usrp_swig_la_LDFLAGS = $(NO_UNDEFINED) -module -avoid-version
_usrp_swig_la_CXXFLAGS = @swig_CXXFLAGS@
Modified: gnuradio/branches/developers/eb/cppdb-wip/gr-usrp/src/usrp_base.h
===================================================================
--- gnuradio/branches/developers/eb/cppdb-wip/gr-usrp/src/usrp_base.h
2008-11-08 02:39:56 UTC (rev 9955)
+++ gnuradio/branches/developers/eb/cppdb-wip/gr-usrp/src/usrp_base.h
2008-11-08 07:24:40 UTC (rev 9956)
@@ -26,6 +26,7 @@
#include <boost/shared_ptr.hpp>
#include <db_base.h>
#include <usrp_subdev_spec.h>
+#include <usrp_tune_result.h>
class usrp_basic;
Modified:
gnuradio/branches/developers/eb/cppdb-wip/gr-usrp/src/usrp_sink_base.cc
===================================================================
--- gnuradio/branches/developers/eb/cppdb-wip/gr-usrp/src/usrp_sink_base.cc
2008-11-08 02:39:56 UTC (rev 9955)
+++ gnuradio/branches/developers/eb/cppdb-wip/gr-usrp/src/usrp_sink_base.cc
2008-11-08 07:24:40 UTC (rev 9956)
@@ -205,3 +205,9 @@
{
return d_usrp->nducs();
}
+
+bool
+usrp_sink_base::tune(int chan, db_base_sptr db, double target_freq,
usrp_tune_result *result)
+{
+ return d_usrp->tune(chan, db, target_freq, result);
+}
Modified: gnuradio/branches/developers/eb/cppdb-wip/gr-usrp/src/usrp_sink_base.h
===================================================================
--- gnuradio/branches/developers/eb/cppdb-wip/gr-usrp/src/usrp_sink_base.h
2008-11-08 02:39:56 UTC (rev 9955)
+++ gnuradio/branches/developers/eb/cppdb-wip/gr-usrp/src/usrp_sink_base.h
2008-11-08 07:24:40 UTC (rev 9956)
@@ -109,6 +109,21 @@
bool has_tx_halfband();
int nddcs();
int nducs();
+
+ /*!
+ * \brief High-level "tune" method. Works for the single channel case.
+ *
+ * This method adjusts both the daughterboard LO and the DUC so that
+ * DC in the complex baseband samples ends up at RF target_freq.
+ *
+ * \param chan which DUC channel we're controlling (usually == which_side).
+ * \param db the daughterboard we're controlling.
+ * \param target_freq the RF frequency we want our baseband translated to.
+ * \param[out] tune_result details how the hardware was configured.
+ *
+ * \returns true iff everything was successful.
+ */
+ bool tune(int chan, db_base_sptr db, double target_freq, usrp_tune_result
*result);
};
#endif /* INCLUDED_USRP_SINK_BASE_H */
Modified:
gnuradio/branches/developers/eb/cppdb-wip/gr-usrp/src/usrp_source_base.cc
===================================================================
--- gnuradio/branches/developers/eb/cppdb-wip/gr-usrp/src/usrp_source_base.cc
2008-11-08 02:39:56 UTC (rev 9955)
+++ gnuradio/branches/developers/eb/cppdb-wip/gr-usrp/src/usrp_source_base.cc
2008-11-08 07:24:40 UTC (rev 9956)
@@ -257,3 +257,8 @@
return d_usrp->nducs();
}
+bool
+usrp_source_base::tune(int chan, db_base_sptr db, double target_freq,
usrp_tune_result *result)
+{
+ return d_usrp->tune(chan, db, target_freq, result);
+}
Modified:
gnuradio/branches/developers/eb/cppdb-wip/gr-usrp/src/usrp_source_base.h
===================================================================
--- gnuradio/branches/developers/eb/cppdb-wip/gr-usrp/src/usrp_source_base.h
2008-11-08 02:39:56 UTC (rev 9955)
+++ gnuradio/branches/developers/eb/cppdb-wip/gr-usrp/src/usrp_source_base.h
2008-11-08 07:24:40 UTC (rev 9956)
@@ -178,6 +178,20 @@
static bool format_want_q(unsigned int format);
static bool format_bypass_halfband(unsigned int format);
+ /*!
+ * \brief High-level "tune" method. Works for the single channel case.
+ *
+ * This method adjusts both the daughterboard LO and the DDC so that
+ * target_freq ends up at DC in the complex baseband samples.
+ *
+ * \param chan which DDC channel we're controlling (almost always 0).
+ * \param db the daughterboard we're controlling.
+ * \param target_freq the RF frequency we want at DC in the complex baseband.
+ * \param[out] tune_result details how the hardware was configured.
+ *
+ * \returns true iff everything was successful.
+ */
+ bool tune(int chan, db_base_sptr db, double target_freq, usrp_tune_result
*result);
};
#endif /* INCLUDED_USRP_SOURCE_BASE_H */
Modified:
gnuradio/branches/developers/eb/cppdb-wip/usrp/host/lib/legacy/Makefile.am
===================================================================
--- gnuradio/branches/developers/eb/cppdb-wip/usrp/host/lib/legacy/Makefile.am
2008-11-08 02:39:56 UTC (rev 9955)
+++ gnuradio/branches/developers/eb/cppdb-wip/usrp/host/lib/legacy/Makefile.am
2008-11-08 07:24:40 UTC (rev 9956)
@@ -149,7 +149,8 @@
usrp_prims.h \
usrp_slots.h \
usrp_standard.h \
- usrp_subdev_spec.h
+ usrp_subdev_spec.h \
+ usrp_tune_result.h
noinst_HEADERS = \
ad9862.h \
Modified:
gnuradio/branches/developers/eb/cppdb-wip/usrp/host/lib/legacy/usrp_standard.cc
===================================================================
---
gnuradio/branches/developers/eb/cppdb-wip/usrp/host/lib/legacy/usrp_standard.cc
2008-11-08 02:39:56 UTC (rev 9955)
+++
gnuradio/branches/developers/eb/cppdb-wip/usrp/host/lib/legacy/usrp_standard.cc
2008-11-08 07:24:40 UTC (rev 9956)
@@ -45,7 +45,7 @@
void
-usrp_standard_common::calc_dxc_freq(double target_freq, double baseband_freq,
long fs,
+usrp_standard_common::calc_dxc_freq(double target_freq, double baseband_freq,
double fs,
double *dxc_freq, bool *inverted)
{
/*
@@ -60,6 +60,13 @@
Nyquist zone.
*/
+ if (1){
+ printf("calc_dxc_freq:\n");
+ printf(" target = %f\n", target_freq);
+ printf(" baseband = %f\n", baseband_freq);
+ printf(" fs = %f\n", fs);
+ }
+
double delta = target_freq - baseband_freq;
if(delta >= 0) {
@@ -88,6 +95,11 @@
*inverted = true;
}
}
+
+ if (1){
+ printf(" dxc_freq = %f\n", *dxc_freq);
+ printf(" inverted = %s\n", *inverted ? "true" : "false");
+ }
}
@@ -102,10 +114,11 @@
};
class ddc_control : public dxc_control {
- usrp_standard_rx_sptr d_u;
+ usrp_standard_rx *d_u;
int d_chan;
- ddc_control(usrp_standard_rx_sptr u, int chan)
+public:
+ ddc_control(usrp_standard_rx *u, int chan)
: d_u(u), d_chan(chan) {}
bool is_tx(){ return false; }
@@ -114,10 +127,11 @@
};
class duc_control : public dxc_control {
- usrp_standard_tx_sptr d_u;
+ usrp_standard_tx *d_u;
int d_chan;
- duc_control(usrp_standard_tx_sptr u, int chan)
+public:
+ duc_control(usrp_standard_tx *u, int chan)
: d_u(u), d_chan(chan) {}
bool is_tx(){ return true; }
@@ -187,7 +201,7 @@
result->dxc_freq = dxc_freq;
result->residual_freq = dxc_freq - actual_dxc_freq;
- result->spectrum_inverted = inverted;
+ result->inverted = inverted;
return ok;
}
@@ -744,6 +758,14 @@
return (format & bmFR_RX_FORMAT_BYPASS_HB) != 0;
}
+bool
+usrp_standard_rx::tune(int chan, db_base_sptr db, double target_freq,
usrp_tune_result *result)
+{
+ ddc_control dxc(this, chan);
+ return tune_a_helper(db, target_freq, converter_rate(), dxc, result);
+}
+
+
//////////////////////////////////////////////////////////////////
@@ -1118,3 +1140,10 @@
return d_coarse_mod[channel];
}
+
+bool
+usrp_standard_tx::tune(int chan, db_base_sptr db, double target_freq,
usrp_tune_result *result)
+{
+ duc_control dxc(this, chan);
+ return tune_a_helper(db, target_freq, converter_rate(), dxc, result);
+}
Modified:
gnuradio/branches/developers/eb/cppdb-wip/usrp/host/lib/legacy/usrp_standard.h
===================================================================
---
gnuradio/branches/developers/eb/cppdb-wip/usrp/host/lib/legacy/usrp_standard.h
2008-11-08 02:39:56 UTC (rev 9955)
+++
gnuradio/branches/developers/eb/cppdb-wip/usrp/host/lib/legacy/usrp_standard.h
2008-11-08 07:24:40 UTC (rev 9956)
@@ -25,6 +25,7 @@
#include <usrp_basic.h>
#include <boost/shared_ptr.hpp>
+#include <usrp_tune_result.h>
class usrp_standard_tx;
class usrp_standard_rx;
@@ -32,27 +33,6 @@
typedef boost::shared_ptr<usrp_standard_tx> usrp_standard_tx_sptr;
typedef boost::shared_ptr<usrp_standard_rx> usrp_standard_rx_sptr;
-class usrp_tune_result
-{
-public:
- // RF frequency that corresponds to DC in the IF
- double baseband_freq;
-
- // frequency programmed into the DDC/DUC
- double dxc_freq;
-
- // residual frequency (typically < 0.01 Hz)
- double residual_freq;
-
- // is the spectrum inverted?
- bool spectrum_inverted;
-
- usrp_tune_result(double baseband=0, double dxc=0, double residual=0, bool
inverted=false)
- : baseband_freq(baseband), dxc_freq(dxc),
- residual_freq(residual), spectrum_inverted(inverted) {}
-};
-
-
class usrp_standard_common
{
int d_fpga_caps; // capability register val
@@ -85,7 +65,6 @@
*/
int nducs() const;
-
/*!
* \brief Calculate the frequency to use for setting the digital up or down
converter.
*
@@ -95,7 +74,7 @@
* \param[out] dxc_freq the frequency to program into the DDC (or DUC).
* \param[out] inverted is true if we're operating in an inverted Nyquist
zone.
*/
- static void calc_dxc_freq(double target_freq, double baseband_freq, long fs,
+ static void calc_dxc_freq(double target_freq, double baseband_freq, double
fs,
double *dxc_freq, bool *inverted);
};
@@ -261,6 +240,22 @@
static bool format_want_q(unsigned int format);
static bool format_bypass_halfband(unsigned int format);
+ /*!
+ * \brief High-level "tune" method. Works for the single channel case.
+ *
+ * This method adjusts both the daughterboard LO and the DDC so that
+ * target_freq ends up at DC in the complex baseband samples.
+ *
+ * \param chan which DDC channel we're controlling (almost always 0).
+ * \param db the daughterboard we're controlling.
+ * \param target_freq the RF frequency we want at DC in the complex baseband.
+ * \param[out] tune_result details how the hardware was configured.
+ *
+ * \returns true iff everything was successful.
+ */
+ bool tune(int chan, db_base_sptr db, double target_freq, usrp_tune_result
*result);
+
+
// ACCESSORS
unsigned int decim_rate () const;
double rx_freq (int channel) const;
@@ -411,6 +406,22 @@
int nchannels () const;
int mux () const;
+ /*!
+ * \brief High-level "tune" method. Works for the single channel case.
+ *
+ * This method adjusts both the daughterboard LO and the DUC so that
+ * DC in the complex baseband samples ends up at RF target_freq.
+ *
+ * \param chan which DUC channel we're controlling (usually == which_side).
+ * \param db the daughterboard we're controlling.
+ * \param target_freq the RF frequency we want our baseband translated to.
+ * \param[out] tune_result details how the hardware was configured.
+ *
+ * \returns true iff everything was successful.
+ */
+ bool tune(int chan, db_base_sptr db, double target_freq, usrp_tune_result
*result);
+
+
// called in base class to derived class order
bool start ();
bool stop ();
Added:
gnuradio/branches/developers/eb/cppdb-wip/usrp/host/lib/legacy/usrp_tune_result.h
===================================================================
---
gnuradio/branches/developers/eb/cppdb-wip/usrp/host/lib/legacy/usrp_tune_result.h
(rev 0)
+++
gnuradio/branches/developers/eb/cppdb-wip/usrp/host/lib/legacy/usrp_tune_result.h
2008-11-08 07:24:40 UTC (rev 9956)
@@ -0,0 +1,44 @@
+/* -*- c++ -*- */
+/*
+ * Copyright 2008 Free Software Foundation, Inc.
+ *
+ * This file is part of GNU Radio
+ *
+ * GNU Radio is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 3, or (at your option)
+ * any later version.
+ *
+ * GNU Radio is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ */
+#ifndef INCLUDED_USRP_TUNE_RESULT_H
+#define INCLUDED_USRP_TUNE_RESULT_H
+
+class usrp_tune_result
+{
+public:
+ // RF frequency that corresponds to DC in the IF
+ double baseband_freq;
+
+ // frequency programmed into the DDC/DUC
+ double dxc_freq;
+
+ // residual frequency (typically < 0.01 Hz)
+ double residual_freq;
+
+ // is the spectrum inverted?
+ bool inverted;
+
+ usrp_tune_result(double baseband=0, double dxc=0, double residual=0, bool
_inverted=false)
+ : baseband_freq(baseband), dxc_freq(dxc),
+ residual_freq(residual), inverted(_inverted) {}
+};
+
+#endif /* INCLUDED_USRP_TUNE_RESULT_H */
Property changes on:
gnuradio/branches/developers/eb/cppdb-wip/usrp/host/lib/legacy/usrp_tune_result.h
___________________________________________________________________
Name: svn:eol-style
+ native
Modified:
gnuradio/branches/developers/eb/cppdb-wip/usrp2/host/include/usrp2/tune_result.h
===================================================================
---
gnuradio/branches/developers/eb/cppdb-wip/usrp2/host/include/usrp2/tune_result.h
2008-11-08 02:39:56 UTC (rev 9955)
+++
gnuradio/branches/developers/eb/cppdb-wip/usrp2/host/include/usrp2/tune_result.h
2008-11-08 07:24:40 UTC (rev 9956)
@@ -16,8 +16,8 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef INCLUDED_TUNE_RESULT_H
-#define INCLUDED_TUNE_RESULT_H
+#ifndef INCLUDED_USRP2_TUNE_RESULT_H
+#define INCLUDED_USRP2_TUNE_RESULT_H
namespace usrp2 {
@@ -36,10 +36,11 @@
// is the spectrum inverted?
bool spectrum_inverted;
- tune_result()
- : baseband_freq(0), dxc_freq(0), residual_freq(0),
spectrum_inverted(false) {}
+ tune_result(double baseband=0, double dxc=0, double residual=0, bool
inverted=false)
+ : baseband_freq(baseband), dxc_freq(dxc),
+ residual_freq(residual), spectrum_inverted(inverted) {}
};
} // namespace usrp2
-#endif /* INCLUDED_TUNE_RESULT_H */
+#endif /* INCLUDED_USRP2_TUNE_RESULT_H */
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Commit-gnuradio] r9956 - in gnuradio/branches/developers/eb/cppdb-wip: gnuradio-examples/c++/usrp_test gr-usrp/src usrp/host/lib/legacy usrp2/host/include/usrp2,
eb <=