aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Tsou <tom@tsou.cc>2013-04-08 13:35:36 -0400
committerThomas Tsou <tom@tsou.cc>2013-10-18 13:03:41 -0400
commitf2293b8cfa8167e7847cd04ce6a25cfa91abf41f (patch)
tree01f7bc6956819ab2378addc65bcd801b554bc282
parente3e88149487c72bd722f83865bca571134caa454 (diff)
Transceiver52M: Remove periodic alignment update from UHD build
Periodic timing alignment should never be required for UHD devices, though the mechanism was used as a fallback mechanism should UHD not properly recover after an underrun - as may occur in old 003.003.000 based revisions. This issue is not a concern in more recent UHD releases and deprecates this code for legacy USRP1 use only. Signed-off-by: Thomas Tsou <tom@tsou.cc>
-rw-r--r--Transceiver52M/UHDDevice.cpp1
-rw-r--r--Transceiver52M/radioInterface.cpp12
-rw-r--r--Transceiver52M/radioInterface.h8
3 files changed, 8 insertions, 13 deletions
diff --git a/Transceiver52M/UHDDevice.cpp b/Transceiver52M/UHDDevice.cpp
index a2b616c..6ce3380 100644
--- a/Transceiver52M/UHDDevice.cpp
+++ b/Transceiver52M/UHDDevice.cpp
@@ -772,7 +772,6 @@ int uhd_device::writeSamples(short *buf, int len, bool *underrun,
bool uhd_device::updateAlignment(TIMESTAMP timestamp)
{
- aligned = false;
return true;
}
diff --git a/Transceiver52M/radioInterface.cpp b/Transceiver52M/radioInterface.cpp
index b733d0e..65d5738 100644
--- a/Transceiver52M/radioInterface.cpp
+++ b/Transceiver52M/radioInterface.cpp
@@ -118,8 +118,10 @@ bool RadioInterface::tuneRx(double freq)
void RadioInterface::start()
{
LOG(INFO) << "starting radio interface...";
+#ifdef USRP1
mAlignRadioServiceLoopThread.start((void * (*)(void*))AlignRadioServiceLoopAdapter,
(void*)this);
+#endif
writeTimestamp = mRadio->initialWriteTimestamp();
readTimestamp = mRadio->initialReadTimestamp();
mRadio->start();
@@ -134,6 +136,7 @@ void RadioInterface::start()
}
+#ifdef USRP1
void *AlignRadioServiceLoopAdapter(RadioInterface *radioInterface)
{
while (1) {
@@ -147,6 +150,7 @@ void RadioInterface::alignRadio() {
sleep(60);
mRadio->updateAlignment(writeTimestamp+ (TIMESTAMP) 10000);
}
+#endif
void RadioInterface::driveTransmitRadio(signalVector &radioBurst, bool zeroBurst) {
@@ -218,14 +222,6 @@ bool RadioInterface::isUnderrun()
return retVal;
}
-void RadioInterface::attach(RadioDevice *wRadio, int wRadioOversampling)
-{
- if (!mOn) {
- mRadio = wRadio;
- mRadioOversampling = SAMPSPERSYM;
- }
-}
-
double RadioInterface::setRxGain(double dB)
{
if (mRadio)
diff --git a/Transceiver52M/radioInterface.h b/Transceiver52M/radioInterface.h
index 3c58222..d1131c6 100644
--- a/Transceiver52M/radioInterface.h
+++ b/Transceiver52M/radioInterface.h
@@ -143,17 +143,17 @@ public:
/** get transport window type of attached device */
enum RadioDevice::TxWindowType getWindowType() { return mRadio->getWindowType(); }
+#if USRP1
protected:
/** drive synchronization of Tx/Rx of USRP */
void alignRadio();
- /** reset the interface */
- void reset();
-
friend void *AlignRadioServiceLoopAdapter(RadioInterface*);
-
+#endif
};
+#if USRP1
/** synchronization thread loop */
void *AlignRadioServiceLoopAdapter(RadioInterface*);
+#endif