Pedro Alvarez
9bb3b1f18f
lib,rlc_am_nr: remove unused code after re-factor
3 years ago
Pedro Alvarez
5e8b7b5ebe
lib,rlc_am_nr: re-factored code for retx'ing with and without segmentation.
3 years ago
Pedro Alvarez
38e4c47f34
lib,rlc_am_nr: added current SO to keep track of the SO for the next RETX.
3 years ago
Pedro Alvarez
65d5df8b6e
lib,rlc_am_nr: Continue to add functionality to provide segments of retx'es. Started to add function to re-segment already existing SDU segment
3 years ago
Pedro Alvarez
e4a72de342
lib,rlc_am_nr: refactored build_pdu helpers to receive the payload pointer for consistency. Added function to segment retx. Added some comments to build PDU helper functions.
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
Francisco
a2174a5714
Fix type storage copy and move assignment function helper
...
Previously, in the case both the lhs and rhs optionals were present, the copy/move assignments were erroneously destroying the lhs object.
3 years ago
faluco
c9c2d6982f
Implement a function to remove emergency handlers when a signal is raised.
...
Make PCAP handlers deregister from this list when they are destructed. This avoid the signal handler calling destructed objects under very rare circumstances.
3 years ago
Bedran Karakoc
83868fd2d2
lib,nas_5g: Implement to_string() for 5GSM Cause
3 years ago
Francisco Paisana
e4a15c9c51
rrc,gnb: move non-phy fields out of phy_cell_nr_t
3 years ago
Francisco Paisana
e8902c785f
rrc,gnb: remove srsran_prach_cfg_t from gnb rrc config struct
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
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
Carlo Galiotto
91502c87db
rrc-nr: rename rrc_util function and fix indexing
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto
e88a4fbe18
rrc-nr: add sr_resources RRCSetup cnf conversion
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Francisco
425b956ef1
revert hacky asn1 compilation fix related with default dtors
3 years ago
Robert Falkenberg
57f84d4ca4
Radio: add support for file-based RF device abstraction
3 years ago
Robert Falkenberg
d3eca325f7
Add file-based RF device for rx from arbitrary FILE*
...
It comes with the following changes:
* Add RF frontend API function "srslte_rf_open_file()"
* Open file-based RF via explicit call of custom
"rf_file_open_file()", instead of "srslte_rf_open_multi()"
function pointer as for regular devices.
* Introduce device name "file"
* Introduce new SRSLTE_ERROR_RX_EOF error code
* ZMQ: make update_rates() static to resolve conflicts
3 years ago
Carlo Galiotto
9f25a91282
asn1: fix clang compiling issue #3827
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Xavier Arteaga
a74fdb84c9
Added SSB encode and decode from grid, plus unit test
3 years ago
Bedran Karakoc
37280307b5
lib,nas_5g: Fix unpacking/packing for timezone IEs
3 years ago
Bedran Karakoc
cf191d8306
lib,nas_5g: Fix packing/unpacking error for ipv4 addresses
3 years ago
dvdgrgrtt
73594cf704
Fix minor bug
...
SRS_API was used instead of SRSRAN_API. Did not seem to have major
consequences.
3 years ago
Andre Puschmann
c3596cc684
ue_nas_interfaces.h: set default APN type to ipv4
3 years ago
Carlo Galiotto
362abfe3c9
rrc-nr: add conversion for pucch_cfg
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Bedran Karakoc
efa13290a9
ue,rrc_nr,nas_5g: Introduce NR AS Key derivation and update context handling in 5G NAS
3 years ago
Bedran Karakoc
a8eaf1cdd8
ue,nas_5g: Add get_k_amf() helper function and security context flag
3 years ago
Andre Puschmann
44a00feccb
pdcp_entity_base: fix log typo
3 years ago
Xavier Arteaga
a9591f1d45
Avoid poping queue if empty
3 years ago
Fabian Eckermann
12cc7cb4d7
Add support for RRC redirect.
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
7f200ac7f7
sched,nr: pass asn1 TDD configuration to scheduler as defined in ORAN
3 years ago
Xavier Arteaga
66f6c11561
Fix concurrent issues in dummy radio used in nr_phy_test
3 years ago
Xavier Arteaga
8a7a4a588d
Fix concurrent access to decimator busy flag
3 years ago
dvdgrgrtt
3ffefe5ba7
Use copyright as file header
3 years ago
dvdgrgrtt
a69fb1d50f
ch_awgn: Improve API
...
The API of functions srsran_ch_awgn_X was causing confusion between
noise variance and standard deviation. Also, in the complex-valued case,
the noise variance did not take into account the fact that the signal is
two-dimensional.
All uses of these functions are modified accordingly.
3 years ago
Andre Puschmann
99c2d16c1b
ue_nr_interface: include SRB ARFCN in cell search result
3 years ago
Andre Puschmann
02cdc66302
security: fix k_gnb* derivation for 5G
...
add FC code for gNB KDF and fix ARFCN encoding (can be more than 2 bytes)
3 years ago
Pedro Alvarez
9bd368e0a9
lib,rlc: changed back status and header logging helpers to log directly. Make sure RB name is automatically logged.
3 years ago
Pedro Alvarez
b53da22eb1
lib,rlc: changed return of string helper functions from char* to std::string to avoid UB
3 years ago
Pedro Alvarez
e157806db2
lib,rlc_am_lte: removed RB_NAME macro. changed status and data pdu logging helpers to return C strings. Using new logging macros to make sure that RB name is included when logging status and amd pdus.
3 years ago
Pedro Alvarez
0f4b64f13f
lib,rlc: added macros for hex logging that automatically add the rb_name. changed logging to use new macros in multiple places.
3 years ago
Pedro Alvarez
b687072815
lib,rlc: added rb_name and logger to rlc_common. Added macros to help making sure bearer name is always included to the log to rlc_common.h. Started using said macros in TM, UM and AM entities.
3 years ago
Francisco
3c25b6cb24
asn1: remove presence flag for lists and octet strings, as the size of the latter implicitly tell if the asn1 field is present
3 years ago
Xavier Arteaga
8694cc63ec
Added SSB configuration conversion to string
3 years ago
faluco
634db621e4
Fix compiler error due to a bug in clang9.
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
Xavier Arteaga
a19d68710c
Fix successful related typos
3 years ago
Xavier Arteaga
2c7287e4d4
Fix successful related typos
3 years ago
Xavier Arteaga
db19941985
Minor changes on UE SA PHY
3 years ago
Xavier Arteaga
5760080b27
Fix multiple nr_phy_test tests
3 years ago
Xavier Arteaga
d6ee282796
Created dummy radio and moved UE dummy PHY into real UE SA PHY
3 years ago
Xavier Arteaga
3b396c8a9a
Implement and test initial SFN synchronization for UE standalone mode
3 years ago
Xavier Arteaga
a5130673f6
More cell search development
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
26f173e582
asn1: use template to generate ngap/s1ap elementary procedure option and reduce code duplication
3 years ago
Francisco Paisana
d5f5df3e7b
asn1: place common asn1 type for empty ie object sets in asn1_utils.h
3 years ago
Francisco Paisana
ec1ed9d4a5
asn1: fix json generation for s1ap/ngap and improve ie protocol field interface
3 years ago
Francisco Paisana
61e225d762
asn1: move setup_release_c from rrc_nr_asn1 to asn1_utils and improved interface
3 years ago
Francisco Paisana
e2b8a80f87
asn1: move all ie protocol container types to asn1_tuils to be reused in different layers
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
Francisco Paisana
c8f7976014
asn1: use byte buffer pool for temporary variable length field generation instead of stack array
3 years ago
Pedro Alvarez
b0581ae5ae
lib,rlc_am_nr: removed ugly hack to get last element of list. Renamed current_sdu to sdu_under_segmentation.
3 years ago
Pedro Alvarez
bd8c7f7c57
lib,rlc_am_nr: added max_hdr and min_hdr variables, that are configured based on SN length. Replaced magic numbers with said variables.
3 years ago
Pedro Alvarez
5532c514ba
lib,rlc_am_nr: added logging macros to make sure that the RB name is allways logged.
3 years ago
Pedro Alvarez
f60259afb9
lib,rlc_am_nr: fixed multiple typos and deleted useless comments
3 years ago
Pedro Alvarez
9e6b852834
lib,rlc_am_nr: Added handle_full_sdu() and handle_segment_sdu() functions. Reduced duplicate code in handling SDU segments.
3 years ago
Pedro Alvarez
8afea13d9a
lib,rlc_am_nr: added initial logic to support receiving PDU segments.
3 years ago
Pedro Alvarez
aae1d9ad10
lib,rlc_am_nr: changed rlc_amd_nr_tx_sdu to use std::list to store
...
segment infomation. Segment infomation incluses, SO and payload length.
3 years ago
Pedro Alvarez
76c33c78a9
lib,rlc_am_nr: starting to add test for segmentation. Starting to add functions for creating new segments and segment continuation.
3 years ago
Pedro Alvarez
3e5b064a08
lib,rlc_am_nr: starting to add build_sdu_segment() function.
...
Also adding write_header function that receives as argument uint8_t* so
we can write the header straight to the payload.
3 years ago
Xavier Arteaga
6c4c1ea155
NR UE PHY: interfaced fix wideband CQI reporting in nr_phy_test
3 years ago
Carlo Galiotto
b359c7b728
sched,nr: add comments and rename variables
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto
0f92869156
rrc,sched: add csi-MeasConfig setup in RRC
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
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
Carlo Galiotto
2040a88bf9
sched: add comments + rename variable
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto
cd32f1385a
sched,test: add test for CQI->MCS mapping fnc
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto
a7255cfac6
sched: add fnc to map CQI to MCS
...
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
Merlin Chlosta
c967b688ff
emergency handler for NAS PCAP to close file
...
Previously NAS PCAP wasn't closed/fflushed on
unclean exit, resulting in missing or corrupted PCAP.
3 years ago
Matan Perelman
0dff58613f
srsUE: Add option to filter N_id_1 / SSS to configuration
3 years ago
Fabian Eckermann
94c2967486
Return correct iterator value.
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
Fabian Eckermann
6252d94ef4
Change NSA RRC reconfiguration interface to prepare for SA.
3 years ago
Fabian Eckermann
affdacd9b4
Add decoding of sib1.
3 years ago
Pedro Alvarez
b425316936
lib,rlc_am_nr: fixed tx_mod_base_nr(). Added unit test for inside_tx_window().
3 years ago
Pedro Alvarez
ab8577ff43
lib,rlc_am_nr: switched back to unsigned rx_mod_base. Removed if that is always true.
3 years ago
Pedro Alvarez
fea7828d3e
lib,rlc_am_nr: added struct to hold state variables. This is consistent
...
with TX and makes it easier to make getter/setters.
3 years ago
Pedro Alvarez
bca9ef2454
lib,rlc_am_nr: made mod_nr configurable
3 years ago
Pedro Alvarez
665aea599c
lib,rlc_am_nr: made sure that the return of rx_mod_base and tx_mod_base is signed by changing from a macro to an class method.
3 years ago
Francisco
9a4a5345c4
nr,gnb,sched: improve sched sanity checks, and improve bwp_pdcch_allocator api
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
Ismael Gomez
3c929ed24c
ue,sa: Sends PRACH and receives RAR, then Msg4, resolves contention resolution and pushes ConnectionSetup to RRC
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
Ismael Gomez
46f4be458a
ue,sa: can sync and receive pbch successfully
3 years ago