AgeCommit message (Collapse)AuthorFilesLines
2021-12-14treewide: remove FSF address2022q12021q4Oliver Smith25-100/+0
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
2021-11-16Bump version: → Espin Pedrol5-10/+49
Change-Id: Ie675909593b0c383b59b7b4a4edd46cd93283622
2021-10-25LMSDevice: LMS_GetDeviceList() may return a negative numberVadim Yanitskiy1-3/+4
Change-Id: I855bd8ea6d9cb0f285f4dbbf3bcd09bff4e71044 Fixes: CID#240718
2021-10-25IPCDevice: check value returned from select()Vadim Yanitskiy1-1/+6
Change-Id: I1c823317659547bb2391c57ac4d7931de1a383e3 Fxies: CID#240744
2021-10-25IPCDevice: use thread safe strerror_r() instead of strerror()Vadim Yanitskiy1-3/+7
Change-Id: Ia51ffa51ec7729572faca0282ae41c1e4968049f
2021-10-25trx_rate_ctr: use thread safe strerror() in device_sig_cb()Vadim Yanitskiy1-2/+5
Change-Id: Ibd52af22bbe99652f402ada87410de167a124b73
2021-09-21lms,uhd: Allow changing band between poweroff & poweronPau Espin Pedrol4-7/+16
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
2021-09-21lms,uhd: Skip re-assigning same bandPau Espin Pedrol2-4/+8
There's no need to spend time looking up again the same band description. Change-Id: I6f5631c9e64b9c261d52a856d757d08d2f336947
2021-09-21lms,uhd: Validate band of RxFreq tooPau Espin Pedrol2-0/+34
So far the validation is only done on TxFreq for all TRX. Let's also do it for RxFreq. Change-Id: I30eef2727ee96b1344aa1416edd66e2302b88964
2021-09-21lms: Drop duplicated checkPau Espin Pedrol1-6/+0
Same check is already done by set_band(). Change-Id: I48d14f35e83fa17d1a8f4154479f0a5cee0f816d
2021-09-03computeCI: Document hardcoded multiplierPau Espin Pedrol1-1/+7
Logarithm change of base rule is used. Document it so it's clear where it comes from. Change-Id: Ia588e8dafda4e1abe0721f12491661949339a1ba
2021-09-03d/patches/build-for-debian8.patch: removeOliver Smith3-66/+0
Remove this workaround, as we are not building for debian 8 anymore. Related: OS#5223 Depends: osmo-ci Ibe7ba124557969df62798ba49c4489e9606c2341 Change-Id: I5519075a7f95fa61b0b5f1825e4e9324b9eede76
2021-09-01cosmetic: Fix typo in commentPau Espin Pedrol1-1/+1
Change-Id: I33f4253cecab8d92eec75af49e1671874b8cc111
2021-09-01detectGeneralBurst(): Increase log level about clipping to INFOPau Espin Pedrol1-1/+1
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
2021-09-01computeCI(): Constify read-only variablePau Espin Pedrol1-3/+1
Change-Id: Ia157b970db92eef252c3657b35607307b7ebf988
2021-09-01computeCI(): Rename verbose repeated getter to constantPau Espin Pedrol1-4/+5
Change-Id: I9b426d01a282f572c0b915c5666642dce4c60475
2021-09-01computeCI(): Constify param and pass it as referencePau Espin Pedrol1-1/+1
Change-Id: Icba5fce57c858bd16196ae3012c100c7e4134335
2021-09-01detectBurst(): constify parameterPau Espin Pedrol1-2/+2
Change-Id: I3d8738b492a175f2ef0c570579e335e7b7695694
2021-09-01detectBurst(): Clear downsampling code pathPau Espin Pedrol1-8/+12
downsampleBurst() and the Resampler below it clearly only support or are confgiured for 1<->4 setup currently. Change-Id: Iebaff7a34bd24e56627f148182859918accbfa82
2021-07-11lms: init bandEric1-1/+3
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
2021-06-16vty: printing fn offset should be signedEric1-1/+1
...because it is usually negative Change-Id: I8297dbb0fec25720e73d59fd8e38834029154405
2021-06-04Use new stat item/ctr getter APIsPau Espin Pedrol2-15/+16
Change-Id: I1fdfdae2810c3c82ff62fe725ffa364df4ebeff5
2021-05-29uhd: ensure configured clock source is actually usedEric1-0/+14
We wouldn't want to get caught running with unlocked external clock sources, right?! Change-Id: Ie38d85617f46eb5ab7d9527ddf6aaab4d3edf6bf
2021-05-27ctrl_sock_handle_rx(): fix missing space in LOGCHAN() statementVadim Yanitskiy1-1/+1
Change-Id: I3c69d64dfe79dcc815e1d412569ed4e9ed428c52
2021-05-05add hidden fn adjustment commandEric3-1/+19
This is only useful if the rf path delays the signal by at least one frame, and therefore a fairly experimental command that might be removed or reworked in the future and should not be relied upon. Change-Id: I29964acffad5bad4f5bcad7f631e435a72979c46
2021-04-16gitignore: remove non-existing 'doc/manuals/osmomsc-usermanual.xml'2021q1Vadim Yanitskiy1-1/+0
Change-Id: If0fef3f12f15780ed3a3e33db25cd29082ff142a
2021-03-01ipc: Makefile.am: Clean LDADD variablePau Espin Pedrol1-1/+2
Change-Id: I26c942496ab12883a4a1e0d549cb462642570636
2021-03-01Threads: Avoid printing pthread_self()Pau Espin Pedrol1-2/+2
The type used to represent a thread ID is implementation specific, and may be an opaqe structure, making it unsuitable to be printed by standard means. Let's use osmo_gettid() instead. Change-Id: Iaa4d0eaf52b901fff06cc67f8dd8b61ac6084911 Related: OS#5032
2021-03-01Drop logging pthread IDPau Espin Pedrol2-11/+6
new libosmocore osmo-trx already depends on does support printing thread ID as prefix to all messages (confgiurable through VTY), so there's no use in printing it in osmo-trx unconditionally. Moreover, The type used to represent a thread ID is implementation specific, and may be an opaqe structure, making it unsuitable to be printed by standard means, so in any case we should be better printing system's TID instead. Related: OS#5032 Change-Id: Ie98a21246230c946afc47f4f5b9c6618eefde494
2021-03-01Threads.cpp: Fix missing extern C around libosmocore includePau Espin Pedrol1-0/+2
Change-Id: I76975ed71382ff2afa8cfaff2950e23ff750201e
2021-02-28Bump version: → Welte1-0/+6
Change-Id: I559b8d8608b3e492ae1ba0d5a54e226ab424b23b
2021-02-28mark uhddev_ipc.cpp as BUILT_SOURCESHarald Welte1-2/+3
fixes "make dist-bzip2" on a clean checkout Closes: OS#5052 Change-Id: Ieb4cefb16c8f43e708a96353c13342fe40ffdb54
2021-02-23Bump version: → Espin Pedrol6-14/+164
Change-Id: I92b99ebab1d54e9cbdc8469d76105c55bcb03f36
2021-02-21Add a (hidden) VTY parameter for Rx/Tx freq. shiftingVadim Yanitskiy4-3/+22
Change-Id: I360e8ba91471757210c7f096c04928a6fbb91c61 Related: SYS#4454
2021-02-19tests: Replace deprecated API log_set_print_filenamePau Espin Pedrol1-1/+1
Change-Id: I3cc0a92da39ab2594b3a7cefb314e2f2ecb628e2
2021-02-19tests: Explicitly drop category from logPau Espin Pedrol1-0/+2
Let's disable category here since we don't care about its formatting here. In any case, every test relying on logging output validation should always explicitly state the config to avoid issues in the future if default values change. Change-Id: Iaa77f8a7d3f752173507afd988bd76a8aa632082 Related: OS#5034
2021-02-17Replace my_gettid with libosmocore osmo_gettid APIPau Espin Pedrol5-39/+7
The API was moved to libosmocore, let's use it instead of defining our own here with all the complexity in build system involved. Depends: libosmocore.git Change-Id Id7534beeb22fcd50813dab76dd68818e2ff87ec2 Related: OS#5027 Change-Id: I19e32fbc47bd88a668e0c912e89b001b0f8831dd
2021-02-17Threads.cpp: Use already existing gettid wrapper functionPau Espin Pedrol1-7/+1
A wrapper function with better support already exists in debug.c and announced in debug.h. Let's use that one instead. Related: OS#5027 Change-Id: I2ccf94f95a531d5873da2a4681cf89cbc5b31422
2021-02-04sigProcLib: fix C/I computation for 8-PSK modulated burstsSylvain Munaut3-17/+38
Change-Id: I860af60bc0fbd36dfb38316fad65ddd3a5827a8f Related: Ib4ceec553f2e5f77bf3f6777724968456a180f5e Related: OS#4006, OS#4373
2021-01-28configure.ac: set -std=gnu11Oliver Smith1-0/+2
Change-Id: Ie95876d1d2ebf31ff588999d85584f6981522fa8
2021-01-27Transceiver: use proper factor for amplitude scalingVadim Yanitskiy1-1/+1
In Transceiver::addRadioVector() we scale the I/Q samples by scaling the output voltage of the DAC. A relative factor/divisor/ration in the voltage domain cannot be used 1:1 in the power domain. There exist two similar formulas: a) X_dB = 10 * log10(X_lin / X_ref) b) Y_db = 20 * log10(Y_lin / Y_ref) both of them are correct, and according to [1]: a) If you convert a quantity X that relates to power or energy, => the factor is 10. b) If you convert a quantity Y that relates to amplitude, => the factor is 20. Therefore we should be using 20 instead of 10. This change makes osmo-trx apply per-lchan attenuation values correctly. Otherwise it would double the values indicated in TRXD messages. [1] https://dspillustrations.com/pages/posts/misc/decibel-conversion-factor-10-or-factor-20.html Change-Id: I98bc00bd25df4913d45e55eb008d715aca76fc7c Related: SYS#4918
2021-01-21Transceiver: fix integer division in addRadioVector()Vadim Yanitskiy1-1/+1
By default, C/C++ compiler does assume integer division. The lack of explicit cast to 'double' causes the transceiver to ignore non-decimal attenuation values (x % 10 > 0): txFullScale * 10 ^ ( -3 / 10) == txFullScale * 10 ^ 0 == txFullScale * 1.0 txFullScale * 10 ^ ( -8 / 10) == txFullScale * 10 ^ 0 == txFullScale * 1.0 txFullScale * 10 ^ (-10 / 10) == txFullScale * 10 ^ -1 == txFullScale * 0.1 txFullScale * 10 ^ (-18 / 10) == txFullScale * 10 ^ -1 == txFullScale * 0.1 Change-Id: I85b1063f57f630d90c6da32827bec4a05afc6514 Related: SYS#4918
2021-01-18ChannelizerBase: Fix memory leakPau Espin Pedrol1-0/+1
The memory leak was reported by ASan: Direct leak of 32 byte(s) in 1 object(s) allocated from: #0 0x7f23b488e459 in __interceptor_malloc /build/gcc/src/gcc/libsanitizer/asan/asan_malloc_linux.cpp:145 #1 0x558e83e39e3c in ChannelizerBase::initFilters() /osmo-trx/Transceiver52M/ChannelizerBase.cpp:84 #2 0x558e83e3a8a0 in ChannelizerBase::init() /osmo-trx/Transceiver52M/ChannelizerBase.cpp:188 #3 0x558e83e2d263 in RadioInterfaceMulti::init(int) /osmo-trx/Transceiver52M/radioInterfaceMulti.cpp:197 #4 0x558e83de76d2 in makeRadioInterface(trx_ctx*, RadioDevice*, int) /osmo-trx/Transceiver52M/osmo-trx.cpp:115 #5 0x558e83dea663 in trx_start /osmo-trx/Transceiver52M/osmo-trx.cpp:600 #6 0x558e83dead6f in main /osmo-trx/Transceiver52M/osmo-trx.cpp:695 #7 0x7f23b2576151 in __libc_start_main (/usr/lib/libc.so.6+0x28151) Change-Id: Ibc4c7edeb9bba517db08fce152d863e6cc0c7bbb
2021-01-17radioInterfaceMulti: Fix memory leak upon close()Pau Espin Pedrol1-0/+4
The leak was reported by ASan. Direct leak of 48 byte(s) in 1 object(s) allocated from: #0 0x7fd9c9c29f41 in operator new(unsigned long) /build/gcc/src/gcc/libsanitizer/asan/asan_new_delete.cpp:99 #1 0x55bd63ae2364 in RadioInterfaceMulti::init(int) /git/osmo-trx/Transceiver52M/radioInterfaceMulti.cpp:209 #2 0x55bd63a9c6d2 in makeRadioInterface(trx_ctx*, RadioDevice*, int) /git/osmo-trx/Transceiver52M/osmo-trx.cpp:115 #3 0x55bd63a9f663 in trx_start /git/osmo-trx/Transceiver52M/osmo-trx.cpp:600 #4 0x55bd63a9fd6f in main /git/osmo-trx/Transceiver52M/osmo-trx.cpp:695 #5 0x7fd9c7910151 in __libc_start_main (/usr/lib/libc.so.6+0x28151) Change-Id: Ia4f9d4e47caa86ada98054763573e652d281992c
2021-01-13contrib/jenkins: don't build osmo-gsm-manualsOliver Smith1-1/+0
Related: OS#4912 Change-Id: Ibacb11da37acfd324cee37068099627136717781
2021-01-08osmo-trx.spec: move ipc-driver-test into package ipc-testAlexander Couzens1-1/+13
Allow to drop the uhd runtime dependency of osmo-trx-ipc. uhd is only required for the driver-test utility. Related: SYS#5266 Change-Id: Iff91e09684167247c9c7de0141451a5b9344aa0d
2021-01-07manual: Fix typo OsmTRX -> OsmoTRXHarald Welte1-1/+1
Change-Id: I4b3a76e41d4abbb08046a241ae9b7c079ce990ae
2021-01-06README updateHarald Welte1-10/+8
* use https for hyperlinks * explicitly mention the primary use case with OsmoBTS * fix spelling in title Change-Id: I4f20ad8666dcc6bbc23d78b40b7c73ddd7e6eacc
2020-12-10ipc-driver-test: Allow setting dir prefix for UD socketPau Espin Pedrol2-10/+23
Change-Id: I35282b38a1d560fb3440fe0aa9a27808d9d116cc
2020-12-08vty: fix swapped documentation for 'filler type' commandVadim Yanitskiy1-1/+1
vty_cmd_string_from_valstr() expands the given 'struct value_string' sequentionally, so the order of entries in both filler_{types,docs} shall match (regardless of the value assigned). Change-Id: Ieb3bbc4fb30f303c47555ca77d03a9e965bc72b5