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
Pedro Alvarez
c99ecd8009
enb,s1ap: make sure we don't processa the ICS request if there is an ICS already on-going.
3 years ago
Carlo Galiotto
d5859fb60b
rrc-nr: remove comments/dead code
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto
fe6500bd55
rrc: copy PUCCH cnf from RRCSetup to PHY structs
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto
362abfe3c9
rrc-nr: add conversion for pucch_cfg
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto
a53e7c9673
TMP WIP
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Bedran Karakoc
9507dbc534
enb,ngap: Fix global gnb ID in NGAP
3 years ago
Xavier Arteaga
98f304bfa8
Add in srsue and srsenb SSB configuration in log
3 years ago
Ismael Gomez
67db8a2b75
srsenb: add support for A5 report
3 years ago
Ismael Gomez
dcd94649ef
enb,parser: add option to set a default tx gain per cell
3 years ago
faluco
1ec8e8a94e
Raise C++ version to 14 and fix ill-formed code that is considered by this new standard.
3 years ago
Francisco
59b3635acf
rrc,lte: fix sCell activation in case of handover with #CC > 2
3 years ago
Xavier Arteaga
a19d68710c
Fix successful related typos
3 years ago
Francisco
5c122f28d3
sched,lte: fix unwanted segmentation of RLC PDUs. The scheduler cannot allocate the same lcid multiple times per TTI
3 years ago
Xavier Arteaga
5760080b27
Fix multiple nr_phy_test tests
3 years ago
Francisco
f7efee9884
asn1: use typedefs for amf_ue_ngap_id, ran_ue_ngap_id, mme_ue_s1ap_id and enb_ue_s1ap_id and changed interface to access s1ap and ngap protocol_ies
3 years ago
Francisco Paisana
2d2a5bee03
asn1: update procotol_ie_single_container interface to use -> operator instead of .value to access container content
3 years ago
Francisco Paisana
6b181e7a94
asn1: move protocol_ie_single_container_s to asn1_utils, so it can be used by ngap, s1ap, and other layers
3 years ago
Ismael Gomez
cc635168dd
enb,rrc: add more context to log line
3 years ago
Ismael Gomez
daa7d8cdb5
Increase number of tunnels per UE
3 years ago
Fabian Eckermann
cdbe6a6e1d
Make sure to not access out-of-bounds iterator when erasing vector elements.
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
Ismael Gomez
9f1a1c297c
Merge pull request #3710 from softwareradiosystems/feature_nr_sa_igm
...
Initial version of UE NR SA
3 years ago
Andre Puschmann
2a12e91594
enb,metrics_stdout: fix printing in SA mode
3 years ago
Francisco
d1ddd3da4d
gnb,rrc: make plmn and cell id configurable in SIB1
3 years ago
Ismael Gomez
6947f87bcb
Add minimum NR SA logic in parent PHY class
3 years ago
dvdgrgrtt
32c4da8db0
Fix typos
3 years ago
Francisco
74fda904ac
nr,gnb,stack: use common gtpu_pdcp_adapter class for both NSA and SA cases
3 years ago
Francisco
61e923a6a6
nr,gnb,rrc: configurable RRC NR inactivity timeout
3 years ago
Francisco
5411e75ce3
fix failing unit tests due to bug in enb parser related to the rf_port
3 years ago
Pedro Alvarez
f86fbe97bd
gnb,rrc_nr: simplified parsing of NEA/NIA preference list
3 years ago
Pedro Alvarez
84f94b26b2
gnb,rlc_nr: re-used security algo preference list from LTE. Added the ability to enable integrity/encription at the PDCP upon the security mode command.
3 years ago
Andre Puschmann
77a7185274
cfg_parser: check RF port numbering starts with zero
...
make sure all RF ports are in-order with no gaps and zero indexed
3 years ago
Francisco
976532fb52
nr,gnb,cfg: set phy nr cell cfg only after the rrc cfg is completely generated
3 years ago
Francisco
9ecb3f516d
nr,gnb,rrc: add helper function to derive rrc cfg parameters for all cells
3 years ago
Andre Puschmann
bef3553586
enb.conf.example: remove already removed parameter
3 years ago
Pedro Alvarez
2fad9ded01
Make sure that the pcap is started before NGAP init, so that the NGSetupRequest is caught
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
ed1514cf68
nr,gnb,sched: implement ConRes CE scheduling command in NR sched
3 years ago
Francisco
79a018683f
nr,gnb,rrc: consistent generation of rachConfig for phy, SIB1, and NSA reconf
3 years ago
Andre Puschmann
7eb4fb944d
gnb,ngap: set NGAP connect params to S1AP equivalents
...
in SA mode we use the S1AP params for AMF and NGC
3 years ago
Fabian Eckermann
74a289976a
Add enb MAC procedures for PDCCH orders.
3 years ago
faluco
65460b7a6e
Backport a modification for ssn.
3 years ago
Francisco
e8beb2ef81
nr,rrc: redesign fetching of asn1 obj ids for comparison and addmod/rem to asn1 lists
3 years ago
faluco
86d2eb853c
Change the column order for the enb stdout metrics so that rat is first and pci second.
3 years ago
faluco
453a7760b3
Port misc SSN changes to dev.
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
Francisco
0b8a6970f0
nr,gnb,rrc: fix ssb frequency derivation when coreset0 is active
3 years ago
Francisco
92c4e6e2d0
nr,gnb: account for CORESET#0 RB offset (See 38.213, table 13-1) in computation of SSB center frequency
3 years ago
Pedro Alvarez
e68bdf3718
Added support to sending error indication when receiving some S1AP messages in the wrong state
3 years ago
Andre Puschmann
800933c38e
slot_worker: disable baseband dump by default and don't exit after finishing
3 years ago
Andre Puschmann
2117aa93e2
slot_worker: add compile time option to write baseband signal to file
3 years ago
Andre Puschmann
9987b9e70b
phy_common: fix number of antenna port for NR-only configs
3 years ago
Pedro Alvarez
e65bcd7147
Changed default max S1 Setup retries to infinity
3 years ago
Pedro Alvarez
99e8ddefee
Terminate application if the eNB cannot connect to the MME after max s1 retries is reached
3 years ago
Pedro Alvarez
e5a83474cc
Added max_s1_setup retries option to S1AP
3 years ago
Pedro Alvarez
930e3699d0
Added max_s1_retries parameter
3 years ago
faluco
8d33d93c77
Fix a race condition in the enb csv metrics where set_handle was called while the metrics thread is running causing a race in the enb member variable.
...
Fix it by setting it during object construction.
3 years ago
Pedro Alvarez
174648e487
Restart S1AP on SCTP_ERROR event
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
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
Francisco
2d6ce768c7
nr,gnb,rrc: generation of MIB/SIB1 inside rrc_nr class and test to verify the correct output
3 years ago
Francisco
5f3afffd05
nr,gnb: implementation of sib and mib asn1 generation functions
3 years ago
Francisco
96fd3aae3c
nr,gnb: small gnb interface refactors and fix of byte buffer operator=
3 years ago
Francisco
0ac3f8b242
nr: fix ngap initialization in case of NR SA
3 years ago
Francisco
7e7f7b4c01
nr: fix failing unit tests
3 years ago
Ismael Gomez
d5c235635f
check lteworker is not null in log line
3 years ago
Francisco
dab6e8bdcd
nr,gnb: updates in parsing and phy files to allow the splitting of NR and LTE stacks
3 years ago
Francisco
8d719db43d
nr,gnb,mac: implement zero-copy get_dl_sched/get_ul_sched NR scheduler interface
3 years ago
Carlo Galiotto
ba50bbfb76
rlc,rrc,nr: remove rb_type from rlc_um_config
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
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>
3 years ago
Carlo Galiotto
d95c31d2de
rlc,rrc,nr: fix rlc bearer string diplayed in logs
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Andre Puschmann
c02aeee0d8
gtpu: only add missing whitespace
3 years ago
Andre Puschmann
79c443fd60
rrc_nr: add log_rrc_message helper to UE object to print RNTI
3 years ago
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
3 years ago
Francisco
f6e1ecdaf3
nr,gnb,mac: remove redundant checks and unused lcid enum constants
3 years ago
Francisco
c615df9d1d
nr,gnb,mac: prioritize CRNTI CE handling over remaining SDUs and CEs in gNB mac receiver
3 years ago
Francisco
885e1bcc60
nr,gnb,sched: ensure the users only get allocated if they have buffer state > 0
3 years ago
Francisco
6fb5257609
nr,gnb,sched: cleanup of checks in sched_nr_allocator and removal of unused classes
3 years ago
Francisco
7b989d9976
nr,gnb,sched: refactored slot_ue class to use pointer to ue_carrier instead of deriving all necessary parameters
3 years ago
Francisco
da9c564ad4
nr,gnb,sched: remove unused sched_nr_interface types
3 years ago
Francisco
1a56629a72
nr,gnb,sched: centralized all feedback/event management (cc-specific and non-cc-specific) into a single class
3 years ago
Francisco
7c146c5198
nr,gnb,sched: refactored sched nr common event handling to use accumulated event handling logging
3 years ago
Francisco
e5e047bc63
nr,gnb,sched: avoid that the nr sched handles the rach before it creates the ue object
3 years ago
Francisco
40fded7222
nr,gnb,sched: improve logging of slot events in the scheduler
3 years ago
Francisco
e19a0aa281
nr,gnb,sched: refactored sched nr common event handling
3 years ago
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
3 years ago
Francisco
fa09a9d11a
enb: make the pcap default boost arguments consistent with enb.conf
3 years ago
Francisco
d3a100257d
lte,enb,s1 handover: stop ts1 handover timers when an handover cancel occurs after the Handover preparation
3 years ago
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
3 years ago
Francisco
638dbc6f7e
lte,enb,rrc: the erab should not be fully released during an s1ap erab modify procedure. Instead, it should be overwritten
3 years ago
Francisco
b3d11af32d
nr,gnb,mac: fix access to uninit array in MAC UE NR metrics read
3 years ago
Francisco
1272f4c327
nr,gnb,mac: fix log tti context overflow
3 years ago
Andre Puschmann
4c7bc57b01
enb,ue_nr: fix warning when unpacking MAC PDU with padding
3 years ago
Pedro Alvarez
5735118ea0
Make sure SCTP notifications are not handled. Improve logging of SCTP ASSOC CHANGE
3 years ago
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.
3 years ago
Alejandro Leal Conejos
af3a2ef589
Fixes coverity 359789
3 years ago
Alejandro Leal Conejos
6cd917fca5
Fixes coverity 370816
3 years ago
Alejandro Leal Conejos
0fdbfcffd0
Removes unnecesary cast
3 years ago
Bedran Karakoc
9943c79c4a
Return error in ul nas transport if AMF ctxt is not available
3 years ago
Bedran Karakoc
a14cc451d0
Addition NGAP cleanup
3 years ago
Bedran Karakoc
7c53f1cbab
Add stdout for successful NG connection
3 years ago
Andre Puschmann
08e9b0b5c1
enb,rrc: reduce log level when inactivity event is received from NR
3 years ago
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.
3 years ago
Fabian Eckermann
3e9590fd13
Initialize variable.
3 years ago
Carlo Galiotto
5972345c9d
rrc,nr: increase msg5 timer to 5s and inactivity...
...
timer to 10s
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto
0d67fbc36c
rrc: change call to release user
...
We call s1ap instead of rrc
Signed-off-by: Carlo Galiotto <carlo@srs.io>
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
Andre Puschmann
0cfcd612b0
enb.conf.example: fix merge conflict
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
Alejandro Leal Conejos
547ebf11f7
Fixes coverity 372880
3 years ago
Francisco
c928615952
nr,gnb,sched: avoid scheduling RAR for RNTIs whose ue object is not yet created in the scheduler
3 years ago
Nils Fürste
6c8324d95e
srsenb.conf.example: Fix typos and make layout consistent
3 years ago
yagoda
5d6b48311e
fixing a few regression bugs in embms
3 years ago
Pedro Alvarez
bc903b13d5
Added nia0 to hardcoded configuration of nr-bearer-config
3 years ago
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>
3 years ago
Francisco
67a39fbb81
nr,sched: push BSRs into the scheduler when nr_phy_test is run with PUSCH enabled
3 years ago
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.
3 years ago
Francisco
4d8a354b17
nr,gnb,rrc: implement reestablishment reject in case of reestablishment with cause reconfigfailure and no NR carrier
3 years ago
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>
3 years ago
Francisco
e4247517d0
nr,sched: update sched_nr_test to support the new DL sched no-copy api
3 years ago
Andre Puschmann
be388aa53f
rrc_nr: temporary fix of heap-use-after free
...
see https://github.com/softwareradiosystems/srsLTE/issues/3545
3 years ago
Francisco
87459bad17
nr,sched: avoid resetting Tx softbuffer every time a new DL HARQ proc is allocated
3 years ago
Andre Puschmann
cf4b6d0bea
sched_nr_interface: make PHY results a reference to avoid copying
3 years ago
Andre Puschmann
2cee65bb88
enb,slot_worker: skip UL signal demod if scheduler returns empty results
3 years ago
Xavier Arteaga
b54d4ad8e2
Avoid copying gNb common configuration in slot basis
3 years ago
Francisco
0663594aa1
nr,gnb,sched: add extra checks to sched to ensure the max nof grants is not exceeded
3 years ago
Carlo Galiotto
0c35045543
rrc,nr: remove default value from input arg + ...
...
change input arg name
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
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>
3 years ago
Carlo Galiotto
4f6905363f
rrc,nr: add MSG3 activity timer to rrc_nr
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Francisco
ceec108831
nr,sched: fix fmt string in sched nr harq
3 years ago
Francisco
327687cbc2
nr,sched: auto clear HARQs that exceeded maxretx, after the feedback has been processed
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
Carlo Galiotto
e3267c9dfd
gtpu: remove unused local variable
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Francisco
b9f0b4a558
lte,enb,gtpu: fix failing gtpu_test
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
6bdefa33e4
fix minor issues
3 years ago
Ismael Gomez
09cec9ca5c
srsenb,phy: do not get reference to ul_grants, do a copy instead to protect concurrent access
3 years ago
Ismael Gomez
2aeb32533f
Print error setting ul grant
3 years ago
Ismael Gomez
c479a1e51e
srsenb: Handle error in decode_pusch to avoid logging PUSCH with 0 rnti
3 years ago
Ismael Gomez
cfec29548c
Do not reset MAC UE object during C-RNTI update
3 years ago
Francisco
fd998dac15
lte,enb,rrc: fix rrc_meascfg_test
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
7155de91ca
Added command to forcefully flush the buffers on srsenb and srsue.
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
3295449619
nr,gnb,sched: fix crash in debug mode due to incorrect is_lcid_valid check
3 years ago
Francisco
e26be3732c
lte,enb,sched: add comments to ue_buffer_manager explaining the logic for logging
3 years ago
Francisco
a3dbc857d4
gnb,sched: fix lcid configuration in scheduler
3 years ago