Commit Graph

122 Commits

Author SHA1 Message Date
Francisco 64d65b1afa nr,gnb,cfg: in case of TDD, use PRACH config index 8 to give more time margin to schedule RAR 2021-11-20 15:54:52 +00:00
Francisco a5e2203ea6 nr,gnb,sched: do not fill dci.coreset0_bw if coreset used is not coreset0 2021-11-20 15:54:52 +00:00
Francisco 62d1a99223 nr,gnb,sched: fix sched RAR dci generation, in particular, the filling of CORESET#0 BW and RB offset 2021-11-20 15:54:52 +00:00
Francisco f797954650 nr,gnb,rrc: fix PRACH hard-coded parameters 2021-11-20 15:54:52 +00:00
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
2021-11-19 18:24:03 +00:00
Pedro Alvarez e294311034 Added NR security context manager to RRC NR 2021-11-19 18:24:03 +00:00
Francisco 6e0eb3f10a nr,gnb,rrc: use SS type common1 for SearchSpace#1 2021-11-19 10:57:22 +00:00
Francisco d2ea9bfa5b nr,gnb,sched: design basic search algorithm to pick UE search space with valid dci format 2021-11-19 10:57:22 +00:00
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 2021-11-19 10:57:22 +00:00
Francisco 0a8a576263 nr,gnb,rrc: derive ssb_per_rach_occasion_and_cb_preambs_per_ssb from num_ra_preambles 2021-11-18 22:48:14 +00:00
Francisco 0c983d0b54 nr,gnb,rrc: set consistent rs_power for SIB1 and phy cfg 2021-11-18 22:48:14 +00:00
Francisco 79a018683f nr,gnb,rrc: consistent generation of rachConfig for phy, SIB1, and NSA reconf 2021-11-18 22:48:14 +00:00
Francisco a173c4f222 nr,gnb,rrc: set nas message presence flag only in case there is a pending NAS pdu 2021-11-18 21:06:32 +00:00
Andre Puschmann 894348fd75 gnb,mac: implement handling of CCCH subPdus 2021-11-18 21:02:32 +01:00
Pedro Alvarez eefb50fe9d Added some basic NGAP unit test for initial UE message. 2021-11-18 14:52:00 +00:00
Francisco adec23cbc5 nr,gnb,mac: avoid use of ue-specific coresets for Msg3 2021-11-18 09:39:41 +00:00
Francisco c875f88ee0 nr,gnb,rrc: generate asn1 coreset based on rrc cfg nr 2021-11-18 09:39:41 +00:00
Francisco 7ccb86c480 nr,gnb,mac: fix default ue cfg used when mac receives a RACH 2021-11-18 09:39:41 +00:00
Francisco 3f6d35bc6c nr,gnb,rrc: add coreset#2 and searchspace#2 to default rrc cfg nr 2021-11-18 09:39:41 +00:00
Francisco fbe3b066b5 nr,gnb,sched: abort PUSCH allocation if no PDCCH candidate is found while choosing search space 2021-11-18 09:39:41 +00:00
Francisco 9bebc06f97 nr,gnb,rrc: add functions to verify rrc cfg validity 2021-11-18 09:39:41 +00:00
Francisco e78c375075 nr,gnb,rrc: consistent generation of search spaces 0 and 1 in phy and asn1 2021-11-18 09:39:41 +00:00
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>
2021-11-17 19:08:47 +00:00
Carlo Galiotto 1679df928b rrc-nr,test: remove unnecessary set_
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-11-17 19:08:47 +00:00
Carlo Galiotto 81cadac12e rrc-nr,test: add security_cmd helper test
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-11-17 19:08:47 +00:00
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 2021-11-17 18:07:41 +00:00
Francisco 6221134b77 nr,gnb,rrc: return error in case of failure to add bearer to pdcp/rlc 2021-11-17 18:07:41 +00:00
Francisco 0f1b5bdcab nr,gnb,rrc: pack nas pdu in rrc reconfiguration message 2021-11-17 18:07:41 +00:00
Francisco 35507850d3 nr,gnb,rrc: check for nullptr return of byte buffer pool. 2021-11-17 18:07:41 +00:00
Francisco b35584ae70 nr,gnb,rrc: add code to add/mod/release bearers during rrc setup and reconfiguration 2021-11-17 18:07:41 +00:00
Pedro Alvarez 288df4572f Use #ifdef to select to use RLC AM NR or UM. 2021-11-17 10:50:35 +00:00
Pedro Alvarez 246e08f7a6 Hardcoded creation of RLC AM NR in RRC. 2021-11-17 10:50:35 +00:00
Andre Puschmann fe0db905c2 sched_nr: move DCI config for SIB to fill_dci_sib() 2021-11-17 10:28:31 +01:00
Andre Puschmann c73a77330f gnb,rrc,sched: backporting tiny fixes to make COTS UE PRACH
* use carrier PCI instead of cell_id
* fix coreset0 config
* use hard-coded SSB subcarrier offset
2021-11-17 10:28:31 +01:00
Ismael Gomez 7ce71c0e4d nr,sched: propagate offset_rb to PDCCH ctx 2021-11-17 10:28:31 +01:00
Ismael Gomez 4f65c644f0 sched,nr: copy coreset0_bw to dci struct before calculating grant 2021-11-17 10:28:31 +01:00
Ismael Gomez f699694538 nr,sched: use coreset0_bw when calculating SIB freq domain allocation 2021-11-17 10:28:31 +01:00
Francisco 91f47de3cc nr,gnb,rrc: forward nas pdu from rrc setup complete to ngap for the initial ue message 2021-11-16 19:32:53 +00:00
Francisco a58420a530 nr,gnb,rrc: implement basic NR RRC bearer addition and reconf message sending 2021-11-16 19:32:53 +00:00
Francisco c75a161f03 nr,gnb,rrc: implement DL/UL Information Transfer procedure in RRC 2021-11-16 19:32:53 +00:00
Francisco 716ff982c8 nr,gnb,rrc: add code to derive master cell config bearers from asn1 radio bearer cfg 2021-11-16 19:32:53 +00:00
Francisco 0c733f7ea3 nr,ngap: use const_byte_spans instead of unique_byte_buffers in ngap interface to avoid intermediate copies 2021-11-16 19:32:53 +00:00
Andre Puschmann 7f6abb8d6f gnb,mac: add compile-time parameter to write SIBs to MAC PCAP
set to disabled by default
2021-11-16 17:19:09 +01:00
Francisco 3b3630d444 nr,gnb,rrc: remove redundant code, and update rrc_nr_test to use default rrc nr cfg generator 2021-11-16 17:17:53 +01:00
Francisco b2a4ff1bbb nr,gnb,rrc: add pmax config to SIB1 2021-11-16 17:17:53 +01:00
Francisco 2b68ea322d nr,gnb,rrc: fix uplinkConfigCommon of SIB1 2021-11-16 17:17:53 +01:00
Francisco 84a60da146 nr,gnb,rrc: fix sib1 offsetToPointA derivation 2021-11-16 17:17:53 +01:00
Francisco f705445f21 nr,gnb,rrc: use rrc_nr_cfg to generate sib1 and mib 2021-11-16 17:17:53 +01:00
Francisco 4aa5fe41df nr,gnb,rrc: add extra fields to RRC setup and RRC setup complete messages. 2021-11-16 09:20:03 +00:00
Francisco 25a8ea53d3 nr,gnb,sched: pass mib config to scheduler so it is used during SSB allocation 2021-11-16 00:12:36 +00:00
Francisco fec97689a2 rrc,nr,gnb: refactored rrc nr cfg default and derived param generation to be mostly independent of parser 2021-11-16 00:12:36 +00:00
Francisco 0b8a6970f0 nr,gnb,rrc: fix ssb frequency derivation when coreset0 is active 2021-11-15 15:47:31 +01:00
Francisco 92c4e6e2d0 nr,gnb: account for CORESET#0 RB offset (See 38.213, table 13-1) in computation of SSB center frequency 2021-11-15 15:47:31 +01:00
Andre Puschmann 40809fb10e gnb,rrc: fix compilation of RRC test on 32bit 2021-11-14 20:46:40 +01:00
Francisco 83c1fb65d7 nr,gnb,rrc: add rrc nr message handler and send functions to establish an SA RRC connection 2021-11-12 14:46:44 +00:00
Francisco f3b427cbd7 nr,gnb,rrc: separate rrc_nr::ue into its own file 2021-11-11 20:50:28 +00:00
Francisco 16753a006a nr,gnb,rrc: add test logger delimiter; handle rrc setup complete 2021-11-11 10:55:35 +00:00
Francisco fd7c5e375c nr,gnb,rrc: implement NR RRCSetup in RRC and wrote unit test 2021-11-11 10:55:35 +00:00
Francisco 89ca761680 nr,gnb,sched: small fixes in sched sib allocation logging 2021-11-09 18:28:44 +00:00
Francisco aba3ac9ddf nr,gnb,sched: increase SIB grant size in PRBs, to ensure it fits the message 2021-11-08 20:29:18 +00:00
Francisco ae4071a3df nr,gnb,rrc: propagate RRC SIB configurations to mac and scheduler 2021-11-08 14:36:45 +00:00
Francisco 5766ddfa38 nr,gnb,sched: fix nr_phy_tests. The default sched cell config was not being correctly generated 2021-11-08 14:36:45 +00:00
Francisco 1807ba1e37 nr,gnb,sched: fix si softbuffer allocation. Add extra comments 2021-11-08 14:36:45 +00:00
Francisco a34a1f3f6b fix failing compilation due to rebase 2021-11-08 14:36:45 +00:00
Francisco a137835d07 gnb,rrc: use phy helper to generate coreset#0 2021-11-08 14:36:45 +00:00
Francisco 2fc41acd9a nr,gnb: generation of CORESET#0 and SearchSpace#0 parameters in rrc. Passing CORESET#0/SS#0 to scheduler 2021-11-08 14:36:45 +00:00
Francisco 87635fe8c5 nr,gnb,sched: fix sib nof_retxs. Log SIB scheduling 2021-11-08 14:36:45 +00:00
Francisco 9a267d7ed0 nr,gnb,sched: fix SIB1 periodicity derivation in NR sched 2021-11-08 14:36:45 +00:00
Francisco 72c2129cd3 nr,gnb,sched: fix sib1 window derivation in NR sched 2021-11-08 14:36:45 +00:00
Francisco 60d4d12070 nr,gnb,mac: implement basic sib1 scheduling 2021-11-08 14:36:45 +00:00
Francisco 30c0ffe3e5 nr,gnb,mac: decouple UL PDU decoding from the UE object 2021-11-08 13:45:34 +00: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