243 Commits (master)

Author SHA1 Message Date
Ismael Gomez a6a9274203 srsgnb: derive SSB frequency and ssb_offset based on user provided coreset0 index configuration. Added extra configuration validators 2 years ago
Ismael Gomez fef61554b2 srsgnb,sched: mark as occupied the resources used by SSB before scheduling other PDSCH (eg SIB1). Prevents overlapping SIB1 PDSCH with SSB 2 years ago
Codebot c00f44037c Merge branch 'next' into agpl_next 2 years ago
Andre Puschmann bed35c747c gnb,rrc: fix handling of DRB for reconfig/reestablishment
the five_qi value received from the 5GC was not stored/passed when
the UE object was moved from one RNTI to another during e.g.
reestablishment. this makes sure the selected 5qi is passed over
during that process.
2 years ago
Andre Puschmann bbd84f087e gnb,rrc: add error checking/handling when creating cellgroup cfg 2 years ago
Codebot e79aa61a9a Merge branch 'next' into agpl_next 3 years ago
Pedro Alvarez a72279dcbd Addressed review comments:
1 - enb,cfg: fix typo
2 - enb,config: added back deleted config option
3 - ue,rrc_nr: fix wrong log level in log message
4 - enb,config: remove unused parameter
3 years ago
Pedro Alvarez 3ae6aae230 gnb,rrc: starting to read srb configuration from config 3 years ago
Pedro Alvarez 36354ef6ff srsgnb,cfg_parser: adding parsing for SA SRB configs 3 years ago
Codebot 4d2b5b8eda Adding AGPL copyright to new files 3 years ago
Codebot 123f766935 Merge branch 'next' into agpl_next 3 years ago
Bedran Karakoc 29bd06f58a gnb,rrc: Added test for UE Capability Exchange procedure 3 years ago
Bedran Karakoc 647882d03e nr,gnb,rrc: Add initial UE capability transfer 3 years ago
Andre Puschmann d854bbc22e enb,rrc: remove hard-coded SCG bearer config
Use 5QI config when configuring secondary cell group bearer for NSA.
The 5QI used for this needs to match with the QCI used for the initial
LTE DRB.

This allows to use RLC AM over NSA.
3 years ago
Andre Puschmann e2efb88415 enb,ngap: extend type to store AMF id to 64bit
AMF is up to 40bit long
3 years ago
Pedro Alvarez bbae0ce93c gnb,rrc_nr: Filling in RLC-NR DRB configs from 5QI config now. 3 years ago
Pedro Alvarez b8006534f0 gnb,ngap,rrc_nr: Passing 5QI from the NGAP to the RRC when establishing eps bearers. Filling PDCP-NR config from 5QI config. 3 years ago
Pedro Alvarez 43a2678841 gnb,config: Added five_qi_cfg to rrc_nr_config_t. Starting to add
five_qi_field to parse the rb.conf for 5g configuration.
3 years ago
Pedro Alvarez bb9eaf4390 gnb,ngap: Added some comments to ngap.cc to make it easier to navigate
the file. Re-ordered NGAP UE procedures have the same order as in the
standard.
3 years ago
Codebot 81061fd545 Merge branch 'next' into agpl_next 3 years ago
Carlo Galiotto f73286727e sched-nr: simplfy code for MCS with SRB0/CCCH
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto c935484102 sched-nr: fix scheduler to pass nr tests
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto 2b3158536a sched-nr: fix sched not allocating CCCH at low MCS
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Pedro Alvarez b1a33a07a1 lib,rlc_am_nr: starting to add test for segmenting retx. Changed sdu under segmentation to only hold the SN. The actual SDU already exists in the pdu stored in the tx_window. 3 years ago
Francisco 581a99c616 nr,gnb: use memory pool to allocate scheduler UEs 3 years ago
Codebot 42cc7d5d1a Merge branch 'next' into agpl_next 3 years ago
Francisco Paisana e4a15c9c51 rrc,gnb: move non-phy fields out of phy_cell_nr_t 3 years ago
Francisco Paisana e9760f110a rrc,gnb: remove obsolete methods to verify config correctness 3 years ago
Francisco Paisana e8902c785f rrc,gnb: remove srsran_prach_cfg_t from gnb rrc config struct 3 years ago
Francisco Paisana c0dda2958c rrc,gnb: fix search space NSA config 3 years ago
Francisco Paisana 532a4b54e7 rrc,gnb: remove phy flat pdcch cfg struct from rrc nr cfg 3 years ago
Francisco Paisana 88a95e8e57 rrc,gnb: remove uneeded flat phy cfg fields from rrc_nr_cfg_t 3 years ago
Francisco Paisana 301848002f rrc,gnb: remove uneeded cell config parameters from rrc_nr main class 3 years ago
Joaquim Broquetas b2075673e5
Crest Factor Reduction feature for the phy layer (#3720)
* Add CFR module to the phy lib

* Add dynamic threshold with PAPR estimation

* Add a CFR unit test, CFR module improvements and refactoring.
Swap the gain normalization before the CFR.

* Add CFR config interface to srsenb

* Add CFR support to pdsch_enodeb

* Add DL PAPR measurement to eNB.

Co-authored-by: Cristian Balint <cristian.balint@gmail.com>

* Add test coverage to srsran_vec_gen_clip_env
3 years ago
Codebot 088f69da81 Adding AGPL copyright to new files 3 years ago
Codebot fb75a5ef0e Merge branch 'next' into agpl_next 3 years ago
Andre Puschmann 366dfca7ff gnb,rrc: refactor AS security updates
refactor security updater to extra function and make sure
the config is applied to all active RBs, also DRBs
3 years ago
Codebot 35c9e05078 Adding AGPL copyright to new files 3 years ago
Codebot 9664aa3cf4 Merge branch 'next' into agpl_next
# Conflicts:
#	lib/include/srsran/phy/channel/ch_awgn.h
3 years ago
Francisco e6af64c147 rrc,nr: removal of ssb config from the rrc_nr_cfg_t 3 years ago
Francisco ab9fe90d3a rrc,nr: create DU configuration manager in RRC NR class to handle the generation of SIBs and other cell-specific parameters 3 years ago
Francisco 52106be3d5 sched,nr: remove phy cfg types from sched_nr_cell_cfg_t 3 years ago
Francisco 7ef206e15b sched,rrc,nr: remove need to pass sched ue cfg object to rrc during ra procedure 3 years ago
Francisco 822a1f5d19 sched,nr: redesign sched nr ue object creation during rach. Update of sched nr tests to reflect this change 3 years ago
Francisco 7f200ac7f7 sched,nr: pass asn1 TDD configuration to scheduler as defined in ORAN 3 years ago
Francisco f1831d9027 sched,nr: change UE configuration Request struct to better match ORAN specs 3 years ago
Bedran Karakoc 6112871da9 gnb,ngap: Add basic handler for NGAP Paging 3 years ago
Andre Puschmann c49615c059 gnb,rrc: handle reestablishment complete
* add message handler
* rename internal calls
3 years ago
Andre Puschmann f17e77f391 gnb,rrc: add GTPU interface to RRC 3 years ago
Andre Puschmann db065239e0 sched_nr: add dl_mac_ce() method to allow MAC to schedule CE
MAC can give the scheduler hints as to when to schedule certain
CEs in the DL. For example when receiving a CCCH on SRB0.
3 years ago
Andre Puschmann 9832ba4477 rrc_nr_config: add comment 3 years ago
Andre Puschmann bbe3ee41da rrc,nr_security: fixing a few typos for NR 3 years ago
Andre Puschmann 1616c09335 gnb,rrc: handle RRC reestablishment request
implement basic support for sending RRC reestablishment
3 years ago
Codebot 141073050e Merge branch 'next' into agpl_next 3 years ago
Codebot 582126d106 Merge branch 'next' into agpl_next 3 years ago
Francisco Paisana ac7fe9be64 sched,nr: make scheduler robust to errors in the phy that cause skipped slot indications 3 years ago
Carlo Galiotto 9be9bd659e sched,nr: add CQI to SE and SE to MCS mapping ...
for scheduler + add CQi reporting from PHY to scheduler

Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Francisco Paisana 40138c7125 changed namespace of asn1 ngap from 'ngap_nr' to simply 'ngap' 3 years ago
Codebot 0673d45338 Adding AGPL copyright to new files 3 years ago
Codebot 21525935ab Merge branch 'next' into agpl_next
# Conflicts:
#	srsue/hdr/phy/ue_lte_phy_base.h
#	srsue/hdr/phy/ue_nr_phy_base.h
3 years ago
Francisco e8f6c723b6 refactor: isolate rrc interfaces for pdcp, rlc and s1ap into separate files. This will avoid importing lte asn1 symbols to srsgnb code 3 years ago
Francisco ffca2f7684 nr,gnb,sched: expose cqi in slot_ue object 3 years ago
Francisco 2a933ed8ad nr,gnb,sched: refactor filling of dci harq fields 3 years ago
Francisco 632f2dbddd nr,gnb,sched: changed pdsch_allocator interface and extended its respective unit tests 3 years ago
Francisco fe35787130 nr,gnb,sched: remove unused files 3 years ago
Francisco 107e2aa938 nr,gnb,sched: implemented standalone PDSCH allocator class 3 years ago
Francisco c3d682bba8 nr,gnb,sched: cache ue phy dci_cfg to avoid computing it at every slot 3 years ago
Francisco 949c34112e nr,gnb,sched: implement pusch allocator and fix prb grant allocation when UEs are using common SS 3 years ago
Francisco 70c5eff6d0 nr,gnb,sched: wrote unit test for sched PDSCH allocations 3 years ago
Francisco 8ba08032b5 nr,gnb,sched: implemented standalone PDSCH allocator class 3 years ago
Francisco 20b327c320 nr,gnb,sched: extend PDCCH allocator test to cover most allocation fail paths 3 years ago
Francisco bf275282ae nr,gnb,sched: simplify PDCCH allocation abortion api, and implemented method to print PDCCH allocations 3 years ago
Francisco 384004d8d1 nr,gnb,sched: implemented sched helper functions, wrote a unit test for PDCCH allocations 3 years ago
Francisco 9a4a5345c4 nr,gnb,sched: improve sched sanity checks, and improve bwp_pdcch_allocator api 3 years ago
Francisco 5f36b9b116 nr,gnb,sched: rename pdcch scheduler to pdcch allocator 3 years ago
Francisco 0929177fa2 nr,gnb,sched: wrap coreset list in pdcch_scheduler 3 years ago
Codebot fc3ac4d491 Merge branch 'next' into agpl_next 3 years ago
Francisco ecaaf8d595 nr,gnb,sched: implement helper methods to check available PRBs in BWP, taking into account common SearchSpace BW limitations 3 years ago
Francisco 8a5ecfea40 nr,gnb,ngap: rename functions for extra clarity 3 years ago
Francisco 11b4a572a0 nr,gnb,rrc&ngap: implementation of NGAP UE Context Release Request and RRC Release for the case RRC_CONNECTED->RRC_IDLE 3 years ago
Francisco d1ddd3da4d gnb,rrc: make plmn and cell id configurable in SIB1 3 years ago
Francisco 74fda904ac nr,gnb,stack: use common gtpu_pdcp_adapter class for both NSA and SA cases 3 years ago
Codebot fb55783454 Adding AGPL copyright to new files 3 years ago
Codebot dd2c1f7695 Merge branch 'next' into agpl_next 3 years ago
Francisco b27c184d2f nr,gnb,stack: add bearer manager to gNB stack to correctly map between eps bearer ids and lcids 3 years ago
Carlo Galiotto f9ff6758aa rrc-nr: temporary fix to handle inactivity timeout
Fixes issue #3689

Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Francisco 68ec3eaba0 nr,gnb,rrc: remove obsolete TODO comment and set default rrc inactivity timeout 3 years ago
Francisco 61e923a6a6 nr,gnb,rrc: configurable RRC NR inactivity timeout 3 years ago
Pedro Alvarez 9f7ae7a2b2 gnb,ngap: Added simple allocation of lcids to ngap_ue_bearer_manager. 3 years ago
Carlo Galiotto 18a85adc49 rrc-nr: trigger RRCReconfifguration from ...
establish_EPS_bearer

Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto 39d6eecf01 rrc-nr,test: add test for RRCReconfiguration
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Pedro Alvarez 3e61448a41 gnb,ngap: added logging for Rx NGAP messages. 3 years ago
Pedro Alvarez f9a2850d74 gnb,ngap: Added interface so the NGAP can pass a NAS message to the RRC
upon starting the RRC Security Mode command. This allows the gNB to
pass this message only after the SM procedure is complete.

Also made sure that the RRC notifies the NGAP upon the end of the
reconfiguration procedure, to make sure that the NGAP sends the UE
context setup response.
3 years ago
Francisco fe2a19c46d nr,gnb,sched: consider CORESET RB limits in the computation of DCI riv 3 years ago
Francisco 6df8b6bb9e nr,gnb,sched: account for CORESET RB offset in the DCI RB indexing in case of common search spaces 3 years ago
Francisco dc77260956 nr,gnb,mac: use mac cell config to generate ue phy cfg common 3 years ago
Francisco 9ecb3f516d nr,gnb,rrc: add helper function to derive rrc cfg parameters for all cells 3 years ago
Andre Puschmann 8ddc344cdb gnb,mac: rework DL MAC PDU packing and add ConRes handling
* store Msg3 when UL-CCCH is received
* add ConRes CE in DL-SCH when indicated by scheduler
* remove fixed LCID for packing SDUs
3 years ago
Francisco 45d59cf686 nr,gnb,sched: account type of RNTI in the choice of SearchSpace for PDSCH and PUSCH allocations 3 years ago
Francisco afd7bb8631 auto scheduler ConRes CE when the DL CCCH buffer is filled 3 years ago
Pedro Alvarez 5e22e42762 Added option to save NGAP pcaps. 3 years ago
Francisco ffc1ea5c86 nr,gnb,phy: decoupled gnb and enb phy config structs by moving them to separate files 3 years ago
Francisco 423681664c nr,gnb,rrc: remove conf parsing from rrc_nr_test 3 years ago
Francisco 6ad6f4511e nr,gnb,sched: implement ConRes CE scheduling operations in NR sched and extend sched nr interface 3 years ago
Francisco 17f7a86647 nr,gnb,sched,test: extend scheduler testing to generate UL HARQ acks 3 years ago
Francisco ed1514cf68 nr,gnb,sched: implement ConRes CE scheduling command in NR sched 3 years ago
Codebot 60de469479 Adding AGPL copyright to new files 3 years ago
Codebot e0734e584d Merge branch 'next' into agpl_next
# Conflicts:
#	lib/include/srsran/rrc/nr/rrc_nr_cfg_utils.h
#	lib/src/rrc/CMakeLists.txt
#	lib/src/rrc/nr/rrc_nr_cfg_utils.cc
3 years ago
Pedro Alvarez c0d2e8c11d gNB NR security context:
- changed variables to use nia/nea instead of eia/eea.
  - make rrc_nr_cfg a ref
  - Changed NR ciphering/integrity algo enums to their own enum
3 years ago
Pedro Alvarez e294311034 Added NR security context manager to RRC NR 3 years ago
Francisco d2ea9bfa5b nr,gnb,sched: design basic search algorithm to pick UE search space with valid dci format 3 years ago
Francisco 27d223de2a nr,gnb,rrc: extend RRC setup test to verify if UE-specific SearchSpaces and CORESETs are added at RRC setup complete and not before 3 years ago
Francisco 79a018683f nr,gnb,rrc: consistent generation of rachConfig for phy, SIB1, and NSA reconf 3 years ago
Francisco 7ccb86c480 nr,gnb,mac: fix default ue cfg used when mac receives a RACH 3 years ago
Francisco 9bebc06f97 nr,gnb,rrc: add functions to verify rrc cfg validity 3 years ago
Francisco e78c375075 nr,gnb,rrc: consistent generation of search spaces 0 and 1 in phy and asn1 3 years ago
Carlo Galiotto aa979708a0 rrc-nr,test: add fnc to trigger send_security_cmd
The SecurityModeCommand procedure was previously initiated by the
RRCSetupComplete msg. However, it should be trigger by the NGAP
through the InitialContextSetupRequest msg.
This commit implements this change and fills in the function of
the NGAP interface that starts the SecurityModeCommand procedure

Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Francisco f9a2b8e068 nr,gnb,rrc: print correct context where PDU allocation fails, and handle case the CCCH/DCCH failed to be sent to the UE 3 years ago
Francisco 0f1b5bdcab nr,gnb,rrc: pack nas pdu in rrc reconfiguration message 3 years ago
Francisco 35507850d3 nr,gnb,rrc: check for nullptr return of byte buffer pool. 3 years ago
Francisco b35584ae70 nr,gnb,rrc: add code to add/mod/release bearers during rrc setup and reconfiguration 3 years ago
Francisco a58420a530 nr,gnb,rrc: implement basic NR RRC bearer addition and reconf message sending 3 years ago
Francisco c75a161f03 nr,gnb,rrc: implement DL/UL Information Transfer procedure in RRC 3 years ago
Francisco 716ff982c8 nr,gnb,rrc: add code to derive master cell config bearers from asn1 radio bearer cfg 3 years ago
Francisco 0c733f7ea3 nr,ngap: use const_byte_spans instead of unique_byte_buffers in ngap interface to avoid intermediate copies 3 years ago
Francisco f705445f21 nr,gnb,rrc: use rrc_nr_cfg to generate sib1 and mib 3 years ago
Francisco 4aa5fe41df nr,gnb,rrc: add extra fields to RRC setup and RRC setup complete messages. 3 years ago
Francisco 25a8ea53d3 nr,gnb,sched: pass mib config to scheduler so it is used during SSB allocation 3 years ago
Francisco fec97689a2 rrc,nr,gnb: refactored rrc nr cfg default and derived param generation to be mostly independent of parser 3 years ago
Codebot 861b0622b9 Adding AGPL copyright to new files 3 years ago
Codebot 3a9014802d Merge branch 'next' into agpl_next
# Conflicts:
#	srsenb/hdr/stack/rrc/nr/rrc_config_nr.h
#	srsenb/hdr/stack/rrc/rrc_nr.h
#	srsenb/src/stack/mac/nr/sched_nr_signalling.cc
#	srsenb/test/rrc/rrc_nr_test.cc
3 years ago
Francisco 83c1fb65d7 nr,gnb,rrc: add rrc nr message handler and send functions to establish an SA RRC connection 3 years ago
Francisco f3b427cbd7 nr,gnb,rrc: separate rrc_nr::ue into its own file 3 years ago
Francisco 16753a006a nr,gnb,rrc: add test logger delimiter; handle rrc setup complete 3 years ago
Francisco fd7c5e375c nr,gnb,rrc: implement NR RRCSetup in RRC and wrote unit test 3 years ago
Francisco ae4071a3df nr,gnb,rrc: propagate RRC SIB configurations to mac and scheduler 3 years ago
Francisco 1807ba1e37 nr,gnb,sched: fix si softbuffer allocation. Add extra comments 3 years ago
Francisco a34a1f3f6b fix failing compilation due to rebase 3 years ago
Francisco 2fc41acd9a nr,gnb: generation of CORESET#0 and SearchSpace#0 parameters in rrc. Passing CORESET#0/SS#0 to scheduler 3 years ago
Francisco 72c2129cd3 nr,gnb,sched: fix sib1 window derivation in NR sched 3 years ago
Francisco 60d4d12070 nr,gnb,mac: implement basic sib1 scheduling 3 years ago
Francisco 30c0ffe3e5 nr,gnb,mac: decouple UL PDU decoding from the UE object 3 years ago
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
3 years ago