Andre Puschmann
aaffdeb326
rrc,rlc: add method to signal protocol failure to RRC
...
general-purpose method for lower layers to signal protocol
failures to higher layers, i.e. RRC.
In the current case, implement a direct release of the UE (enb) or
a reestablishment (UE).
4 years ago
Francisco
486823e5de
sched,bugfix: The PHR handling scheme now considers the number of PRBs of the UL grant that carried the PHR. Before, it was assuming the most conservative scenario of Nprb=1
4 years ago
Xavier Arteaga
d74f70289e
SRSUE: fix last reported RI state
4 years ago
Andre Puschmann
b0a2f31478
prach: protect configuration and state getters with mutex
...
purely TSAN with unit-test based approach that protects
the state getters and configuration routines with a mutex
4 years ago
Andre Puschmann
d2ec3ca5e1
intra_measure_base: fix race detected with TSAN
...
use mutex to protect state getters
4 years ago
Andre Puschmann
98a91a2057
sync: protect sync_state, access ue_sync object only from one thread
...
races detected with TSAN, primarily the ue_sync object which isn't
thread-safe is accessed by all workers to set the CFO and by the
sync thread to receive samples (which read the CFO).
The patch introduces shadow variables that are updates from the
main thread before/after the sync is executed. The atomic shadow
variables can then be read from otherthreads without holding a
mutex, i.e. blocking the sync.
4 years ago
Andre Puschmann
2c975732dc
metrics_stdout: fix race detected by TSAN
4 years ago
Andre Puschmann
018c734b09
dl_harq: fix unlocking of unlocked mutex bug detected by TSAN
...
in the mac_test the tb_decoded() method was called twice for
the 2nd codeword, causig TSAN to complain about an unlocked mutex
being unlocked.
The patch resolves the potential issue only calling tb_decoded
for a grant/tb thas has a non-zero MCS.
The patch also adjusts the reset function to have a safe and "unsafe"
version to be called from inside the class, similar to other
classes where we do the same.
4 years ago
Xavier Arteaga
5c55ff24ec
Minor UE aesthetical changes
4 years ago
Xavier Arteaga
44b6a2b55f
Fix SYNC wait for IDLE if the state is reached
4 years ago
Xavier Arteaga
807b60988d
Wait for PHY workers to transmit before considering SYNC in IDLE
4 years ago
Xavier Arteaga
7185ec6beb
PHY CC configuration is stashed and applied in the next TTI
4 years ago
Xavier Arteaga
235a664120
SRSUE: Removed PUSCH-DMRS/SRS pregeneration methods
4 years ago
Xavier Arteaga
cc2a6dc269
Review cell selection and SCell configuration during HO
4 years ago
Xavier Arteaga
65d51f5855
Fix unitialised value
4 years ago
Andre Puschmann
b40867ffec
ue,rrc: add simple connection setup procedure
...
this is an attempt to fix #2850 by defering the transmission of
the connection setup complete until the PHY has applied
the dedicated config in the connection setup.
4 years ago
yagoda
9501283c1c
fixing support for extended Cyclic Prefix
...
small cosmetic fixes of CP code
4 years ago
Xavier Arteaga
5eadc06dd4
Intra-frequency miscellanous changes
4 years ago
Xavier Arteaga
170fbefbf5
Avoid SCell receiver to copy
4 years ago
Xavier Arteaga
d39402ed54
Added TTI trigger condition to intra-frequency measurement base
4 years ago
Xavier Arteaga
ac9dc6f31d
Compute Performance
4 years ago
Xavier Arteaga
fb7623f5b6
Initial intra frequency NR cell search and test
4 years ago
Xavier Arteaga
60015e7ceb
Made intra frequency cell search and measurment generic
4 years ago
faluco
1670124926
Implement UE metrics in JSON format.
...
Added config options to control this feature.
4 years ago
Xavier Arteaga
a57336d64f
Integrate periodic SSB measurement in SRSUE and fix related defects
4 years ago
Xavier Arteaga
1396c2a1e2
Mulpiple CSI measurement fixes. Channel and sync metrics from CSI measurements
4 years ago
Xavier Arteaga
653177ca7c
SRSUE: Refactored work_dl for NR. Added NZP-CSI-RS measurement
4 years ago
David Rupprecht
8c194b887b
Allow NAS init function to fail
4 years ago
David Rupprecht
617fb2ba7e
Added default destructor for args
4 years ago
faluco
90e23d9de6
Print in the ue stdout metrics the CC number for LTE and the RAT for NR.
4 years ago
faluco
b9be7c7594
Small cleanup in the stdout UE metrics.
...
- Switch to use fmt for formatting the output.
- Change the CC column to be rat now.
- Reworked and re-styled the column alignment.
4 years ago
Andre Puschmann
598594c51a
all: bunch of pass by const& changes suggested by LGTM
4 years ago
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