| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
Fail during the configure stage if the submodule is not fetched.
Change-Id: I06456c2087e160032f5bf8b36304477390f117d0
Related: OS#5599
|
|
|
|
|
|
|
| |
Always log whether the MS TRX is going to be built, event if it's not.
Change-Id: I1c5648b8090ba2b6638b71f2d3332dfae87b2772
Related: OS#5599
|
|
|
|
|
|
|
| |
Make it consistent with the existing AS_IF/AM_CONDITIONAL locations.
Change-Id: I760b93c1b07989b02c4c38cd20ab40e45650f2c1
Related: OS#5599
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The MS TRX was intentionally added [1] as an optional feature, which
requires a git submodule to be present in order to build libtrxcon.
This feature can be enabled by passing --with-mstrx to the configure.
But autoconf/automake is a mess. Despite in the root Makefile.am we
are adding full submodule path to the SUBDIRS *conditionally*, the
configure script would still fail if the submodule is not fetched:
Makefile.am:32: error: required directory
./osmocom-bb/src/host/trxcon
does not exist
It would not even enter that directory if it's present, but somehow
it's still required to exist. For the end user this means that
cloning the submodule becomes a *necessary* step in order to build
osmo-trx from source, even when the MS TRX is not really needed.
The fact that we're unconditionally requiring the submodule, which
is meant to be used by an optional feature feels wrong to me. It's
also unusual for osmocom projects to require submodules, so it may
(and already did) cause build failures when cloning as usual.
Let's work this problem around by defining LIBTRXCON_DIR variable
in configure.ac and using it in the root Makefile.am. If the MS
TRX is not enabled explicitly, make autoconf/automake happy by
assigning LIBTRXCON_DIR the submodule's root directory, which is
always present but empty if the submodule is not fetched.
Change-Id: I02ae2b37c82ae2f55e7d9bd92e226f2b8b023968
Related: [1] b7253c6fdc88a3e2e0c8b441dc3c34dfb1c15d24
Related: OS#5599, OS#5846
|
|
|
|
|
|
|
|
|
|
| |
Condition 'test ENABLE_MS_TRX' is always true because 'ENABLE_MS_TRX'
is a string literal, not a variable... Because of this, automeke will
unconditionally try to configure the submodule.
Change-Id: Icbb9278c688bfe506d5ad726f16a6c200572de1b
Fixes: b7253c6fdc88a3e2e0c8b441dc3c34dfb1c15d24
Related: OS#5599
|
|
|
|
|
| |
Closes: OS#5845
Change-Id: I3f8a0204b1fda52d1228add8afde620274b164a5
|
|
|
|
| |
Change-Id: I9828093a08ed8b4c2a11f482f674368ac137d4dc
|
|
|
|
| |
Change-Id: Ib1493ac10b40d24372075d4cebd67015192675e0
|
|
|
|
|
|
|
|
|
|
|
|
| |
This also uncovers very interesting design decisions like the copying of
mutexes and condition vars depending on recursive locks that were
previously hidden by shady c function calls..
We have perfectly good c++11 versions for all of that.
While we're at it, also use the initialization list for the other (still
copy constructable) vectors, which cleans up the radio interfaces.
Change-Id: Idc9e3b1144c5b93f5dad2f8e0e30f1058477aa52
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is basically a trxcon that includes a transceiver, and can just
be used with existing and future apps supporting the trxcon interface,
i.e. mobile or ccch_scan.
Supports bladerf and uhd.
Currently using hardcoded sched/prios aimed at a setup with working,
reliable usb and reserved cores, for example a raspi 4 (ONLY 4, not 3,
not 2, not any other version)
Additionally builds test tools used for development: osmo-trx-syncthing*
see https://osmocom.org/projects/baseband/wiki/MS-side_GPRS for the
project description and details
Change-Id: I36c65a8c725c4da76dc70006cd96b0a2b6878e84
|
|
|
|
| |
Change-Id: I0f9d8f9213fd59605172fac011306c96c39bd5eb
|
|
|
|
| |
Change-Id: Icb3ba575cf5235db7e6c03df3d7d45133d535c50
|
|
|
|
| |
Change-Id: Id7d1425e603cc62a62a63d1057291861f02782ba
|
|
|
|
|
|
|
|
| |
Grabbed from gr-gsm 2de47e28ce1fb9a518337bfc0add36c8e3cff5eb
Had a few rounds of extensive cleanup (not the va itself). Uses gcc
multiversioning for x86 targets.
Change-Id: I5466c522cf4de984a4810ec46df43a10b52ed78f
|
|
|
|
|
|
| |
see https://gerrit.osmocom.org/c/osmocom-bb/+/30563
Change-Id: Ie7b10891b69c3dc863c76284f422f9e9509ac244
|
|
|
|
|
|
|
|
|
| |
This is not really finished, there are multiple reasons to not use this:
1) main clock is not a gsm multiple, so it will continously drift
2) small buffer sizes lead to tx gaps that are hard to detect and break
everything.
Change-Id: I455c34bb9520d5f09eeb1ac76fceb4bdea94d1ac
|
|
|
|
|
|
|
|
|
|
| |
- do not lint the submodule
- do not lint the grgsm code
- do not lint headers, checkpatch does not understand that this is a c++
project and any change to existing headers will cause issues.
- also do not do arcane C varargs checks that do not apply to C++
Change-Id: Ie7a9fbd021e12a88db30212240af2332c6cdcb37
|
|
|
|
| |
Change-Id: I784a3d66b68f6458056d92db2ec596755b704e61
|
|
|
|
|
|
| |
The vectors feature is averaging, and not adding noise.
Change-Id: I05def8ab9ea7a2cece8db09c36c303e13ef40927
|
|
|
|
| |
Change-Id: Iad9fd20924b7cfc6dbbfb708aa9c692a3cab574c
|
|
|
|
|
|
|
| |
This sets highest realtime priority among all Osmocom services.
Related: OS#5687
Change-Id: Id74acf201d4388493f0eeb38909641c662551164
|
|
|
|
|
|
|
| |
It does not make sense for the MS to use 11-bit Access Bursts on
PTCCH/U because the payload does not matter, only the ToA does.
Change-Id: I5fb9f1c6810cdcd26a885b183e414d01d422eb28
|
|
|
|
|
|
|
|
|
|
|
| |
By default systemd will execute service with root directory
(or home directory for user instance) which might result in
attempts to create files in unexpected place. Let's set it
to 'osmocom' subdir of state directory
(/var/lib for system instance) instead.
Related: OS#4821
Change-Id: I041bb9e0b4250826d2d15d0ea2cdb93d7a0cd04b
|
|
|
|
|
|
| |
osmo_timer_del() does check if a timer is active internally.
Change-Id: Icaf6f31a3235a3fb6993fa2bb35190150e35c2c2
|
|
|
|
|
|
|
|
|
|
|
| |
Avoid building osmo-trx a second time on arm during "make distcheck". If
the build of osmo-trx already passed on arm, running "make distcheck"
should give the exact same result as on x86_64.
This should shorten the build time significantly for osmo-trx jobs
running on raspberry pis, currently they take half an hour.
Change-Id: Ib4fbf7d54d479bbdda3c1415493bfc57b37d3971
|
|
|
|
|
|
| |
This file gets generated during the build.
Change-Id: I70bfb456e309daa4436767b2e55bce0c038a4975
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix for the following error we see since building master-osmo-trx on
debian 10 instead of 9:
/usr/bin/ld: ipc_driver_test-uhdwrap.o: undefined reference to symbol '_ZTIN5boost6detail16thread_data_baseE'
/usr/bin/ld: //usr/lib/x86_64-linux-gnu/libboost_thread.so.1.67.0: error adding symbols: DSO missing from command line
After spending a lot of time on researching this, my understanding is
now that uhd.pc should have had "-lboost_thread" in versions up to the
latest release 4.2.0 because before that it would include boost thread
headers in its logging code:
https://github.com/EttusResearch/uhd/commit/04a83b6e76beef970854da69ba882d717669b49c
ld is able to figure out which library provides the missing symbol, and
apparently depending on the binutils version and linker flags, it may
just ignore this and not show an error. This is why apparently it worked
with debian 9 and still does work in OBS (different flags), and why it
was not fixed upstream in uhd.pc. By now fixing it is not needed in the
latest version anymore, and there are already versions of uhd.pc in
various linux distributions without -lboost_thread, so I think it's
appropriate to add the workaround here in configure.ac.
Fixes: OS#5608
Related: https://stackoverflow.com/q/19901934
Change-Id: I0367f1c2981bf56252e7514d5993cbbec960b21b
|
|
|
|
| |
Change-Id: I9a930264b7c40b3e205c9818634597cc21364a50
|
|
|
|
| |
Change-Id: I1ac62853250a6717f502959bd96fdc3e9ead7a91
|
|
|
|
|
|
|
|
| |
When using 'check_PROGRAMS', autoconf/automake generates smarter
Makefiles, so that the test programs are not being compiled during
the normal 'make all', but only during 'make check'.
Change-Id: I816689e2aeac9decbc44ba210956a929cc7a3169
|
|
|
|
|
|
|
|
|
| |
Remove the paragraph about writing to the Free Software Foundation's
mailing address. The FSF has changed addresses in the past, and may do
so again. In 2021 this is not useful, let's rather have a bit less
boilerplate at the start of source files.
Change-Id: I8ba71ab9ccde4ba25151ecbeb2a323f706b57d43
|
|
|
|
| |
Change-Id: Ie675909593b0c383b59b7b4a4edd46cd93283622
|
|
|
|
|
| |
Change-Id: I855bd8ea6d9cb0f285f4dbbf3bcd09bff4e71044
Fixes: CID#240718
|
|
|
|
|
| |
Change-Id: I1c823317659547bb2391c57ac4d7931de1a383e3
Fxies: CID#240744
|
|
|
|
| |
Change-Id: Ia51ffa51ec7729572faca0282ae41c1e4968049f
|
|
|
|
| |
Change-Id: Ibd52af22bbe99652f402ada87410de167a124b73
|
|
|
|
|
|
|
|
|
|
| |
Before this patch, reconnecting to osmo-trx and attempting to configure it for
another band is not going to work without restarting the process.
The new variable is added in order to still allow POWEROFF followed by a
POWERON without need to reconfigure the device. In that case, previous
configuration is kept.
Change-Id: I43e5e1e4dcb36be605c6bd25dd6a5f3649e244e7
|
|
|
|
|
|
|
| |
There's no need to spend time looking up again the same band
description.
Change-Id: I6f5631c9e64b9c261d52a856d757d08d2f336947
|
|
|
|
|
|
|
| |
So far the validation is only done on TxFreq for all TRX. Let's also do
it for RxFreq.
Change-Id: I30eef2727ee96b1344aa1416edd66e2302b88964
|
|
|
|
|
|
| |
Same check is already done by set_band().
Change-Id: I48d14f35e83fa17d1a8f4154479f0a5cee0f816d
|
|
|
|
|
|
|
| |
Logarithm change of base rule is used. Document it so it's clear where
it comes from.
Change-Id: Ia588e8dafda4e1abe0721f12491661949339a1ba
|
|
|
|
|
|
|
|
| |
Remove this workaround, as we are not building for debian 8 anymore.
Related: OS#5223
Depends: osmo-ci Ibe7ba124557969df62798ba49c4489e9606c2341
Change-Id: I5519075a7f95fa61b0b5f1825e4e9324b9eede76
|
|
|
|
| |
Change-Id: I33f4253cecab8d92eec75af49e1671874b8cc111
|
|
|
|
|
|
|
|
|
|
| |
There's another related logging line also at INFO level in the caller
path in Transceiver.cpp, but it only prints if detectBurst() failed.
Let's print this one as INFO too, which proved to be a good logging
level. This way user also notices gain is too high despite osmo-trx is
still able to decode bursts.
Change-Id: Ieca4f19ae1099a430e9b838f8b6780b1c61a87a9
|
|
|
|
| |
Change-Id: Ia157b970db92eef252c3657b35607307b7ebf988
|
|
|
|
| |
Change-Id: I9b426d01a282f572c0b915c5666642dce4c60475
|
|
|
|
| |
Change-Id: Icba5fce57c858bd16196ae3012c100c7e4134335
|
|
|
|
| |
Change-Id: I3d8738b492a175f2ef0c570579e335e7b7695694
|
|
|
|
|
|
|
| |
downsampleBurst() and the Resampler below it clearly only support or are
confgiured for 1<->4 setup currently.
Change-Id: Iebaff7a34bd24e56627f148182859918accbfa82
|
|
|
|
|
|
|
|
| |
Gain setting without a band was apparently led to a very low output
level, thanks to defog for pointing this out.
Change-Id: I8b59d38dd7b0781776c9e61226185879541fdc53
Related: OS#3342
|