2570 Commits (91f47de3ccd1cb1883a0c2097d5875a6c384ed6d)

Author SHA1 Message Date
Nils Fürste b036da07de Extend ASN1 utils function from_number() 3 years ago
Fabian Eckermann 8753ea1be5 Fix coverty defects. 3 years ago
Carlo Galiotto 9c74dda039 rrc,nr: add msg5 and inactivity timers to RRC-NR
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
faluco edf0926a2f Batch of LGTM fixes. 3 years ago
Francisco 7ad1ad800e lte,enb,rlc: atomically compute DL buffer state and update the scheduler in the eNB 3 years ago
Ismael Gomez d972fb368c
Some LGTM fixes (#3564)
* Fix LGTM issues

* ue: add logging to switch on function

* Fix new LGTM issues
3 years ago
faluco dc31fb05a3 Fix ODR issue detected by ASAN in arch for the srsran_verbose global variable. 3 years ago
faluco fa8e8ddf1f Fix an ODR issue detected by ASAN in arch, where the global variable handler_registered was defined multiple times. 3 years ago
Andre Puschmann 3eb1862ab9 gnb_interface: reduce MAX_GRANTS to 4
see #3530 for detailed discussion. This change saves some CPU cycles it seems
3 years ago
Xavier Arteaga 322f57a952
Initial real-time Tx gain setting (#2976)
* Make filename const in filesink

* Sine generation returns the next phase

* Avoid malloc/free in radio class

* Implement Tx gain in ZMQ

* Initial ratio RT gain test

* UHD: use timed Tx gain commands to align changes to subframes

* Minor improvement in test_radio_rt_gain

* Fix compilation

* Check RF gain thread id before joining

* Remove redundant zero initialization.

Co-authored-by: Fabian Eckermann <fabian@srs.io>
3 years ago
Xavier Arteaga ebab12403f
Asynchronous NR PHY configuration (#3527)
* Fix a race condition when accessing the NR PHY cfg by the RRC and phy workers.
Rework how the phy cfg is handled, now workers have their own copy that gets updated after a reconfig moving it out of the state class.

* Default initialize sf_len member in sf_worker for consistency.

* Asynchronous NR PHY configuration

* Fix compilation

* Corrected method override and fix unitialised value

* Added carrier equal comparison to avoid aligment byte padding comparison

Co-authored-by: faluco <borja.ferrer@softwareradiosystems.com>
3 years ago
faluco 0ada9a01ec Whitelist TSAN issue in srsenb::mac::sr_detected. 3 years ago
faluco a1b2f3915d Whitelist lock order inversion tsan issue in srsenb::rlc::rb_is_um. 3 years ago
Andre Puschmann 8294724aad gnb_interface: reduce MAX_GRANTS to 4
this significantly reduces data copies when providing the PHY
with scheduler results.
3 years ago
Xavier Arteaga 95bf85b3d3 Reduced maximum number of CSI reports 3 years ago
Pedro Alvarez fbcffb84bd Check if RLC is suspended before transmiting PDCP SDU.
This was done to avoid integrity issues, when the UE's RRC erroneously sent
measurement reports while the re-establishment was already in progress.

As errously sending PDCP PDUs on DRBs can cause issues as well, this was
disabled too.
3 years ago
Xavier Arteaga d9bdc3f83e Add CSI resource information and fix segmentation fault 3 years ago
Carlo Galiotto 284207dad6 WIP: fixing collision in the the users_map
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Ismael Gomez 7920e084b8 Revert "Do not abort tsan"
This reverts commit e8e1d101c553912f733070e71d020a33ec895280.
3 years ago
Ismael Gomez 80c48a8b01 rlc: protect access to tx_enabled 3 years ago
Ismael Gomez bf566fbd29 radio: protect concurrent access from tx_end and tx 3 years ago
Ismael Gomez 4239222909 Do not abort tsan 3 years ago
Francisco c6226b0d94 lte,enb,rrc: parse cellIndividualOffset in rr.conf and propagate it to measConfig sent to UE 3 years ago
Pedro Alvarez e721504f8e Removed the sctp_init_server for consistency. Added listen method to unique_socket class. 3 years ago
Pedro Alvarez e9a7e6dbae Getting rid of sctp_init_client function. The only thing it does is call the sctp_init_socket function. 3 years ago
Francisco 7aa5f731ce lte,enb,rlc: push to scheduler pending prioritized bytes both in case of RLC timer expiry or in case of new buffer state detection 3 years ago
Francisco 4a58c10f30 lte,enb,rlc: compute and forward to scheduler the number of bytes pending for retx and status pdu in RLC AM bearer 3 years ago
Xavier Arteaga 8e5fe9018b Corrected LBRM functionality 3 years ago
Xavier Arteaga 9ecea014bd Added PUSCH DMRS minimum SNR 3 years ago
Francisco 0b51848dda nr,gnb,rrc: use multiqueue to forward x2 tasks to NR stack 3 years ago
Fabian Eckermann 59df04547e Increase buffer size for NR. 3 years ago
Andre Puschmann 3bf09021f9 enb: remove unused parameter 3 years ago
Francisco 7a16be9692 rrc,nr: ensure coresets and search spaces are passed to scheduler cell_cfg and ue_cfg 3 years ago
Andre Puschmann af69551c8d mac_sch_pdu_nr: add LBSR unpacking
* add LBSR unpacking
* add pretty printer
* also simplify and unify general unpacking code
3 years ago
Francisco 81174bda64 nr,ue,rrc: release NR logical channels during RRC release 3 years ago
Xavier Arteaga 3c40cd2840 Improved NR PHY logging info 3 years ago
Xavier Arteaga a5f6aa9f31 Added CSI string in PDSCH and PUSCH decode 3 years ago
Xavier Arteaga 003c6e524c Added short NR CSI information 3 years ago
faluco dacf40f63e Delete move constructor and move assignment operator explictly for mac_pcap_base and s1ap_pcap classes.
Move emergency handlers header file into the support folder.

Refactored signal handling:
- Remove the dependency with the running static variable in the header file.
- Move implementations down to cc files.
- Allow specifying a new signal handler that will be used to stop the applications.
- Move signal handling files to support.
3 years ago
faluco 9075251627 Move the cleanup code from the signal handlers down to the new emergency handlers for the ue, epc and enb. 3 years ago
faluco 2c1e9c0c55 Implement an emergency cleanup handler registration mechanism to allow modules to clean themselves before application gets killed.
Flush PCAP contents just before killing the application.
3 years ago
Francisco f427a25a30 nr,gnb,mac: account for header space larger than 2 when packing PDSCH 3 years ago
Francisco ed2e88524f asn1,rrc_nr: implement to_json in setup_release_c 3 years ago
Francisco 9df6c6b936 sched,nr: ensure the ue_cfg_t passed to the scheduler in NR FDD mode has the correct harq delay 3 years ago
Andre Puschmann 255ddb1329 enb,gnb: add basic support for sgnb release procedure
the procedure is currently started when the EUTRA UE object
is deleted (after RRC release) in order to clean-up the
ENDC resources on the gNB.
3 years ago
Francisco ea324e8cbe nr,sched,test: update sched nr test to better reflect MAC-PHY FAPI 3 years ago
faluco 28bbaa7816 Blacklist TSAN issues from libusb and libuhd. 3 years ago
Alejandro Leal Conejos 1a64c6adad Enum fixes so clang 12 can build the repo 3 years ago
Carlo Galiotto f53e01cfa3 mac: apply changes by PR reviewers
- reinstate write_lock on ue metrics
- change "rwlock" variable name in mac_nr.h

Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto dc3e3a89f8 mac: update CQI in MAC with CSI reports from PHY
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Francisco 11ee4ab9dd nr,gnb,rrc: fix scheduler FDD configuration 3 years ago
Francisco 1b595b6eff nr,gnb: if no nr cell is initiated, do not enable endc in the LTE RRC 3 years ago
Francisco 43b12b9ffb rrc,nr: transfer SSB config to both UE and NR scheduler 3 years ago
Carlo Galiotto 43a7d822fa stack,rrc: fix double removal of EPS bearer
The EPS bearer was removed twice, causing an error in the logs.

Fix issue #3380

Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Xavier Arteaga 25bd0d6219 Added SSB pattern to/from string functions 3 years ago
Francisco 47e5e85449 refactor: clean unnecessary includes of the asn1/rrc_nr.h 3 years ago
Xavier Arteaga 1bdb1bb62d Store PUSCH CSI from PUSCH DMRS 3 years ago
Bedran Karakoc 850606f20b Added deregistration (UE terminating) 3 years ago
Xavier Arteaga d5b34696b4 Sepparate CSI report configuration from quantification and integrate in nr_phy_test with assertions 3 years ago
faluco 388b1e5d92 Fix data race in radio::is_start_of_burst. 3 years ago
faluco 7b0b76d58e Whitelist two lock order inversion TSAN issues that acquire a readlock. 3 years ago
Francisco Paisana b7f40b2baf rrc,nr: reenable CSI reporting in gNB 3 years ago
Fabian Eckermann cb721aa292 fix calculation of ssb frequency. 3 years ago
Francisco Paisana b58915d7ed rrc,nr: make gnb cell CSI NZP configuration consistent with UE NSA configuration. 3 years ago
Francisco Paisana 23bf542ae7 stack,nr: isolate calls between LTE and NR stacks via the task multiqueue 3 years ago
Andre Puschmann 8bb06ff2c0 Added SSB in gNb PHY 3 years ago
Xavier Arteaga 3763d04578 implement helper function to calculate FFT size for a given sampling rate 3 years ago
Andre Puschmann 7496b7c14f Add SSB to configuration factory 3 years ago
Andre Puschmann 5b0767772b Added SSB center frequency to band helper 3 years ago
Andre Puschmann 91e17337db Added SSB scaling configuration option 3 years ago
Andre Puschmann 3e5b40fd36 enb,rrc: fix compilation after freq point a has been removed from nr_carrier_t
since absolute freq point a members have been removed from the srslte_nr_carrier_t
struct (they are now actual frequencies) the abs_point_a values are now in
the RRC cell structs
3 years ago
Fabian Eckermann 95abfbfec8 Calculate ssb frequency from freqency point a. 3 years ago
Francisco Paisana f22483ce72 sched,nr: use formatting %d to represent slot index 3 years ago
Xavier Arteaga c9d7db7314 Minor changes 3 years ago
Xavier Arteaga e3bd92d87c Fix SSB pattern in UE 3 years ago
Xavier Arteaga 8f90ee847a Refactor carrier frequency from PHY and fix OFDM phase compensation 3 years ago
Xavier Arteaga fda35bf6a1 Initial OFDM carrier phase compensation 3 years ago
Ismael Gomez 6b506ec357
phy_common: clear tx_hold flag before releasing the semaphore (#3342) 3 years ago
yagoda 82bda02b36 adding nr metrics 3 years ago
Xavier Arteaga 1aa65bd10c HOTFIX: force DFT wisdom save at exit 3 years ago
Ismael Gomez c09f09b7be Move rrc_common from srsue to lib 3 years ago
Fabian Eckermann 8830c2796f Add support for NSA FDD on band n3, n5 and n7. 3 years ago
Fabian Eckermann 2d0be77660 Add helper functions for abs freq point a. 3 years ago
Andre Puschmann 315057d11c enb: signal user activity to EUTRA RRC when doing NR DL traffic
to avoid releasing the UE when only NR DL traffic is done.
similar to the EUTRA solution.
3 years ago
Xavier Arteaga 8b2514ded3 Added NZP-CSI-RS signals in gNb 3 years ago
Francisco Paisana cbb709d4e3 sched,nr: function to log UEs buffer status before scheduling decision, fix const_iterator of circular_map 3 years ago
Ismael Gomez 1c77998df5 Stop PDCP for data bearers before initiating HO 3 years ago
faluco fa351cd285 Rename functions that contain the unsafe word to nolock.
The term "unsafe" does not clearly state that the function is not locking the shared date and it sounds "dangerous", so use a more explicit term.
3 years ago
Andre Puschmann 59e1bca3f5 rlc_am_lte: fix potential crash when attempting to resize tx queue
under some circumstances it could happen that the RLC is configured
when SDUs are already being written to the queue. The resize
operation of the underlying container would fail in this case.

Make sure to empty the queue before doing the resize.
3 years ago
Francisco Paisana bdf18856d1 sched,nr: fix handling of DL BSR in NR scheduler and computation of UCI 3 years ago
faluco 7b079fe289 Fix a data race in rlc TM metrics. 3 years ago
faluco edb7342aef Fix data race in rlc UM metrics. 3 years ago
faluco 6c91a824e2 Whitelist the TSAN lock order inversion issue in srsenb::mac::rlc_buffer_state. 3 years ago
Andre Puschmann 426e876047 enb,nr: fix GTPU handler to forward UL PDUs 3 years ago
yagoda bc4388a78c -adding temp crnti removal for NR carrier attach 3 years ago
Andre Puschmann 802b22ac91 enb,nsa: refactor NR RRC/cell config parsing
this allows to access all cell-related params from within RRC
3 years ago
David Rupprecht 611255aa5f Added GTPU bind address as output parameter 3 years ago
David Rupprecht bd0e641633 Added GTPU PDU Session header parsing 3 years ago
Bedran Karakoc 43915550cc NGAP GTP Bearer Establishment 3 years ago
David Rupprecht 3712983308 Added PDU Session est request 3 years ago