Commit Graph

2710 Commits

Author SHA1 Message Date
Francisco fd7c5e375c nr,gnb,rrc: implement NR RRCSetup in RRC and wrote unit test 2021-11-11 10:55:35 +00:00
Codebot 63fe471fa6 Merge branch 'next' into agpl_next 2021-11-07 23:12:22 +01:00
Andre Puschmann 0967cda042 gnb,stack: move gNB components into own folder
* move RRC, MAC, NGAP, SDAP into gnb folder
* move testing code below respective layers
2021-11-05 15:26:06 +01:00
Francisco 2d6ce768c7 nr,gnb,rrc: generation of MIB/SIB1 inside rrc_nr class and test to verify the correct output 2021-11-04 18:05:14 +00:00
Francisco 5f3afffd05 nr,gnb: implementation of sib and mib asn1 generation functions 2021-11-04 18:05:14 +00:00
Francisco 96fd3aae3c nr,gnb: small gnb interface refactors and fix of byte buffer operator= 2021-11-04 18:05:14 +00:00
Francisco 0ac3f8b242 nr: fix ngap initialization in case of NR SA 2021-11-04 15:24:57 +00:00
Francisco 7e7f7b4c01 nr: fix failing unit tests 2021-11-04 15:24:57 +00:00
Ismael Gomez d5c235635f check lteworker is not null in log line 2021-11-04 15:24:57 +00:00
Francisco dab6e8bdcd nr,gnb: updates in parsing and phy files to allow the splitting of NR and LTE stacks 2021-11-04 15:24:57 +00:00
Francisco 8d719db43d nr,gnb,mac: implement zero-copy get_dl_sched/get_ul_sched NR scheduler interface 2021-11-03 21:21:45 +01:00
Carlo Galiotto ba50bbfb76 rlc,rrc,nr: remove rb_type from rlc_um_config
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-11-03 19:31:47 +01:00
Carlo Galiotto 9c2099f680 rrc,rlc,nr: fix RB label in RLC-NR for UE logs + ..
add rb_type in rlc_um_config

Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-11-03 19:31:47 +01:00
Carlo Galiotto d95c31d2de rlc,rrc,nr: fix rlc bearer string diplayed in logs
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-11-03 19:31:47 +01:00
Andre Puschmann c02aeee0d8 gtpu: only add missing whitespace 2021-11-03 17:55:32 +01:00
Andre Puschmann 79c443fd60 rrc_nr: add log_rrc_message helper to UE object to print RNTI 2021-11-03 17:55:32 +01:00
Andre Puschmann c913db5ade enb,rrc_nr: log RRC messages as Json
* add log messages for RRC NR message containers sent to EUTRA RRC
* add helper function to pack RRC message into byte_buffer
2021-11-03 17:55:32 +01:00
Francisco f6e1ecdaf3 nr,gnb,mac: remove redundant checks and unused lcid enum constants 2021-11-03 13:31:16 +00:00
Francisco c615df9d1d nr,gnb,mac: prioritize CRNTI CE handling over remaining SDUs and CEs in gNB mac receiver 2021-11-03 13:31:16 +00:00
Francisco 885e1bcc60 nr,gnb,sched: ensure the users only get allocated if they have buffer state > 0 2021-11-02 00:41:24 +00:00
Francisco 6fb5257609 nr,gnb,sched: cleanup of checks in sched_nr_allocator and removal of unused classes 2021-11-02 00:41:24 +00:00
Francisco 7b989d9976 nr,gnb,sched: refactored slot_ue class to use pointer to ue_carrier instead of deriving all necessary parameters 2021-11-02 00:41:24 +00:00
Francisco da9c564ad4 nr,gnb,sched: remove unused sched_nr_interface types 2021-11-02 00:41:24 +00:00
Francisco 1a56629a72 nr,gnb,sched: centralized all feedback/event management (cc-specific and non-cc-specific) into a single class 2021-11-02 00:41:24 +00:00
Francisco 7c146c5198 nr,gnb,sched: refactored sched nr common event handling to use accumulated event handling logging 2021-11-02 00:41:24 +00:00
Francisco e5e047bc63 nr,gnb,sched: avoid that the nr sched handles the rach before it creates the ue object 2021-11-02 00:41:24 +00:00
Francisco 40fded7222 nr,gnb,sched: improve logging of slot events in the scheduler 2021-11-02 00:41:24 +00:00
Francisco e19a0aa281 nr,gnb,sched: refactored sched nr common event handling 2021-11-02 00:41:24 +00:00
Francisco f2409534e4 nr,gnb,sched: Simplify sched api and locking design to better reflect the mac-phy FAPI interface
- removal of condition variables from sched main calls
- addition of sched sched::slot_indication call as a point of synchronization per slot
- removal of sched_worker_manager class
- removal of serv_cell_manager class
- centralization of cc-specific functionality and components in cc_worker
2021-11-02 00:41:24 +00:00
Francisco fa09a9d11a enb: make the pcap default boost arguments consistent with enb.conf 2021-11-01 17:01:06 +00:00
Francisco d3a100257d lte,enb,s1 handover: stop ts1 handover timers when an handover cancel occurs after the Handover preparation 2021-11-01 12:42:43 +00:00
Francisco 0dc9cf142a lte,enb,rrc: verify the drbtoaddmodlist is correctly updated in the add_erab case, and change the function add_erab to addmod_erab 2021-10-30 15:31:19 +01:00
Francisco 638dbc6f7e lte,enb,rrc: the erab should not be fully released during an s1ap erab modify procedure. Instead, it should be overwritten 2021-10-30 15:31:19 +01:00
Francisco b3d11af32d nr,gnb,mac: fix access to uninit array in MAC UE NR metrics read 2021-10-29 16:39:47 +01:00
Codebot 5275f33360 Merge branch 'next' into agpl_next 2021-10-29 07:42:28 +02:00
Francisco 1272f4c327 nr,gnb,mac: fix log tti context overflow 2021-10-28 14:49:29 +01:00
Codebot 1cd26af06b Merge branch 'next' into agpl_next 2021-10-28 13:01:49 +02:00
Andre Puschmann 4c7bc57b01 enb,ue_nr: fix warning when unpacking MAC PDU with padding 2021-10-28 10:45:54 +02:00
Pedro Alvarez 5735118ea0 Make sure SCTP notifications are not handled. Improve logging of SCTP ASSOC CHANGE 2021-10-27 21:45:48 +02:00
Andre Puschmann 5f837c0c67 enb,nr: rewrite UL PDU processing to handle CEs in reverse order but SDUs in order
this makes sure that C-RNTI CE gets processed before any SDU gets processed.
but it also makes sure that all SDUs then are processed in-order to
avoid reordering at higher layers.
2021-10-27 19:50:35 +02:00
Alejandro Leal Conejos af3a2ef589 Fixes coverity 359789 2021-10-27 19:47:45 +02:00
Alejandro Leal Conejos 6cd917fca5 Fixes coverity 370816 2021-10-27 19:47:45 +02:00
Alejandro Leal Conejos 0fdbfcffd0 Removes unnecesary cast 2021-10-27 19:47:45 +02:00
Bedran Karakoc 9943c79c4a Return error in ul nas transport if AMF ctxt is not available 2021-10-27 19:37:49 +02:00
Bedran Karakoc a14cc451d0 Addition NGAP cleanup 2021-10-27 19:37:49 +02:00
Bedran Karakoc 7c53f1cbab Add stdout for successful NG connection 2021-10-27 19:37:49 +02:00
Andre Puschmann 08e9b0b5c1 enb,rrc: reduce log level when inactivity event is received from NR 2021-10-27 18:04:14 +02:00
Nils Fürste 3b1131936e Fix GTP-U bearer address conversion
Addresses with a leading 0 in hex represenatation were converted
without the leading 0 and padded afterwards with a trailing 0. This
leaded to wrong IPs in the GTP-U bearer setup.
2021-10-27 17:53:28 +02:00
Fabian Eckermann 3e9590fd13 Initialize variable. 2021-10-27 17:39:51 +02:00
Carlo Galiotto 5972345c9d rrc,nr: increase msg5 timer to 5s and inactivity...
timer to 10s

Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-26 23:18:17 +02:00
Carlo Galiotto 0d67fbc36c rrc: change call to release user
We call s1ap instead of rrc

Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-26 23:18:17 +02:00
Carlo Galiotto 9c74dda039 rrc,nr: add msg5 and inactivity timers to RRC-NR
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-26 23:18:17 +02:00
Andre Puschmann 0cfcd612b0 enb.conf.example: fix merge conflict 2021-10-26 22:19:29 +02:00
Ismael Gomez d972fb368c
Some LGTM fixes (#3564)
* Fix LGTM issues

* ue: add logging to switch on function

* Fix new LGTM issues
2021-10-26 21:15:36 +02:00
Alejandro Leal Conejos 547ebf11f7 Fixes coverity 372880 2021-10-26 21:09:44 +02:00
Francisco c928615952 nr,gnb,sched: avoid scheduling RAR for RNTIs whose ue object is not yet created in the scheduler 2021-10-26 16:58:55 +02:00
Nils Fürste 6c8324d95e srsenb.conf.example: Fix typos and make layout consistent 2021-10-26 16:33:42 +02:00
yagoda 5d6b48311e fixing a few regression bugs in embms 2021-10-26 15:35:18 +02:00
Pedro Alvarez bc903b13d5 Added nia0 to hardcoded configuration of nr-bearer-config 2021-10-26 14:59:40 +02:00
Carlo Galiotto dcc2c1c694 rrc,nr: defer rem_user after msg3 timer expires
This commits is to fix the issue of user removal from rrc_nr
after msg3 timer expires.
The issue was caused because the rrc_nr is accessing the ue object
after it gets removed from the users list in rrc_nr.
This commits defers the removal of the users, so there won't be any
access to invalid memory locations.

Fixes #3545

Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-26 14:57:56 +02:00
Codebot 2cda208936 Merge branch 'next' into agpl_next 2021-10-26 10:32:37 +02:00
Francisco 67a39fbb81 nr,sched: push BSRs into the scheduler when nr_phy_test is run with PUSCH enabled 2021-10-25 20:55:00 +02:00
Fabian Eckermann 32a1646536
nr,gnb,rrc: Derive RRC parameters from config.
* Derive RRC parameters from config.
* nr,gnb,rrc: hard code prach config index to 8 to avoid expiring RA proc window.
2021-10-25 20:54:32 +02:00
Francisco 4d8a354b17 nr,gnb,rrc: implement reestablishment reject in case of reestablishment with cause reconfigfailure and no NR carrier 2021-10-25 20:50:18 +02:00
Xavier Arteaga 2f5a1ad2e3
SRSENB: MAC controller recover MAC bearer state after PDSCH KO burst (#3225)
* SRSENB: MAC controller recover MAC bearer state after PDSCH KO burst

* mac,lte: simplify scheduler phy config enable configuration

Co-authored-by: Francisco Paisana <francisco.paisana@softwareradiosystems.com>
2021-10-25 10:56:12 +02:00
Francisco e4247517d0 nr,sched: update sched_nr_test to support the new DL sched no-copy api 2021-10-23 21:09:26 +02:00
Andre Puschmann be388aa53f rrc_nr: temporary fix of heap-use-after free
see https://github.com/softwareradiosystems/srsLTE/issues/3545
2021-10-23 21:09:26 +02:00
Francisco 87459bad17 nr,sched: avoid resetting Tx softbuffer every time a new DL HARQ proc is allocated 2021-10-23 21:09:26 +02:00
Andre Puschmann cf4b6d0bea sched_nr_interface: make PHY results a reference to avoid copying 2021-10-23 21:09:26 +02:00
Andre Puschmann 2cee65bb88 enb,slot_worker: skip UL signal demod if scheduler returns empty results 2021-10-23 21:09:26 +02:00
Xavier Arteaga b54d4ad8e2 Avoid copying gNb common configuration in slot basis 2021-10-23 17:23:08 +02:00
Francisco 0663594aa1 nr,gnb,sched: add extra checks to sched to ensure the max nof grants is not exceeded 2021-10-23 09:20:28 +01:00
Carlo Galiotto 0c35045543 rrc,nr: remove default value from input arg + ...
change input arg name

Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-22 19:43:19 +01:00
Carlo Galiotto ebaab9b1d0 rrc,nr: add private fnc to overload public method...
... and propagate input to calling function

Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-22 19:43:19 +01:00
Carlo Galiotto 4f6905363f rrc,nr: add MSG3 activity timer to rrc_nr
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-22 19:43:19 +01:00
Francisco ceec108831 nr,sched: fix fmt string in sched nr harq 2021-10-22 18:08:43 +01:00
Francisco 327687cbc2 nr,sched: auto clear HARQs that exceeded maxretx, after the feedback has been processed 2021-10-22 18:08:43 +01:00
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.
2021-10-22 17:27:32 +01:00
Carlo Galiotto e3267c9dfd gtpu: remove unused local variable
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-21 23:26:46 +02:00
Francisco b9f0b4a558 lte,enb,gtpu: fix failing gtpu_test 2021-10-21 23:26:46 +02:00
Carlo Galiotto 284207dad6 WIP: fixing collision in the the users_map
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-21 23:26:46 +02:00
Ismael Gomez 6bdefa33e4 fix minor issues 2021-10-21 21:31:21 +02:00
Ismael Gomez 09cec9ca5c srsenb,phy: do not get reference to ul_grants, do a copy instead to protect concurrent access 2021-10-21 21:31:21 +02:00
Ismael Gomez 2aeb32533f Print error setting ul grant 2021-10-21 21:31:21 +02:00
Ismael Gomez c479a1e51e srsenb: Handle error in decode_pusch to avoid logging PUSCH with 0 rnti 2021-10-21 21:31:21 +02:00
Ismael Gomez cfec29548c Do not reset MAC UE object during C-RNTI update 2021-10-21 21:31:21 +02:00
Francisco fd998dac15 lte,enb,rrc: fix rrc_meascfg_test 2021-10-21 16:16:01 +01:00
Francisco c6226b0d94 lte,enb,rrc: parse cellIndividualOffset in rr.conf and propagate it to measConfig sent to UE 2021-10-21 16:16:01 +01:00
Pedro Alvarez 7155de91ca Added command to forcefully flush the buffers on srsenb and srsue. 2021-10-21 14:50:44 +01:00
Pedro Alvarez e9a7e6dbae Getting rid of sctp_init_client function. The only thing it does is call the sctp_init_socket function. 2021-10-21 14:50:44 +01:00
Francisco 3295449619 nr,gnb,sched: fix crash in debug mode due to incorrect is_lcid_valid check 2021-10-21 13:58:57 +01:00
Codebot 9d7836817c Merge branch 'next' into agpl_next
# Conflicts:
#	lib/include/srsran/common/signal_handler.h
2021-10-21 12:36:20 +02:00
Francisco e26be3732c lte,enb,sched: add comments to ue_buffer_manager explaining the logic for logging 2021-10-21 10:33:26 +01:00
Francisco a3dbc857d4 gnb,sched: fix lcid configuration in scheduler 2021-10-21 10:33:26 +01:00
Francisco f0a48d47b3 enb,sched: log lcid configurations in scheduler in a single log line 2021-10-21 10:33:26 +01:00
Francisco f2818d0504 enb,sched: improve sched ue buffer manager to show rnti in logs 2021-10-21 10:33:26 +01:00
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 2021-10-21 09:31:03 +01:00
Francisco 4a58c10f30 lte,enb,rlc: compute and forward to scheduler the number of bytes pending for retx and status pdu in RLC AM bearer 2021-10-21 09:31:03 +01:00
Francisco b14e75218d lte,enb,rrc: avoid creating scells for UEs whose release < 10 2021-10-20 18:51:21 +02:00
faluco b8171e493e Fix crash in mac_nr when accesing the ue_db and not checking if the rnti is valid, while there fix a potential data race.
Fix data race inside sched_nr when modifying per ue metrics.
2021-10-20 18:08:41 +02:00
Carlo Galiotto a4932564d7 stdout: remove extra value from eNB stats + ...
address PR review
- change "TO DO" into "TODO"
- remove forgotten "printf" for debug

Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-20 17:47:00 +02:00
Carlo Galiotto 4e3564a8a2 mac,stdout: add PUSCH and PUCCH SINR to stdout
This commit implements the PUCCH and PUSCH metrics in the MAC,
to be displayed in the eNB console.

Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-20 17:47:00 +02:00
Francisco 6d432646b9 lte,enb,sched: UL HARQs should return 0 pending bytes if empty 2021-10-20 11:48:34 +02:00
Francisco 0bd8f640db lte,enb,sched: Fix hanging handover due to lack of Msg4. 2021-10-20 11:48:34 +02:00
Fabian Eckermann 2aa59a55d5 Read max turbo decoder iterations from conf. 2021-10-20 10:08:44 +02:00
Xavier Arteaga 9ecea014bd Added PUSCH DMRS minimum SNR 2021-10-19 23:05:16 +02:00
Francisco 859f4d2185 nr,gnb,sched: avoid logging warning for pending feedback of UEs that were just removed 2021-10-19 22:50:57 +02:00
Francisco b3e974db9b nr,gnb,rrc: avoid warning when eutra requests sgnb release and destroys the UE before acknowledgement 2021-10-19 22:50:57 +02:00
Francisco 0b51848dda nr,gnb,rrc: use multiqueue to forward x2 tasks to NR stack 2021-10-19 22:50:57 +02:00
Andre Puschmann 146f12f0c0 enb,mac_nr: fix MAC PDU packing by tyring to pack multiple SDUs when possible
the patch adds support to fully use the available space in a MAC PDU by adding
multiple SDUs.
2021-10-19 11:51:39 +02:00
Francisco 51806982f7 nr,gnb,rrc: correctly release NR RNTI user after Reestablishment 2021-10-19 10:46:23 +01:00
Pedro Alvarez d7e2f442f7 Adding option to remove UE contexts if SCTP error occors.
This was done as after an SCTP error, the MME would try to page the UE,
but the UE was already RRC Connected.
2021-10-18 15:50:01 +01:00
Andre Puschmann 1db683053f enb,mac: fix buffer setting when receiving SBSR
the MAX_LCG is 7 so the loop needs to be inclusive to
set all 8 LCGs to 0
2021-10-18 16:17:53 +02:00
Francisco d5acf73c46 nr,gnb,sched: fix logging of tbs. check if sched args are supported at sched startup. change the tti logging to be equal to tti_rx 2021-10-18 14:50:14 +01:00
Andre Puschmann 3bf09021f9 enb: remove unused parameter 2021-10-18 14:17:53 +02:00
Francisco 643b5a1885 nr,gnb,rrc: Add comment explaining how the UE rrc_endc is updated in case of reestablishment 2021-10-18 09:42:25 +01:00
Francisco 277e6f2998 nr,gnb,rrc: Ignore measurementReports from UE while RRC Reconfiguration procedure is not yet complete. 2021-10-18 09:42:25 +01:00
Francisco abe2c8cba4 nr,gnb,rrc: Allow NR EN-DC to be re-activated in case of Reestablishment with cause other than ReconfFailure 2021-10-18 09:42:25 +01:00
Ismael Gomez 1d37c5b476 nr: increase nominal p0 pusch 2021-10-17 20:58:48 +02:00
Francisco 9ace701788 nr,gnb,sched: prioritize the search space with the highest number of position candidates 2021-10-16 22:43:23 +01:00
Francisco b6e890cc12 nr,gnb,sched: use search space id=2 for 5G NR NSA 2021-10-16 22:43:23 +01:00
Francisco 5b2afb1739 rrc,nr,gnb: ensure same PDCCH config is sent to PHY, scheduler cell config, and sched ue cfg 2021-10-16 22:43:23 +01:00
Francisco 7a16be9692 rrc,nr: ensure coresets and search spaces are passed to scheduler cell_cfg and ue_cfg 2021-10-16 22:43:23 +01:00
Andre Puschmann f96b315f81 enb,ue_nr: unpack LBSR and pass content to sched 2021-10-16 21:50:07 +02:00
Fabian Eckermann 9cbd2727f5 Disable measGapConfig in first reconfig. Remove all measurement reports for nr in the 2nd reconfig. 2021-10-16 21:43:34 +02:00
Xavier Arteaga bdcf90d990 Enable NR PUSCH EVM estimation in srsenb 2021-10-15 18:19:04 +02:00
Xavier Arteaga 3c40cd2840 Improved NR PHY logging info 2021-10-15 18:19:04 +02:00
Xavier Arteaga a5f6aa9f31 Added CSI string in PDSCH and PUSCH decode 2021-10-15 18:19:04 +02:00
Francisco 73260fb335 sched,nr: fix stack overflow in sched_nr_test 2021-10-15 17:22:52 +02:00
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.
2021-10-15 15:05:37 +02:00
faluco 9075251627 Move the cleanup code from the signal handlers down to the new emergency handlers for the ue, epc and enb. 2021-10-15 15:05:37 +02:00
Fabian Eckermann 33df51a1f5 Remove error message if dl_freq and ul_freq are not specified. 2021-10-15 11:49:27 +02:00
Francisco 01d8814f39 sched,nr: when sched allocates PUSCH, SR doesn't need to be decoded 2021-10-15 10:22:55 +01:00
Fabian Eckermann b034a9c983 Lock mutex when setting common cfg. 2021-10-15 11:04:31 +02:00
Francisco f427a25a30 nr,gnb,mac: account for header space larger than 2 when packing PDSCH 2021-10-15 11:03:02 +02:00
Andre Puschmann f7dd327d08 enb,rrc_nr: send PUSCH nominal power 2021-10-15 10:58:31 +02:00
Carlo Galiotto dc3dad6e20 rrc,nr: implements PR review comments
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-15 10:57:44 +02:00
Carlo Galiotto fb75cbaadc rrc: disable MAC bearers when RNTI gets updated
When the RRC handles the C-RNTI CE to update the RNTI, all the bearers
associated with the new RNTI (that will no longer be used) need to be disabled.
This commit implements this.

Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-15 10:57:44 +02:00
Francisco 9df6c6b936 sched,nr: ensure the ue_cfg_t passed to the scheduler in NR FDD mode has the correct harq delay 2021-10-14 21:38:12 +01:00
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.
2021-10-14 21:30:14 +02:00
Francisco bc4264277a sched,nr: update NR scheduler tester to support parallel CC workers 2021-10-14 19:27:52 +01:00
Francisco ea324e8cbe nr,sched,test: update sched nr test to better reflect MAC-PHY FAPI 2021-10-14 19:27:52 +01:00
Andre Puschmann cc0255e4f1 enb,rrc_nr: reduce log level to info when C-RNTI is received for current RNTI
it might happen (cause by the UE or eNB) that the Msg3 with C-RNTI is passed
twice (e.g. Retx). It's ok to be logged for now but not in Error level. Reduce to warning.
2021-10-14 18:08:08 +02:00
Andre Puschmann d708f05869 rrc_endc: disable DC-PHR reporting in the UE
this solves #3432 until we've fully implemented the parsing/handling
of the DC-PHR
2021-10-14 17:57:17 +02:00
Carlo Galiotto ecd1a15e1f mac: revert order of processing MAC subPDUs
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-14 17:55:26 +02:00
Francisco efdd249cb3 nr,sched: fix dangling reference to ue_cfg in scheduler 2021-10-14 14:23:21 +01:00
Francisco 73859a5b6a nr,sched: improve logging of PDSCH and PUSCH in scheduler to also show coreset id and buffer state 2021-10-14 14:23:21 +01:00
Francisco 64ffd81cf9 nr,sched: fix recomputation of ue_bwp_cfg when sched receives new ue_cfg objects 2021-10-14 14:23:21 +01:00
faluco aa0c936f50 Fix race condition when destroying the gnb stack class.
The gnb stack class could be destroyed concurrently while still running its task scheduler thread.
2021-10-14 08:55:06 +02:00
faluco 75af37bd4b Batch of race fixes when running the UE and ENB with UHD.
Main fixes are in the UHD driver, fixing races and potential deadlocks.
2021-10-14 08:55:06 +02:00
Alejandro Leal Conejos 1a64c6adad Enum fixes so clang 12 can build the repo 2021-10-14 08:48:04 +02:00
Francisco 964dce575b nr,sched: fix nof_harqs in NR scheduler to 8 2021-10-13 23:24:20 +01:00
Francisco acd5b8c46a nr,gnb,rrc: correctly configure TDD for UE and scheduler 2021-10-13 14:04:56 +01:00
Francisco 25f34502a7 nr,gnb,rrc: restore the GTPU TEIDs back from NR RNTI to LTE RNTI when RRC reconfiguration fails 2021-10-13 13:17:15 +01:00
Francisco 25eb44914e nr,sched: fix sched_args_t default values 2021-10-13 11:23:10 +01:00
Francisco 04d48127bb nr,sched: enable NR fixed mcs configuration via enb.conf 2021-10-13 11:23:10 +01:00
Carlo Galiotto 919d949790 mac: fix rebase errors
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-13 11:12:03 +02:00
Carlo Galiotto a57ccdabf5 mac: move and check boolean from funcion to caller
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-13 11:12:03 +02:00
Carlo Galiotto 1a52cdcdaa mac: remove unused rwlock and unused cqi counter
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-13 11:12:03 +02:00
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>
2021-10-13 11:12:03 +02:00
Carlo Galiotto dc3e3a89f8 mac: update CQI in MAC with CSI reports from PHY
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-13 11:12:03 +02:00
Carlo Galiotto 781ae4abfb fix static analysis error (CID 373575)
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-13 11:05:09 +02:00
Xavier Arteaga f250c83a66 Minor NR configuration fixes 2021-10-13 11:00:03 +02:00
Francisco 6926754e67 nr,sched: fix sched logging in case of HARQ CRC=KO 2021-10-13 08:22:57 +01:00
Francisco c08bb6023c nr,sched,refactor: clear of unused typedefs and renaming of some types 2021-10-13 08:22:35 +01:00
Francisco 11ee4ab9dd nr,gnb,rrc: fix scheduler FDD configuration 2021-10-12 17:49:12 +01:00
Francisco 53c99796cc nr,gnb,rrc: ensure timing advance offset is set to present 2021-10-12 17:49:12 +01:00
Francisco ca7a3cf201 nr,sched: fix sched tbs acked metric computation 2021-10-12 15:48:37 +01:00
Francisco 510e9f47a7 sched,nr: simplify metrics extraction from MAC
Allow some level of mutex contention between metrics and worker threads in accessing
internal scheduler variables.
2021-10-12 15:48:37 +01:00
Francisco af0bc36de9 nr,sched: ensure scheduled RAR grants are reset every slot 2021-10-11 18:30:33 +01:00
Francisco 2b41efaa23 nr,phy,gnb: enable PUSCH debug logging 2021-10-11 18:30:33 +01:00
Francisco 1b595b6eff nr,gnb: if no nr cell is initiated, do not enable endc in the LTE RRC 2021-10-11 18:21:51 +01:00
Francisco 7e0fd2721d sched,lte: disable all SRBs UL during intraenb Handover 2021-10-11 16:55:52 +01:00
Francisco 78f8302839 sched,lte: addition of extra logs in sched ue configuration 2021-10-11 11:12:07 +01:00
Francisco 877b995a4d gnb,nr: add metrics for ack'd TBS in the gNB. 2021-10-11 11:08:37 +01:00
Codebot 1528f69d5b Adding AGPL copyright to new files 2021-10-10 23:12:27 +02:00
Codebot cf4b0f1739 Merge branch 'next' into agpl_next 2021-10-10 23:12:22 +02:00
Francisco 479df12775 fix rrc_nr_test bad config 2021-10-09 16:53:14 +01:00
Francisco 9dcfa8fdb1 nr,gnb,rrc: pass default rrc_nr_cfg_t to rrc_nr_test 2021-10-09 16:53:14 +01:00
Francisco 2e71dc17a5 rrc,nr: transfer SSB config to ue phy_cfg in the scheduler 2021-10-09 16:53:14 +01:00
Francisco 43b12b9ffb rrc,nr: transfer SSB config to both UE and NR scheduler 2021-10-09 16:53:14 +01:00
Andre Puschmann 8118c368d9 rrc_nr: add missing PRACH config part 2021-10-08 11:47:06 +02:00
Andre Puschmann eaf87140e1 rrc_nr: add TAG and PHR config in MAC (but keep it disabled) 2021-10-08 11:47:06 +02:00
Andre Puschmann c463ccd961 rrc_endc: pack MAC main config dedicated with DC PHR config 2021-10-08 11:47:06 +02:00
Andre Puschmann 93acf57e1a rrc_nr: set cellGroupId and groupId 2021-10-08 11:47:06 +02:00
Andre Puschmann 929c6d9fe6 rrc,endc: avoid sending PHY config dedicated for SCG addition 2021-10-08 11:47:06 +02:00
Andre Puschmann e2ffbd85bc enb,rrc: add SIB2 field to display 5G logo ;-) 2021-10-08 11:47:06 +02:00
Andre Puschmann c8d6f54dab enb,rrc: add radio link monitoring config 2021-10-08 11:47:06 +02:00
Francisco 400d7587c8 lte,rrc,enb: stop rlf timers after the UE performs intra-eNB handover
The RLF timers may be triggered before handover, which will lead to the
UE getting released after it successfully handovers. To avoid this,
we should stop the timers.
2021-10-08 10:40:36 +01:00
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>
2021-10-08 11:19:12 +02:00
Francisco d30239f47b sched,nr: check existence of rnti before processing feedback 2021-10-08 09:52:54 +01:00
Francisco 73f1981e5e sched,nr: use R_prime instead of R in scheduler to limit coderate 2021-10-08 01:16:07 +01:00
Francisco 344f067c13 sched,nr: increase max R to 0.93 to enable mcs=28 2021-10-08 01:16:07 +01:00
Francisco 7d4a5238f6 sched,nr: force R<0.9 by reducing mcs 2021-10-08 01:16:07 +01:00
Francisco d6a3daff8a rrc,nr: re-activate NZP-CSI-RS for FDD 2021-10-08 01:16:07 +01:00
Francisco 053877f489 rrc,nr: fix conversion from asn1 to phy cfg 2021-10-08 01:16:07 +01:00
Francisco 47e5e85449 refactor: clean unnecessary includes of the asn1/rrc_nr.h 2021-10-07 23:08:07 +01:00
Francisco ef78c7e06f rrc,nr,gnb: add csi resource to add/mod config to FDD 2021-10-07 19:17:34 +01:00
Xavier Arteaga 1bdb1bb62d Store PUSCH CSI from PUSCH DMRS 2021-10-07 16:31:26 +02:00
Francisco 5c3f0a39ee sched,nr: set scheduler ue candidate logging to debug level 2021-10-07 15:09:30 +01:00