Commit Graph

8843 Commits

Author SHA1 Message Date
David Rupprecht 107eba9d66 Fixed srsue namespace 2021-09-22 15:15:47 +02:00
Xavier Arteaga d0ce17f736 Added SSB different SCS combination unit test 2021-09-22 14:15:41 +02:00
faluco 55f5f74ff3 Fixed case where calling gw::setup_if_addr after ue attachment would spawn a new thread without closing the current one.
This would end up being a resource leak as the number of threads grow forever until the application crashes.
2021-09-22 13:26:59 +02:00
Xavier Arteaga e2facef540 Abort radio application if decimation/interpolation ratios are not integer 2021-09-22 13:19:51 +02:00
Xavier Arteaga 182202bdb0 Added NR PHY SR test cases 2021-09-22 13:18:28 +02:00
Xavier Arteaga cdfbe28b69 Initial NR-MIB packing/unpacking 2021-09-22 11:17:27 +02:00
Andre Puschmann 26cc6d7886 ue: remove stack type parameter
for the moment we always use the LTE stack (also for NSA mode).
For SA we likely pick a smarter approach to pick the stack type, i.e.
using the ARFCN specified in the config.
2021-09-22 10:56:56 +02:00
Andre Puschmann b134781d36 enb: remove redundant RLC/PDPC classes for NR
the RLC/PDCP entities for NR are included in the RLC/PDCP wrapper classes
and don't require their own
2021-09-22 10:56:56 +02:00
Fabian Eckermann 651a76000e Add function to pack secondary cell group config for FDD. 2021-09-21 18:12:34 +02:00
Fabian Eckermann f44eb0534f Add RRC NR test for FDD 2021-09-21 18:12:34 +02:00
Xavier Arteaga 0324806d6c Packed NR TDD config in duplex configuration and created test case for FDD 2021-09-21 18:11:16 +02:00
Xavier Arteaga 53bf29a540 Add nr label to MAC NR tests 2021-09-21 18:11:16 +02:00
Fabian Eckermann dd8db1a929 Replaced inet_addr() with inet_pton. 2021-09-21 11:59:40 +02:00
Ismael Gomez 5d051d8832 Set default pucch_harq_max_rb to 0 2021-09-21 11:49:04 +02:00
Ismael Gomez 3eaf5c50cb Make PUCCH HARQ region a configurable parameter. Skip grants when ACK falls outside region 2021-09-21 11:49:04 +02:00
Ismael Gomez 28b956d128 Limit PUCCH ACK resources to the max CCE from the configured max_ctrl_symbols instead of from MAX_CFI 2021-09-21 11:49:04 +02:00
Xavier Arteaga 1f6c950dae SRSUE: Fix speed and distance from TA metrics 2021-09-21 11:30:56 +02:00
Xavier Arteaga 25a4c7db92 SRSENB: make nr_cell_list optional 2021-09-21 11:30:56 +02:00
Xavier Arteaga 574683e3ef Fix error message 2021-09-21 11:30:56 +02:00
Xavier Arteaga e0be361fde Corrected default rb.conf 2021-09-21 11:30:56 +02:00
Andre Puschmann fbfca42ef3 ue,mux_nr: add missing break 2021-09-21 11:18:04 +02:00
Ismael Gomez ad646f436c Ignore PDSCH during cell selection 2021-09-21 11:09:34 +02:00
Fabian Eckermann d59ebfce9d add lock for fftw wisdom 2021-09-20 20:48:55 +02:00
Xavier Arteaga ffba972fb7 Fix gnb amplitude 2021-09-20 20:48:08 +02:00
Xavier Arteaga 51d6ab3b3f Disable CSI-RS resource mapping number of port check 2021-09-20 20:48:08 +02:00
Xavier Arteaga de00b80228 Review NR NSA CFO estimation and compensation 2021-09-20 20:48:08 +02:00
Xavier Arteaga 63bb86bce1 Added SS type conversion to string 2021-09-20 20:48:08 +02:00
Xavier Arteaga 7ba5099bee Implement CSI-RS resource mapping validation 2021-09-20 20:48:08 +02:00
Ismael Gomez fb294c8b34 Set default UE inactivity timeout after RRC Reestablishment complete 2021-09-20 20:16:13 +02:00
Fabian Eckermann e57ffca722
gnss_sync: fix timestamp to TTI conversion
* Improve reliability of timestamp to tti conversion

Difftime is not reliable as it might use 32 bit calculation, depending on the system. This leads to wrong frame numbers and subframe indices.
I encountered this Issue when testing the pssch_ue exampel on my system and the conversion from timestamp to frame number and sf idx was wrong.

* Improve GNSS Sync 

Added loop to check for GNSS alignment while syncing.
If the received GNSS signal is weak, synchronization errors might occur while syncing.
2021-09-20 14:29:25 +02:00
Andre Puschmann 39e00bdbe8 enb,nsa: fix deriviation of UL ARFCN from DL ARFCN for FDD bands 2021-09-17 17:32:50 +02:00
Andre Puschmann 3fd47d2af4 enb: refactor L2/L3 and (re)move all NR components to gNB stack
* decouple EUTRA and NR stack classes
* implement dummy X2 interface with control and data plane methods
* implement eNB time source interface that PHY calls
2021-09-17 14:57:33 +02:00
Andre Puschmann 1e9a4e3fba enb: remove stack type variable 2021-09-17 14:57:33 +02:00
Andre Puschmann 8d49e58078 enb: prepare split of EUTRA and NR stack classes
this allows for a slimmer base station if only EUTRA or NR cells are used.
also it seperates entities in a cleaner way
2021-09-17 14:57:33 +02:00
faluco 8a2231251a Fix data race in enb::mac::ue class. 2021-09-17 11:34:42 +02:00
faluco 457dcf4de4 Fix data race in enb::ta class. 2021-09-17 11:34:42 +02:00
faluco d2f09a8d3c Fix a nasty data race in the ue_bearer_manager class. The underlying std::map member was being accessed concurrently potentially corrupting memory. 2021-09-17 11:34:28 +02:00
faluco c2b705c5ce Fix several data races in proc_phr, class needs to be fully protected since most member variables are accessed by different threads. 2021-09-17 11:34:28 +02:00
faluco 6b07e886b7 Fix data race in is_first_ul_grant. 2021-09-17 11:34:28 +02:00
faluco 1e3ba607ce Fix data race in is_pending_tx_end. 2021-09-17 11:34:28 +02:00
faluco f96ee097b4 Fix data race in ue mac metrics. 2021-09-17 11:34:28 +02:00
faluco 7dae4a491e Fix data race in ue_stack_lte::ul_dropped_sdus. 2021-09-17 11:34:28 +02:00
faluco 1796e12084 Fix data race in ul_harq_entity. 2021-09-17 11:34:28 +02:00
faluco 2b73beb3dd Fix data race in ul_harq. 2021-09-17 11:34:28 +02:00
faluco d02012b588 Fix data race in bsr_proc. 2021-09-17 11:34:28 +02:00
faluco d009160ba6 Fix data race in the metrics of the rlc. 2021-09-17 11:34:28 +02:00
faluco 8d802e2aca Fix a data race in the simulate_rf global variable. 2021-09-17 11:34:28 +02:00
Pedro Alvarez c988fc49b4 Remove comparison between LGC priority and allocation retantion priority, as these do not seem related. 2021-09-16 19:41:08 +01:00
Andre Puschmann e563e5918e rf_imp: fail opening RF altogether if specified device fails to open
we've had a few runs in the CI where opening the specified RF device
failed but the eNB/UE still continued to run, just picking the next available
run. This led to false-positive tests.

The policy should be that whenever the user specified a RF device to
be openend, and this device fails, the whole process should fail and
the application should exit.

The auto-detection mode is still available but only if no device name
is specified at all.
2021-09-16 15:28:13 +02:00
Andre Puschmann c9478a4306 enb,erab: fix error handling when setting up ERABs
when handling ERAB setup requests from MME, don't add the ERAB
before all checks have been performed, otherwise the ERAB
needs to be removed again.

Since this was not the case, invalid NAS PDUs have been transmitted.

Also raise error level for some events to error since the eNB
misses a config or is mal-configured and cant recover from that.
2021-09-16 15:25:46 +02:00