61 Commits

Author SHA1 Message Date
Jaroslava Fiedlerova
ef67552e1f Merge remote-tracking branch 'origin/further_unused_arguments_cleanup' into integration_2026_w15 (!3977)
Further unused arguments cleanup

More fixes for unused function arguments (see #1057),
add_compile_options(-Wunused-parameter) added in folders:
- nfapi
- openair2
- openair3
- USRP
- rfsimulator
2026-04-08 13:55:16 +02:00
Robert Schmidt
76b4899ecb USRP driver: describe patch, --continuous-tx, -E options 2026-03-31 21:35:31 +02:00
francescomani
008c6fa73c add flag for unused function arguments in USRP lib CMakeLists 2026-03-27 18:00:31 +01:00
Robert Schmidt
8107939f08 Change OAI license to CSSL v1.0 (and others)
- all RAN code, CI code, configuration files, dockerfiles, in CSSL v1.0
- all deployment code (openshift, charts, ancillary files like shell
  scripts), in MIT
- documentation in CC-BY-4.0
- exceptions might apply and are listed in NOTICE
- there is a new LICENSES folder with all licenses
- CONTRIBUTIONS.md has been updated accordingly

For automated changes based on OAI PL v1.1:

    perl -i~ -0pe 's/\/\*.*Licensed to the OpenAirInterface.*openairinterface.org\n#?/\/*\n * SPDX-License-Identifier: LicenseRef-CSSL-1.0\n/s' **/*.{c,h,cpp}
    perl -i~ -0pe 's/\/\*.*Licensed to the OpenAirInterface.*openairinterface.org\n#?/\/*\n * SPDX-License-Identifier: LicenseRef-CSSL-1.0\n/s' **/*.ts
    perl -i~ -0pe 's/<!--.*Licensed to the OpenAirInterface.*openairinterface.org\n.*-->/<!-- SPDX-License-Identifier: LicenseRef-CSSL-1.0 -->/s' **/*.xml

The rest (cmake, files with missing license, cmake) manually.
2026-03-27 16:36:37 +01:00
Robert Schmidt
6ae4ec37ca Remove most doxygen file-level commands, copyrights, and authors
Remove the \file directive, as it is always superfluous  because the
current file is implicit [1]:

> If the file name is omitted (i.e. the line after \file is left blank)
> then the documentation block that contains the \file command will belong
> to the file it is located in.

Author names and e-mails are not relevant for us: it can always be
inferred from git blame, and is often outdated.

Eurecom code has been contributed and was under OAI PL v1.0/v1.1.

For the cpack package contact: put generic email address that is
independent of an individual and that will remain reachable.

[1] https://www.doxygen.nl/manual/commands.html#cmdfile
2026-03-27 14:52:47 +01:00
Robert Schmidt
e031af0665 USRP: usrp-tx-write-thread: return number of samples written
At least writerProcessWaitingQueue() checks for the exact number of
samples written. In many other places, we check that the return is
non-zero.

The usrp-tx-write-thread functionality returned 0, which triggers
various problems. Return the number of samples, as in the "direct write"
case (if-block before else-block).

Co-authored-by: Sagar Arora <sagar.arora@openairinterface.org>
2026-03-11 15:47:32 +01:00
Thomas Schlichter
75df29a333 consistenty use suffix _t for openair0_* types 2026-01-23 18:30:39 +01:00
Laurent THOMAS
6313c71b83 remove unused iq_txshift and iq_rxrescale variables
improve comments in usrp_lib.cpp
2026-01-06 09:02:08 +01:00
Nick Hedberg
e6b307bf6e Indent correctly 2025-10-31 11:31:42 +01:00
Robert Schmidt
ce4e647fd8 USRP: move time/clock source setting to later
Doing this before using set_master_clock_rate() on the B200 seems to
invalidate clock settings:

    [HW]   USRP clock set to 1759836386.000000 sec
    [...]
    [HW]   current pps at 3.286750, starting streaming at 4.286750

In other words, the current time setting was reset. With this change
now, we see

    [HW]   USRP clock set to 1759929873.000000 sec
    [...]
    [HW]   current pps at 1759929873.000000, starting streaming at 1759929874.000000

This is because changing clock sources (I assume setting the master
clock rate impacts the clock) can result in changing the time.  From the
documentation of set_time_next_pps() [1]:

> Note: When changing clock sources, a previously set time will most
> likely be lost. It is recommended to set the time after changing the
> clock source. Otherwise, an unexpected time may line up with future PPS
> edges.

[1] https://files.ettus.com/manual/classuhd_1_1usrp_1_1multi__usrp.html#a75b1c5375549e6a446d686ee7d9b4e14
2025-10-10 12:49:29 +02:00
Robert Schmidt
19813283fb Avoid T error on radio libraries
These libraries have an (indirect) dependency on T, either by using the
logging module (which in turn depends on T), or through other includes.

The easiest is to depend on the logging module, which will fulfil also
the T dependency.

It would equally be feasible to use the utils target (which in turn
depends on log_headers), but this would necessitate to compile, and does
not seem to be necessary.
2025-09-29 09:04:02 +02:00
Guido Casati
a41be56b2a USRP lib: fix incorrect config check for time_source fallback
Corrected a logic bug in usrp_lib.cpp where the code mistakenly checked
openair0_cfg[0].clock_source instead of time_source when a time_source
was already specified in usrp_args.

Also improved the warning log to clarify that the config value is being
ignored in favor of the explicit user-provided usrp_args.

Co-authored-by: Alexandre Serio <alexandre.j.serio@altice.pt>
2025-06-16 11:25:30 +02:00
Bartosz Podrygajlo
21dafbcde7 New threadpool
- removed some whitespace noise.
 - cleaned up CMakeLists.txt
 - reintegrated task_manager.c into thread-pool.c
 - cleaned up some unnecessary code

Co-authored-by: Cedric Roux <cedric.roux@eurecom.fr>
Co-authored-by: Mikel Irazabal <mikel.irazabal@openairinterface.com>
2024-12-04 17:54:51 +01:00
francescomani
014338105e remove unused bf_weights feild from config files 2024-10-11 08:02:06 +02:00
francescomani
2a9a038dbd improvements in RU beamforming handling procedures 2024-10-11 07:59:31 +02:00
Jaroslava Fiedlerova
f30e354b77 Merge remote-tracking branch 'origin/T-usrp-tx-sample-trace' into integration_2024_w30 2024-07-26 18:07:42 +02:00
Cedric Roux
181ec25a23 USRP: add a T trace to record the TX IQ data on antenna 0 2024-07-26 12:54:55 +02:00
Raghavendra Dinavahi
95a8767383 Automatic update of USRP RX gain during initial search using --agc option
- if search fails, keeps increasing the rx gain (set by --ue-rxgain) by
  3 db until USRP max rx gain
- if initial sync is success, sets the rxgain to the value of
  (TARGET_RX_POWER (50) - pbch digital power in dB/RE)
2024-07-25 15:33:44 +02:00
Robert Schmidt
18125459dc Merge remote-tracking branch 'origin/t-usrp-rx-ant0' into integration_2024_w23 2024-06-06 08:40:42 +02:00
Cedric Roux
1dfb30b857 USRP: add a T trace to record the RX IQ data on antenna 0 2024-06-05 15:11:59 +02:00
Florian Kaltenberger
6d5a0ab454 synch the USRP time accross devices using the host clock 2024-06-05 09:52:26 +02:00
luis_pereira87
615284c5c8 Add support for USRP X410 to run with 200 MHz bandwidth in FR2 at 120 kHz SCS 2024-04-26 08:23:19 +01:00
Laurent THOMAS
c92cbe67b5 fix b210 usrp tx sample error compemsation 2024-03-04 10:07:07 +01:00
Laurent THOMAS
7466297568 move command line sample offset and 3/4 sampling option at top level, as it is common option for 4G,5G xNB and UE 2024-03-04 10:07:07 +01:00
Robert Schmidt
4226daee7f USRP doc: Include b205-mini, improve markup 2024-01-12 09:10:46 +01:00
Raphael Defosseux
7241520072 Merge remote-tracking branch 'origin/dreibh-trx_usrp_read-memory-access-fix' into integration_2023_w37 2023-09-15 10:52:37 +02:00
Raymond Knopp
a7bc282302 First-level of support for new aarch64 machines
Testing on Neoverse N1 (Ampere 3GHz). Tested only on a subset of phy-simulators.

- Changes:
- use SIMDE consistently
- adaptations of LDPC decoder generator for ARMv8 performance
- SIMDe modifications of Intel CRC to allow for aarch64 build.
  optimizations for 128-bit to improve performance of LDPC encode/decode
  on aarch64 (Neoverse 1)
- added BG2 files for 128-bit ldpc encoder (aarch64)
- testing on Xeon
- testing on x86
- minor changes to build/run on x86
- change in crc.h after returning to aarch64
- removed some warning in ldpc decoder generator for x86_64
- char
- Delete irrelevant constants
- Correctly declare variables
- Define stdbool for all architectures
- Remove definition of _MM_SHUFFLE and use SIMDE_MM_SHUFFLE
- Remove commented code
- Fix CMakeLists.txt
- Include SIMDE avx2 functions in tools_defs.h
2023-09-13 17:19:20 +02:00
Thomas Dreibholz
445a51f5c1 Bugfix: Fix for segfault, due to invalid pointer. 2023-09-13 15:49:51 +02:00
wan-sdr
1936bc06d8 Use UHD_INCLUDE_DIRS and UHD_LIBRARIES to link to UHD. This way works when UHD is installed to /usr/local or a custom prefix
Signed-off-by: wan-sdr <11093-wan-sdr@users.noreply.gitlab.eurecom.fr>
2023-08-28 12:33:12 -04:00
Imad Al Samman
66df72d1f8 USRP driver: Make it compile for UHD < 4.0.0 2023-08-11 11:23:28 +02:00
Imad Al Samman
76ccc2f5f3 FR2: GPIO configuration for Interdigital Radio Unit
For FR2 and including analog beamforming, we control the beams via GPIO
on radio units.

In this commit, introduce a configuration option to switch the GPIO
control for different devices: "generic" is the current GPIO control,
"interdigital" configures the GPIO configuration to be used with an
InterDigital device.
2023-07-28 14:49:37 +02:00
Robert Schmidt
66893739b8 Make USRP compile, depends on T
USRP code uses the logging module, which has a dependency on T, if
configured. Therefore, include UTIL to satisfy this dependency
2023-07-13 10:29:33 +02:00
Robert Schmidt
c25ee6fd32 Move symlink creation to radio/transport device to cmake 2023-07-08 13:28:52 +02:00
Robert Schmidt
ddf549b1f3 Move radio CMakeLists.txt to subdirectory
- move following radios: AW2S, BladeRF, IRIS, LMSSDR, RFsimulator, USRP
- move following transports: Ethernet, benetel4g, benetel5g
- for each: create independent cmake variable to switch compilation
  on/off, in order: OAI_AW2S, OAI_BLADERF, OAI_IRIS, OAI_LMSSDR,
  OAI_SIMU, OAI_USRP, OAI_ETHERNET, OAI_BENETEL4G, OAI_BENETEL5G
- Remove RF_BOARD variable, allows to compile multiple boards at once
- where applicable: remove USERSPACE/LIB in path, i.e., move files up to
  directories, as all are userspace libraries

Note that with the above, it is now mandatory to enable a radio
implementation before compiling it, e.g., for USRP:

./build_oai -w USRP
cmake .. -DOAI_USRP=ON && ninja oai_usrpdevif
2023-07-07 08:35:28 +02:00
Robert Schmidt
af923d6e0b Merge remote-tracking branch 'origin/100MHz_on_x310' into integration_2023_w23 2023-06-08 18:23:55 +02:00
luis_pereira87
8bffe28ed3 Set kernel parameters for X4x0 2023-05-19 12:26:13 +01:00
rakesh mundlamuri
08a8a23011 enabling 100MHz on usrp x310 2023-05-17 12:07:41 +02:00
Raymond Knopp
a3c7af0a7a Merge remote-tracking branch 'origin/develop' into threading-rk 2023-04-28 22:28:18 +02:00
Arash Sahbafard
c63edad48b Update radio/USRP/README.md 2023-04-19 16:02:45 +02:00
Raymond Knopp
455e2203e7 Merge remote-tracking branch 'origin/develop' into threading-rk 2023-04-09 18:29:42 +02:00
Florian Kaltenberger
daa1a911ac Update radio/USRP/README.md 2023-04-07 10:04:13 +00:00
Raymond Knopp
48d04bbffd Merge remote-tracking branch 'origin/develop' into threading-rk 2023-03-27 16:09:33 +02:00
Robert Schmidt
52d7d2881a Merge remote-tracking branch 'origin/multi_usrp' into integration_2023_w10b 2023-03-11 11:57:38 +01:00
Florian Kaltenberger
7631381a98 adding documentation for USRP 2023-03-10 22:03:28 +01:00
Robert Schmidt
6d97394f28 Merge remote-tracking branch 'origin/bugfix-tx-usrp-thread-priority' into integration_2023_w10 2023-03-08 19:04:36 +01:00
Raymond Knopp
9a91ed0eeb priorities/policy on usrp-tx-thread. Thread id for ru_thread 2023-03-06 06:54:55 +01:00
Cedric Roux
3084ae89dd bugfix: set max priority to trx_usrp_write_thread 2023-03-04 16:42:01 +01:00
Florian Kaltenberger
30f0942dbc fix for the case multiple USRP devices are specified in the config string 2023-02-23 13:35:57 +01:00
Bruno Mongazon-Cazavet
9db78ab4d6 fix warnings introduced by changes in _Assert_Exit_ macro 2023-02-23 09:56:24 +01:00
Bruno Mongazon-Cazavet
f7b4d18146 Merge branch 'develop' into iqfixes_nrue 2023-02-17 17:24:04 +01:00