Age | Commit message (Collapse) | Author | Files | Lines |
|
osmo-trx-ipc needs to know which master socket it should talk to, so
pass this path in the config device args like this:
dev-args ipc_msock=/path/to/socket
Additionally, add a master socket suffix number parameter to the ipc
backend,
ipc-driver-test -n 0 to start serving /tmp/ipc_sock0
Change-Id: I24857fbb74e5fc808b2a218957c723291de2ba04
|
|
Change-Id: I8b593d792a992973e76dd19f7b678c9caa9c5e16
|
|
Change-Id: I674d51fdcab2691853681f661b441364ed75207a
|
|
Change-Id: I9f2c15adff96e71a806ef09f17152c11d7c043aa
|
|
Change-Id: Ib072b01451084e055882d2867b558a5f8ede95ea
|
|
Change-Id: Iec2ca94ed8b6cf96d8797540cff43af6542e6437
|
|
Change-Id: I2e8a93389cf2f6fc0b9a591f800c019427cf37e6
|
|
Change-Id: If523884e76166c11e88944bb7633ff3b54a3a88b
|
|
Change-Id: I057e272623b41421f442206f550bcc8c60f4a747
|
|
Change-Id: I6ddfd792ea42655e12fae0b195e362c98792b96f
|
|
Change-Id: I86cd659e74ebdbf43c4352e83e5adb78f8fe6de5
|
|
Change-Id: I01b2dce8e04cdc21872e5bbc3eec7e0a5e3d1b0b
|
|
Change-Id: Id2dc21e884991b3cca9f617aece12ac35959c1b2
|
|
Change-Id: I0e56539f699c39ab6e3546c96973184552da4d5f
|
|
Total size was previously only as large as sizeof(struct
ipc_shm_raw_stream) + sizeof(uint32_t)*num_buffers....
Change-Id: I1205b56a4b11bdf32fbdbfb82b67da36965a7981
|
|
Change-Id: Ia2631a869e23af520b9eade192dfdb032174c689
|
|
Change-Id: Ice63d3499026293ade8aad675ff7a883bcdd5756
|
|
The out "isControl" parameter is only used by internal callers of
USRPDevice, and not used at all by any user of the generic API
(radioInterface*.cpp). Hence, we can get rid of it and keep it as a flag
for an internal API of USRPDevice.
Change-Id: I843384e24b76cdd28a95f9ee4e95e6157098e4a3
|
|
The out "RSSI" parameter is only filled by USRPDevice, and not used at
all by any user of the API (radioInterface*.cpp).
RSSI seems to be computed nowadays in the common path in
Transceiver::pullRadioVector().
Change-Id: I06c2ea5a9891d170bc468f952bbf2a7e64d95784
|
|
With current state multi-arfcn can be used (eg. I can place a call
between 2 phones using TRX1 and sustain for as long as wanted), but from
time to time (around every 20seconds), a burst of Tx packed dropped
events from LimeSuite appears.
LimeNet-micro coefficients have yet not been tested.
Related: OS#4362
Change-Id: I7e67d90a8126546eeeeba376f816ec5d158d4712
|
|
Right now the values are the same for all devices, but they will differ
in forthcoming commits once multi-arfcn support is added.
Change-Id: I262d3a71848fc3070473e29e42820848e7591d02
|
|
Add an enum containing each supported device type (LimeSDR-USB,
LimeSDR-Mini and LimeNet-Micro) plus "unknown", to leave some room for
yet-to-come devices to run with some generic parameters without
rebuilding osmo-trx.
Each device type is assigned a dev_desc structure, and all of them are
put in HashMap, similar to what's already done in UHDDevice.cpp.
Device type is infered from string provided by LMS_GetDeviceInfo(), as
it was already done before in several places. From now on, we only need
to parse the string once since we store the device type after first
during open time.
Later on, more fields will be moved to device-type specific structure,
such as Tx timing offset, clock rate, etc.
Change-Id: I7658615787c5bc41c365bab9c11733b701ac2ae5
|
|
Release is done in destructor, so let's move allocation to constructor
since there's really no need to have them in open() which is already
quite complex and large.
Change-Id: I8a4fd973590c4c165abd8f2837b2da8fc14a2066
|
|
Change-Id: Ieebdbd3d5082a02aea2441e6737783370511cbc1
|
|
channel number mangling based on multi-arfcn feature being enabled was
moved to generic radioDevice() to reuse code. Hence, the generic parent
constructor sets this->chans to 1 if multi-arfcn feature is requested.
However, LMSDevice constructor argument had same name as the class
instance attribute, taking preference. As a result, if multi-arfcn is
enabled in LMSDevice, the generic constructor first sets this->chans=1
but afterwards LMSDEvice constructor keeps calling .resize() with the
argument value "chans" instead of using this->chans.
Let's rename the argument in all radioDevice child class constructors to
avoid potential future bugs in all of them.
Change-Id: Id6c837e9133f22783dd92a81dfcc493e51bf2d21
|
|
Change-Id: I511abe2c333443b978a3767bd7b7e320e07c4930
|
|
Change-Id: I95fadac15b9ad337ebc7cfb44a20dcf803ff8a47
|
|
Change-Id: Iaf3361ed29dd552e5e52b62bc738fa20c6b583fe
|
|
Change-Id: I135a2ff4a419775169452be1128c7b30f7d638ad
|
|
Change-Id: If5aba28aaf8a3312d89b3e963184f9f20966d199
|
|
Change-Id: I36f1ff7d425a2144fb512ff393af02741eb4a3d4
|
|
Make sure old configs using "logging level lms <level>" are still accepted.
Initialization order of VTY componenets need to be resorted since newly
introduced command requires logging VTY node to be already setup
beforehand.
Change-Id: Ia195a74a62a8a3dd6267fb1359acaa5628208d8e
|
|
Change-Id: I4568eaed6db3da12f83f2f503a50032f7bfb482c
|
|
Change-Id: I4ec7accb1912c052b446be7c399bed32a8c62253
|
|
This way switch is applied correctly to parent structures and features
can be used later by other children classes (other devices).
Change-Id: I24d6c66bb3195ba2513b4a67daa14cdfbacdce6d
|
|
After previous changes, radioInterfaceMulti is expected to handle channel
conversion correctly, so it will always use chan 0 for all these
functions. This simplifies code in radioDevice avoiding need to add
checks to all devices supporting multi-arfcn in the future.
Change-Id: Ib2cd50a6ceaeedc6aaf3e1bb51d33b52911b6eba
|
|
It will be used in later commits by radioInterfaceMulti.
Change-Id: Ie3caca8971ed1e5370dfed6fb60716a24e7d82a5
|
|
Change-Id: I11e853e11bec99fc88e81642f9b2cd87d5815398
|
|
Change-Id: I0d8fd51586ef01141d4e5896f0fc3029a22743f8
|
|
field rxGain is set to 0 during constructor and never set after that
point.
Change-Id: I7fae7a315e5ab98a15c27628a88a92226ef89469
|
|
Change-Id: I3099498e3a3f26b53d55a96a36cc056f7b25b27a
|
|
Related: OS#3343
Change-Id: Icd328e85b0a75ef67f371a7ed72638053b1854f9
|
|
This code is not needed anymore since we are setting SCHED_RR scheduler
with a real time priority in main thread during startup, so all threads
will inherit same rt priority, which should be enough to keep the
process working reliably even on high system loads (from non rt
processes).
osmo-trx was tested to be reliable during test with stress-ng as
explained in related ticket below.
Related: OS#2344
Change-Id: I3a88946dd71e9aeeaac9d19d396e2236c302b608
|
|
This file is only used by USRP1, so let's move it there and avoid
processing it in Makefiles if build for USRP1 is not requested at
configure time.
Change-Id: Ibb40ba487581e76d2ae3e8a420d631670f876cf0
|
|
After discussion in [1] and further look at the code, it became obvios
rx_underrun events are not happening in general for any SDR (don't
exist), so let's drop that counter. Instead, add Tx Dropped Packet counters,
which were not accounted prior to this commit.
[1] https://github.com/osmocom/osmo-trx/commit/bde55afd29fc9aae10eb11f6515821afa39b772d
Change-Id: Iff1535c219a4695a511d383d7c4b06ef6eff959d
|
|
The pointer can't never be null, so avoid checking it.
Change-Id: I12e14641713a6494bc89570f02cecfc6f8fd4b5e
|
|
Related: OS#3515
Change-Id: I3719bd8dc015569ecd81928fc079e27593cdca09
|
|
It was initially thought that underruns/overrun fields were
increasing-over-time values.
However, after reading LimeSuite code, it seems overrun and
underrun fields are actually reset upon every call to
LMS_GetStreamStatus().
Related: osmo-trx.git 928177125654c1e596ec3450a68882c031ebb929
Related: https://github.com/myriadrf/LimeSuite/issues/265
Change-Id: I677232a7b12ee83d26aa34d92f76a91d4b5a63a6
|
|
Change-Id: I19192925d008046f474615a0476b52ddee9a9d78
|
|
Introduce a unified implementation-agnostic interface for radioDevice to
signal SDR error counters to upper layers and manage them.
This patch only implements counters for osmo-trx-lms (other devices will
show all counters unchanged during time).
Sample use through VTY:
"""
OsmoTRX> show rate-counters
osmo-trx statistics 0:
device:rx_underruns: 0 (0/s 0/m 0/h 0/d) Number of Rx underruns
device:rx_overruns: 0 (0/s 0/m 0/h 0/d) Number of Rx overruns
device:tx_underruns: 0 (0/s 0/m 0/h 0/d) Number of Tx underruns
device:rx_drop_events: 4 (0/s 2/m 3/h 0/d) Number of times Rx samples were dropped by HW
device:rx_drop_samples: 513 (0/s 196/m 425/h 0/d) Number of Rx samples dropped by HW
"""
Change-Id: I78b158141697e5714d04db8b9ccc96f31f34f439
|