lms: Fix support for rx_paths / tx_paths

Before this patch, any configuration in osmo-trx.cfg regarding the rx
and tx "antenna" (path) would have been completely ignored, as the
radioDevice::make() function would simply drop those arguments to the
floor.

Change-Id: Ie50f854abbc9dcf351cddc052d10206382e1d5d3
This commit is contained in:
Harald Welte 2018-06-13 21:55:09 +02:00
parent 2407314f2e
commit 105a61e689
2 changed files with 10 additions and 3 deletions

View File

@ -40,11 +40,16 @@ constexpr double LMSDevice::masterClockRate;
#define LMS_MIN_BW_SUPPORTED 2.5e6 /* 2.5mHz, minimum supported by LMS */
#define LMS_CALIBRATE_BW_HZ OSMO_MAX(GSM_CARRIER_BW, LMS_MIN_BW_SUPPORTED)
LMSDevice::LMSDevice(size_t sps, size_t chans):
LMSDevice::LMSDevice(size_t sps, size_t chans,
const std::vector<std::string>& tx_paths,
const std::vector<std::string>& rx_paths):
m_lms_dev(NULL), sps(sps), chans(chans)
{
LOG(INFO) << "creating LMS device...";
this->tx_paths = tx_paths;
this->rx_paths = rx_paths;
m_lms_stream_rx.resize(chans);
m_lms_stream_tx.resize(chans);
@ -617,5 +622,5 @@ RadioDevice *RadioDevice::make(size_t tx_sps, size_t rx_sps,
const std::vector < std::string > &tx_paths,
const std::vector < std::string > &rx_paths)
{
return new LMSDevice(tx_sps, chans);
return new LMSDevice(tx_sps, chans, tx_paths, rx_paths);
}

View File

@ -65,7 +65,9 @@ private:
public:
/** Object constructor */
LMSDevice(size_t sps, size_t chans);
LMSDevice(size_t sps, size_t chans,
const std::vector<std::string>& tx_paths,
const std::vector<std::string>& rx_paths);
/** Instantiate the LMS */
int open(const std::string &args, int ref, bool swap_channels);