957 Commits (6e18bd1c71dfe64416529b6675c42c1ad68f401e)

Author SHA1 Message Date
AlaiaL 82788ca094 Fixed issues from coverity:
- 370233
- 370234
- 370239
- 370240
- 370241
- 370242
- 370243
- 370295
4 years ago
Matan Perelman 7ee52dc676 srsUE: Add option to filter N_id_2 / PSS to configuration 4 years ago
David Rupprecht 102a943171 Fixed naming srsLTE to srsRAN 4 years ago
David Rupprecht fd451e8be3 Configure Short PDCP NR SN support 4 years ago
Xavier Arteaga ab6a5ef17a Added NR DCI conversion to string for formats 1_0 and 1_1 4 years ago
Andre Puschmann e3b77fd82a rrc_nr: set timeout for NR cell measurement to 250ms
the low timout of 10ms was:
1) causing too frequent measurement reports
2) causes a MO ping test to fail where the ICMP request
was sent on the LTE carrier but never got a reply because
the MCG addition was inbetween
4 years ago
Xavier Arteaga 407903e0d6 SRSUE: refactor carrier setting for accepting a dynamic carrier configuration 4 years ago
David Rupprecht d2aa25d451 Added option for simulated measurement 4 years ago
Xavier Arteaga 715f8900a8 Selected NR RA procedure PRACH send timeout according to system frame number period from PRACH PHY tables 4 years ago
Andre Puschmann 4b3538aaa8 {dl,ul}_harq: fix metrics calculation
rewrite  metrics calculation for NR HARQ and remove
unneeded operations.
4 years ago
Andre Puschmann b6f2c80f66 mac_common: add helper method to get total buffer state 4 years ago
David Rupprecht a064e85c54 rename common lte header 4 years ago
David Rupprecht 81ad72b0ff Refactor srb and drb handling 4 years ago
David Rupprecht 91ff8a2e6d Add rrc_nr to rlc init function 4 years ago
Andre Puschmann c8d3e133dc ue: bump default RRC release announced to 15 4 years ago
David Rupprecht 75cd5e65e5 Removed arfcn and freq, and nof_prbs from config file 4 years ago
David Rupprecht f42d4dbc28 Refactored carrier config 4 years ago
Andre Puschmann edd150b29f fix PID not being set when reading pending UL grant
this should fix #2679
4 years ago
Xavier Arteaga 01ce0718be NR-PUSCH RE mapping correction and NR-SCH detailed grant information 4 years ago
David Rupprecht bfe2ad98ef Added parsing for NR DL HARQ cfg 4 years ago
Andre Puschmann b9ae064338 mac_nr: add DL HARQ
this commit adds a complete DL HARQ entity to the MAC of the UE.
It also refactors demux into an own class and adapts the PHY-MAC
interface to use the new MAC capabilities.
4 years ago
David Rupprecht fe8727050b Added new rrc_nr to phy flattening functions and fixes 4 years ago
David Rupprecht 4c68c17bd3 Fixed log level of nr loggers to lte level and hex size 4 years ago
Andre Puschmann 44baea6666 mac_nr: add UL HARQ
this patch adds a basic UL HARQ entity for NR.

The patch also updates some interfaces between MAC/RA/HARQ,
i.e. get_temp_crnti().

It also adds a Msg3 unit test.
4 years ago
Xavier Arteaga b5e879db47 SRSUE: review metrics interfaces 4 years ago
Xavier Arteaga 044da18db9 SRSUE: Reviewed PHY metrics getter 4 years ago
Xavier Arteaga 2f453b43ba Initial NR PHY interface 4 years ago
David Rupprecht eeddbe69ce Fixes repeating proc RA due to SR trigger 4 years ago
David Rupprecht 5a3a2a6d6f Added functions for adding phr and tag config 4 years ago
Francisco f7a8b8bf94 separate drb srb ids into separate enum types 4 years ago
Francisco 21718af3b6 avoid allocating std::string to get lcid radio bearer name. Refactored the lte radio bearer enum type 4 years ago
Andre Puschmann cf696138d3 mac_nr: fix packing order of SDU and CEs
SDUs need to go first in the MAC PDU, followed by CEs
4 years ago
Andre Puschmann 7f415189f3 ue,mac: enable basic MAC metrics
this adds basic MAC metrics calculation for the DL NR MAC
4 years ago
Andre Puschmann db496df1e6 mac_nr: add support for periodic BSR reporting
building on the previous refactor this patch now adds support
for peridoic BSR reporting (using short BSR). It furthermore does
the following changes:

* add BSR packing
* add proc_bsr_nr unit test
* move mac_nr test code into test folder under src (needs to be done with other test code too)
4 years ago
David Rupprecht 56e947bf27 Added functionality for releasing a NR bearer 4 years ago
David Rupprecht cc6d8128ad Added gw interface if it is running 4 years ago
David Rupprecht 7a481c40ab Added mac prach nr proc error handling 4 years ago
David Rupprecht f9ea02b6bf Added functions for rrc reestablishing procedure if nr reconfig failes 4 years ago
David Rupprecht 43ec714ce1 Added functionality for printing nr metrics 4 years ago
Xavier Arteaga db1a1c059c NR PHY workers TTI synchronization between DL and UL work 4 years ago
Xavier Arteaga 991c6e7016 Refactored NR HARQ-ACK feedback enqueue 4 years ago
Xavier Arteaga 49731ab5a1 Initial NR-DCI refactor
Added NR DCI 1_1 size

Several DCI NR fixes
4 years ago
Xavier Arteaga dee2ec30cd SRSUE: use new MAC interface for NR SR procedure 4 years ago
Xavier Arteaga 01990c2e1d SRSUE: Add PHY-MAC SR related interfaces 4 years ago
David Rupprecht 506adca930 Set eutra nr band info based config value 4 years ago
Andre Puschmann d135ae4d29 proc_bsr: initial BSR procedure for NR
* refactor some common methods to mac_common.cc
* add common mux_base class
* move UL PDU generation to mux class
* add logical channel registration to MAC, MUX, BSR
* add initial proc BSR
* add basic MAC NR test
* rework MAC interfaces
4 years ago
Francisco d04a19f8bc refactor - increase code reuse in adt files 4 years ago
Andre Puschmann bde7b49ca3 ue,mac_nr: add basic SR procedure
the current implementation support only one SR config
and doesn't support the prohibit timer
4 years ago
David Rupprecht 8c86d2084d Adding NR phy config RRC parsing
Added error handling

Reworked flattening error handling
4 years ago
Xavier Arteaga 5bdf2c93b3 Initial NR PDSCH CSI-RS RE skip and other changes 4 years ago
Xavier Arteaga 7704c09ce2 Fix typos 4 years ago
Andre Puschmann 1a0891df51 all: check return value of make_byte_buffer() and handle them safely 4 years ago
Codebot 4523ee6087 rename srsLTE to srsRAN 4 years ago
Xavier Arteaga 8c4ed489e8 SRSUE: Disable neighbour cell display by default 4 years ago
Xavier Arteaga 4ae194581f SRSUE: Adjustments in distance and speed estimations 4 years ago
Xavier Arteaga 49a535b81a SRSUE: force printing neighbour cells by default in console trace 4 years ago
Xavier Arteaga 2782d96170 SRSUE: compute speed from TA commands 4 years ago
Francisco 3e9f93eb8a refactor - remove old log_filter and logmap libraries from the codebase 4 years ago
faluco 173dcdd421 - Import latest srslog version.
- Remove string allocs in some log lines in radio.cc.

Add new tracing buffer capcity options into srsenb and srsue.

Add missing file.
4 years ago
faluco c7542daf43 Remove rlc traces and add new ones into tti run functions both in the enb and ue. 4 years ago
Xavier Arteaga 9dffad87f2 Initial UCI bits multiplexing in PUSCH 4 years ago
David Rupprecht bb3e87302d Added new pcap enable option and mac nr 4 years ago
AlaiaL 3a86c210f9 [metrics] Added the system metrics to the ue stdout 4 years ago
Xavier Arteaga 784f4be72e SRSUE: NR CSI report fixes 4 years ago
Xavier Arteaga 4679e9f871 Initial NR CSI reports 4 years ago
Xavier Arteaga 1e55d68b55 Removed set RNTI from API 4 years ago
Francisco 766018f2b4 fix gcc compilation issue 4 years ago
Francisco b329e25bbb move ue phy interfaces to separate interfaces header file 4 years ago
Francisco 13d805ef56 move ue rrc interfaces to separate interfaces header file 4 years ago
Francisco b1706b9197 move ue nas interfaces to separate interfaces header file 4 years ago
Francisco b8bd869d0f move ue rlc interfaces to separate interfaces header file 4 years ago
Francisco a988351f46 move ue pdcp interfaces to separate interfaces header file 4 years ago
Francisco ea04104e8e move ue gw interfaces to separate interfaces header file 4 years ago
Francisco 186285ffd3 move ue usim interfaces to separate interfaces header file 4 years ago
faluco 2328011732 - Remove old loggers in ttcn3 and in NR. 4 years ago
faluco eaf20fa4f3 - Removed some logger injections in the ue app.
- Removed old logger setup code not needed anymore.
4 years ago
faluco 3ce7454105 - Remove old loggers from ue_stack_lte, ue gw.
- Remove old loggers setting up for these classes.
4 years ago
Xavier Arteaga 126fc09b7d SRSUE: Added initial SR procedure for NR 4 years ago
Andre Puschmann 9c4146442a mac,phy: refactor NR MAC/PHY UL data passing interface
inspired by accepted (but not yet merged) PR to include the
(unique_)byte_buffer_t for MAC/PHY interfacing, this patch adds
a few more useful bits to that. Buffer management for UL data is now
done in MAC and only a pointer to the data is passed in the UL action.

* Move Tx softbuffer to MAC (until UL HARQ class is ready)
* Remove temparal data member in cc_worker
* Remove memcpy after packing MAC PDU
4 years ago
David Rupprecht f6f6ee406b SRSUE NR: use correct rnti in rar and make NR proc ra 4 years ago
David Rupprecht 1fcd006a7c fixed segfaulting 4 years ago
Xavier Arteaga b768002a93 SRSUE Added RAR unpacking and other fixes 4 years ago
David Rupprecht 82a8dcc77a Change interface to unique_byte_buffer
logging message for msg3 preparing
4 years ago
David Rupprecht 3af0342418 Added mux class and packing of msg3 4 years ago
Xavier Arteaga 760ad3a746 SRSUE: Interface stack and PHY for NR-RA procedure 4 years ago
David Rupprecht 0f1586dd2d Deleted all HAVE_5GNR in CC and h files
CMakeList and travis yaml
4 years ago
David Rupprecht 1987ddd923 Added phy_nr to ue_stack_lte 4 years ago
Xavier Arteaga fe452fae2b Aesthetical changes scell synchronization class 4 years ago
Xavier Arteaga 326c5bc25e Set secondary Serving cell synchronism bandwidth at cell selection and skip at configuration set-up 4 years ago
Xavier Arteaga 283fc78782 Fix override VNF 4 years ago
Xavier Arteaga 81748c7b1c SRSUE: PHY does not compile NR interface
Fix
4 years ago
Xavier Arteaga bdef411855 SRSUE: Aesthetic changes 4 years ago
Xavier Arteaga 784a33583b SRSUE: Initial NR MAC-PHY interfaces
SRSUE Fix compilation

SRSUE: temporary fixes LTE/NR PHY/Stack interface problem

fix

fix
4 years ago
David Rupprecht 24123313bf Added MAC NR RA procedure with a minimal test case 4 years ago
Xavier Arteaga d807ccc3dd SRSUE: Initial NR-PUCCH HARQ feedback 4 years ago
Xavier Arteaga 818f3ea7c7 Initial NR-PDSCH HARQ-ACK/NACK procedure 4 years ago
Andre Puschmann 6eed6f622f mac_nr: update RA related function in MAC/PHY interface
* expose interface to trigger PRACH from MAC
* indicate PRACH tx from PHY
* add temporary RAR PDU handling with Msg3 grant indication to PHY
4 years ago
Francisco 3265d940ec remove byte buffer pool cached member variables as they are unnecessary now. 4 years ago
Francisco 0c7c317be5 refactor byte_buffer class and move it to separate file 4 years ago
Pedro Alvarez bb0e31feda Reduce log level of SDUs dropped in the stack to info. Added ul_dropped_sdus to stack metrics. 4 years ago
Xavier Arteaga a19671802e Added SRSUE NR-PUSCH initial procedures 4 years ago
David Rupprecht 3dab82c42f Added interface that allows to update the lcid in case of a nr reconfiguration
nr rrc updates gw lcid if reconf was received
4 years ago
faluco 821925a273 - Upgrade to srslog the loggers in lib/mac.
- Adapted users of these classes and tests.
4 years ago
Xavier Arteaga a2d9b436d9 SRSUE: add NR stack to PHY and initial decoded PDU push 4 years ago
Xavier Arteaga e65c145704 SRSUE: Added hard-coded NR-PUSCH resources 4 years ago
Xavier Arteaga 77f0a53abd Added DCI Format 0_0 unpacking and more NR-PUSCH procedures 4 years ago
Xavier Arteaga b150e45129 Renamed NR-PHY state and fix license headers 4 years ago
Andre Puschmann 8e13f04684 mac_pcap: refactor MAC PCAP and include NR RAT into same object
after adding the thread-safe PCAP writer functionality to the EUTRA
MAC object it became clear that we don't wont to replicate the
same for the NR object.

This patch therefore refactors the class that now supports both EUTRA and
NR rats. The old mac_nr_pcap.[h/cc] has been deleted. All test-cases
and usages now use the new object that needs to pass the RAT type in
the ctor.

this patch addresses the last open point of #2160
4 years ago
faluco a7bb3ce7d0 Remove unused variable in vnf_phy_nr. 4 years ago
faluco d37a07a47f Replaced loggers in buffer_pool.h 4 years ago
Andre Puschmann ecf7eaec5c ue_stack_lte: expose MAC NR interface for NSA configs 4 years ago
Xavier Arteaga aaa789f530 Removed unused logger 4 years ago
Xavier Arteaga 92c4a38fc2 Fix logger for NR PHY 4 years ago
Xavier Arteaga 2421f2cd99 Multiple PHY fixes and NR-PHY configuration refactor 4 years ago
Xavier Arteaga b652cd68a5 Refactored NR PHY configuration to accept multiple CORESETs/SearchSpaces 4 years ago
Xavier Arteaga 10a7b63c6a NR-UE PHY transmits PRACH in all oportunities 4 years ago
Andre Puschmann f5c945dc2f mac_nr: add interface to set C-RNTI and contention ID from RRC
used during contention-based/free RA
4 years ago
Andre Puschmann 1aadc5c53e mac_nr: tiny cleanups of MAC class, use of new logger 4 years ago
Andre Puschmann 73cb0dabf2 mac_nr: move UE MAC class into own subfolder
this should simplify further MAC NR extensions and lead
to a more organized folder structure
4 years ago
Andre Puschmann da9e3363f1 mac_pdu_nr: rename MAC PDU class for NR to adhere naming conventions
* mainly to have _nr as trailing name for filename and class
* also add "sch" to class and filename (RAR PDU will have extra class)
4 years ago
faluco 5981469f9f
Upgrade loggers in srsue (#2163)
* Replaced UE logger in the ue class.

* Replaced loggers in the main phy class and prach.

* Replaced loggers in phy common and ta_control.

* Replace loggers in cc and sf workers.

* Replaced loggers in intra_measure, scell_recv, search, sfn_sync, sync.

* Remove last uses of the old loggers in the main phy class.

* Remove stray newline in logs.

* Replaced loggers in ue gw.

* - Started to replace loggers in the ue stack.
- Replaced loggers in usim and pcsc.
- Adapted nas and usim tests.

* Replace loggers in nas.

* Added missing log init calls in two previously modified tests.

* Replaced logger in nas idle procs.

* Replaced loggers in nas emm state.

* Replaced loggers in tft packet filter and adapted tft test.

* Replaced loggers in main RRC class.

* Replaced loggers in RRC cell.

* Replaced loggers in RRC meas.

* Replaced loggers in rrc procedures.

* Started logger replacement in MAC layer, more precisely in demux and dl_harq classes.
Been unable to inject loggers in construction for dl_tb_process due to very weird static assertions in the std::vector code being the type not constructible which is not true, so instead use the main MAC logger directly.

* Replaced loggers in mac mux class.

* Replaced loggers in mac pro_bsr.

* Replaced loggers in mac proc phr.

* Replaced loggers in mac proc SR and RA.

* Replace loggers in mac UL HARQ.

* Replaced loggers in main ue stack class.

* Fixed nas test crashing due to a null string.

* Ported mac_test to use the new loggers.

* Removed TTI reporting for the PHY log as the old logger did.

* Replaced loggers in UE phy tests.

* Configure loggers in nas_test.

* Replaced loggers in rrc_meas_test.

* Replaced loggers in rrc_reconfig_test.

* Added missing newline in tft_test.

* Fix compilation errors in TTCN3 tests.

* Fix linker error detected in CI and warning.

* Replaced loggers in TTCN3 tests.

* Fix a text replace error in some log messages.

* Remove trailing newlines from log entries.

* Remove old logger from rrc.

* Flush backend before printing the test status.

* - Fix compilation error from previous rebase.
- Remove trailing newlines from some missing log entries.
4 years ago
Andre Puschmann 4709bacefd srsue: add DL NR-ARFCN param
* add PHY param to set DL NR-ARFCN
* use new band_helper class to convert ARFCNs to supported bands
* signal supported NR bands in UE capabilities
4 years ago
David Rupprecht 9ccc36d4fa Make fake measurement frequency depend on measurement config 4 years ago
David Rupprecht 1b19ee40e7 Added usim features for key derivation 4 years ago
David Rupprecht ceda458bb3 Added MAC NR to EUTRA and NR with stack interfaces including MAC config build
Moved MAC logical channel config to MAC interface types
4 years ago
David Rupprecht e0420049e3 Build infrastucture for reconfig 4 years ago
David Rupprecht 64299960bd Added procedure for NR reconfiguration and RRC with NR complete 4 years ago
Xavier Arteaga 2baccc8b13 Set NR-PDSCH default table to 256QAM 4 years ago
Xavier Arteaga 3ee667c4a5 SRSUE: added NR-PDSCH constellation in GUI 4 years ago
Xavier Arteaga 59114206ae SRSUE: Unify PRACH reconfiguration conditions 4 years ago
Andre Puschmann a09fb95c25 proc_ra: protect RA procedure from concurrent thread access
that patch addreses issue #2199 by defering RA-related calls that
are executed from within PHY workers.

The time-critical bits of more complex functions such as tb_decoded()
are still executed in the PHY worker thread but the state machine
manipulation is defered.
4 years ago
Ismael Gomez a6423442c2
Refactor NR RA files and fix header includes all over library (#2162)
* Refactor NR resource allocation classes. Use DCI instead of grant for dummy PDSCH UE/eNB test

* Minor refactors in NR workers and ue_dl

* Fix include issues

* fix compilation issues
4 years ago
David Rupprecht 1a10c783b5 Faking measurements 4 years ago
David Rupprecht f7d313147a Added infrastrukture for measurements
Init rrc_nr as part of the LTE stack
4 years ago
David Rupprecht 4305929ec7 Hardcoded NR/MRDC-Capabilities 4 years ago
David Rupprecht b79eef0860 Introducing nr_rrc <-> rrc interface for eutra and nr cap query 4 years ago
David Rupprecht 9eb0b72cb4 Added rrc function has_nr_dc 4 years ago
Andre Puschmann 37fc1c59e3 fix DRB release logging
this caused wrong logs because the LCID was printed based on the assumption
that the DRB LCID is alwasy 2 + drb ID

Use drb_id as drb_cfg key
4 years ago
Xavier Arteaga b3200d9ef5 Renaming common UL/DL DMRS related types and initial NR PUSCH implementation 4 years ago
Xavier Arteaga 909e5de34f Fix NR workers 4 years ago
Andre Puschmann c8801578df gw: use std::chrono for metrics and fix nan display
* replace gettimeofday with std::chrono
* fix nan printing when nof_tti is zero (at startup)
4 years ago
David Rupprecht 81609d48dd Added measurment report for interrat nr15
Added function for removing interrat triggers
4 years ago
David Rupprecht 5df2fb1fa1 Added rrc has nr neighbour cells 4 years ago
David Rupprecht 0e4d77da76 Refactor eutra reporting code and add report triggers for inter rat measurements 4 years ago
David Rupprecht e4e67eebce Added infrastucture to process measurments and evaluate interrat triggers 4 years ago
David Rupprecht 25e5b88704 Added NR range_to_value function and debug logging for measurements 4 years ago
David Rupprecht ce4526a935 Extended measurements interrat nr r15 testcase with measurements 4 years ago
David Rupprecht 826dd32c89 Rename meas_cell to meas_cell_eutra
Added meas_cell_nr class

Make meas_cell list as template class

Inheritance rrc_cell to meas_cell_nr
Added process_new_cell_meas_nr function
4 years ago
David Rupprecht 62b558fccf Move rat type to common header
Removed phy measurement from rrc interface phy

Updated rrc interface for handling measurements
4 years ago
David Rupprecht 848496bb0f Moved get_earfcn to srslte get_carrier_freq func 4 years ago