Francisco Paisana
46e1e101d3
removal of unecessary ho_ra_complete(false) in mac. In case of HO failure, the rrc should let the t304 expire
4 years ago
Francisco Paisana
aed9120458
in case of RA problem during handover, the UE cannot trigger RLF. It has to let t304 expire, which will then trigger the reestablishment procedure with the right cause
4 years ago
Francisco Paisana
fca1273b3e
avoid spurious warnings of trying to start the PRACH when it is already running during handover
4 years ago
Francisco Paisana
fddcc3d8ea
In the case of Handover, postpone the activation of the CQI and SR config present in the HO command for after the RA proc completion to the target eNB
4 years ago
Andre Puschmann
49a7a90698
mac: simplify BSR packing logic
...
simplify logic to check whether a BSR fits and, if so, which type.
before the check has been done in two places.
we now also accomodate for the CE subheader size.
4 years ago
Andre Puschmann
6364a4513c
mac_pdu: fix issue when packing CE but no space left in PDU
...
we've not checked the return value when adding a new CE, like BSR or PHR,
for a UL MAC PDU. For very small UL grants, this could fail and
we need to remove the subheader again before packing the PDU.
This fixes issue #1649 .
4 years ago
Francisco Paisana
5242f9422b
fix deadlock in handover
4 years ago
Ismael Gomez
72cc4e0ca5
Stop ContentionResolutionTimer on RA error. Updated test
4 years ago
Xavier Arteaga
df2c949417
Radio: add individual Rx gain and integrate in srsue
...
Fix compilation
Fix compilation
Add missing variable. Wasn't compiling
Radio: revert some changes
4 years ago
Xavier Arteaga
029f36b449
srsLTE: added efficient integer resampler and srsue/srsenb integration
4 years ago
Xavier Arteaga
1ff74da078
Remove wrong error message
4 years ago
Francisco Paisana
75b204bc52
fix phy ctrl call to cell selection observers
4 years ago
Francisco Paisana
834c0b3929
integrated new observer pattern into phy controller fsm
4 years ago
Francisco Paisana
48dd436d86
integrated observer pattern into rrc phy ctrl fsm
4 years ago
Francisco Paisana
997552ee45
stop t304 when handover is successful
4 years ago
Francisco Paisana
1d8286eb62
always wait for t304 to expire in case of failed handover
4 years ago
Francisco Paisana
ccc8ab70ef
stop t304 on handover procedure exit
4 years ago
Francisco Paisana
db15f43a77
set reestablishment cause correctly on handover failure
4 years ago
Francisco Paisana
b1670c005b
remove shadowed variables for reestablishment during handover
4 years ago
Xavier Arteaga
0e96ef3df0
Channel emulator takes SNR as input parameter
4 years ago
Francisco Paisana
8c9e596f89
refactored s1ap handover request interface. cleaned up rrc tenb s1 handover code
4 years ago
Francisco Paisana
7cd4f45d62
fsm refactor.
...
- avoid triggering directly a subfsm
- improved metafunctions
- other cleanups
4 years ago
Francisco Paisana
841b884796
remove extern C flags from common_helper.h
4 years ago
Francisco Paisana
5be5409f62
scaling governor function moved to common header file
4 years ago
Francisco Paisana
087805d222
add warning if scaling governor is not performance mode
4 years ago
Francisco Paisana
8d10aa906e
move defer_task to switch case in the rrc
4 years ago
Andre Puschmann
24dfb03b9d
rrc: defer manipulations of the RLC/PDCP arrays
...
all calls that manipulate the RLC and/or PDCP arrays suffer
from a high deadlock risk if a PHY worker holds the RLC
AM Rx mutex at the same time when the stack wants to carry
out this reconfiguration.
this applies to RRC Reconfigs, but potentially also to RRC Connection
Reestablishment or even RRC Connection Setup, although this should
seldom be the case.
By breaking the call stack between RLC->PDCP->RRC->RCL and
carrying out the reconfig as a single task without holding the
RLC readlock the deadlock should not happen anymore.
This should fix issue #1593
4 years ago
Xavier Arteaga
202ec283ff
SRSUE: fix erroneous code in MUX
5 years ago
Xavier Arteaga
4e1e8cea1a
SRSUE: MAC HARQ entities vector is fixed
5 years ago
Xavier Arteaga
09af743361
SRSUE: minor PHY modfifications
5 years ago
Xavier Arteaga
0b02f8948c
SRSUE: fix shadow variable
5 years ago
Ismael Gomez
c02e920b6b
Trigger RA after SR failed directly (don't wait for next BSR trigger)
5 years ago
faluco
efdff8ba4c
Import srslog into srsue ( #1556 )
...
- Import the srslog project into srslte.
- Ported srsue app to use the new logging framework.
- Implemented a wrapper that dispatches log entries to srslog.
- Renamed an existing log test to be more specific to avoid name clashes.
5 years ago
Andre Puschmann
9550bd3ef8
rlc: revisit interface for MAC and RRC
...
* add locked and unlocked version of has_data() since one is
called from stack and one from PHY threads
* add comments in each interface section as to why locking
is required or not
* remove RLC rwlock when not required
* move calls only used by RRC to RRC section
5 years ago
Pedro Alvarez
c686e6cea1
SRSUE: Set SCell configuration is unlocking ( #1544 )
5 years ago
Ismael Gomez
06eba7eb72
Discard cells if not found during cel selection
5 years ago
Andre Puschmann
138ec1f8e7
nas,usim: remove use of shadowed variables
5 years ago
Ismael Gomez
7866f19f6b
Use correct target cell when doing reselection in HO
5 years ago
Ismael Gomez
443dee7035
Changes in Cell Selection Procedure ( #1557 )
...
* Fixes RRC cell reselection procedure
5 years ago
Xavier Arteaga
0192130742
SRSUE/SRSENB: UCI bits are carrier by the lowest serving cell index
...
SRSENB: Fix UCI in lowest serving cell index PUSCH transmission
5 years ago
Francisco Paisana
4fb8011a6d
updated phy controller to use task scheduler
5 years ago
Francisco Paisana
36fc88d2e2
fsm log macros, and utility methods to convert event callbacks to move tasks
5 years ago
Francisco Paisana
9c5471b094
more ergonomic event callback
5 years ago
Francisco Paisana
58a9610efa
use of stack event loop to propagate cell search and selection results
5 years ago
Francisco Paisana
d48a45976e
moved cell selection/search complete event signalling out of phy_controller
5 years ago
Francisco Paisana
48138b5281
removal of phy cell selection procedure as it now it is replaced by phy controller
5 years ago
Francisco Paisana
489969722e
implemented phy controller FSM to perform cell selection & search. The controller also tracks the phy sync state
5 years ago
Andre Puschmann
a7911f0dab
pdcp,rlc: refactor SDU queueing policy
...
this patch refactors the SDU queuing and dropping policy of the RLC and PDCP layer.
the previous design had issues when packets have been generated at a higher
rate above the PDCP than they could be consumed below the RLC.
When the RLC SDU queues were full, we allowed two policies, one to block on the write
and the other to drop the SDU. Both options are not ideal because they either
lead to a blocking stack thread or to lost PDCP PDUs.
To avoid this, this patch makes the following changes:
* PDCP monitors RLC's SDU queue and drops packets on its north-bound SAP if queues are full
* a new method sdu_queue_is_full() has been added to the RLC interface for PDCP
* remove blocking write from pdcp and rlc write_sdu() interface
* all writes into queues need to be non-blocking
* if Tx queues are overflowing, SDUs are dropped above PDCP, not RLC
* log warning if RLC still needs to drop SDUs
* this case should be avoided with the monitoring mechanism
5 years ago
Francisco Paisana
5e06430455
removal of stack handler interface
5 years ago
Francisco Paisana
7c364070ee
creation of task scheduler interface for classes/functions running outside the main control thread
5 years ago
Francisco Paisana
1a9c04bf2f
use of task scheduler handle in pdcp
5 years ago
Francisco Paisana
4f5e65781f
created task scheduler class to deal with timers, thread pool, multiqueue, internal tasks
5 years ago
Francisco Paisana
8c920837d6
fix issue when adding neighbour cell that matches serving cell
5 years ago
Francisco Paisana
43db9b81fb
fix function ptr issue
5 years ago
Francisco Paisana
d746115130
moved serving cell to meas_cell_list
5 years ago
Francisco Paisana
928459408e
fix cell meas sorting issue
5 years ago
Francisco Paisana
d2dd30c8cb
rrc_meas_test failing
5 years ago
Francisco Paisana
9a1f69113f
created class for managing neighbor cells of rrc
5 years ago
Francisco Paisana
069dc1f751
moved cell struct of srsue::rrc to separate file
5 years ago
Andre Puschmann
1e4eae7395
nas: log estimated count instead of local rx_count when logging integrity check result
5 years ago
Francisco Paisana
08f9801c76
remove requirement for rrc to be idle and nas attached to run reselection
5 years ago
Francisco Paisana
d12b037e0d
make cell reselection periodic and with period of 20msec
5 years ago
Francisco Paisana
c6f422d23e
improved cell selection test in srsue::rrc
5 years ago
Francisco Paisana
3b1f2719dd
return error from cell selection if unable to select serving cell
5 years ago
Francisco Paisana
3e016b8095
select serving cell during cell selection if it is stronger than neighbors
5 years ago
Pedro Alvarez
772ab89391
srsUE: Fix for NAS overflow counter computation.
5 years ago
Ismael Gomez
0382933cb1
Select serving cell if PHY not in sync
5 years ago
Francisco Paisana
d7a0fe4060
improve log messages for CA
5 years ago
Andre Puschmann
a5c0f96fa7
srsue: limit sync queue length to 1 for ZMQ radio
...
apply same change that we've done on the eNB also on the UE
to avoid the PHY processing TTIs faster than the stack.
Without that, we see lots of those in the logs:
...
08:39:17.580325 [STCK] [W] Detected slow task processing (sync_queue_len=7).
...
5 years ago
Andre Puschmann
cf12c98630
srsue: exit early if radio can't be initialized
...
since the radio is the first component we initialize, it is safe to
exit the ue::init() straight away, as no other layers use any handles yet
5 years ago
Andre Puschmann
e981d5ee70
rrc,ue: refactor wait conditions before transition to RRC idle
...
before entering RRC idle, after receiving a RRC connection release for example,
we need to wait until the RLC for SRB1 or SRB2 have been flushed, i.e.
the RLC has acknowledged the reception of the message.
Previously we have only waited for SRB1 but the message can also be received on SRB2
and in this case both bearers need to be checked.
The method is now streamlined to check both SRBs and is also used when
checking the msg transmission of an detach request.
5 years ago
Xavier Arteaga
2f0c38fc70
SRSUE: avoid deadlock while configuring cell from stack
5 years ago
Francisco Paisana
a0606669e2
fix ue nr gw initialization
5 years ago
Francisco Paisana
fddcbc9879
fix vnf-ue stack interface
5 years ago
Andre Puschmann
aca307b79b
ue,rrc: don't log neighbor list in info mode
...
this floods the info log
5 years ago
Francisco Paisana
d7138b7752
fix nr activation guards
5 years ago
Ismael Gomez
29e126a583
Add per-channel TX gain ( #1450 )
...
* Change type of rf_set_gain() to avoid unambiguous return with negative gains
* Add per-channel TX gain
5 years ago
Francisco Paisana
ddff68a546
add ifdef guards for NR code
5 years ago
Francisco Paisana
6735199728
fix nr optional linking
5 years ago
Francisco Paisana
f0874b780b
add radio_base/null classes
5 years ago
Xavier Arteaga
0e415260e9
SRSUE: scell_sync vector changed to map
5 years ago
Xavier Arteaga
e0e8405285
SRSUE: initial scell sync
...
SRSUE: SCell Synch feedbacks delay
SRSUE: Implemented SCell Radio offset correction
5 years ago
Francisco Paisana
a42c20b73d
preemptive transmission of the rrc reconf complete
5 years ago
Ismael Gomez
54b331c504
Adds best neighbour to CSV and stdout metrics ( #1440 )
5 years ago
Xavier Arteaga
65a603f522
SRSUE: minor AGC code readability improvement
5 years ago
Xavier Arteaga
f04cf2090a
Integrates number of samples in radio buffer
...
Fix minor issue
Radio: Fix minor bug and add unit test
5 years ago
Xavier Arteaga
de230826b9
Added string helper for removing spaces and parsing list
...
Fix
Fix string parser
5 years ago
Xavier Arteaga
89b24b54e5
Refactored radio class for acommodating multiple RF devices
5 years ago
Andre Puschmann
d1cb5531d6
demux: fix typo
5 years ago
Andre Puschmann
c71d6b9204
ue,rrc: improve error message when cell selection fails due to missing SIBs
5 years ago
Francisco Paisana
057980d1fb
use common log helper macros
5 years ago
Francisco Paisana
27e5d98ef9
added vnf phy nr
5 years ago
Pedro Alvarez
396dc82b98
Swapped resume with reestablish in the UE.
5 years ago
Xavier Arteaga
0e5704731e
Removed UHD unrelated changes
5 years ago
Xavier Arteaga
cd463d1b87
UHD: Initial C++ porting
...
UHD: cmakefix
x3
5 years ago
Andre Puschmann
8512c10286
create simple helper method to log command line arguments
5 years ago
Ismael Gomez
84b84eaad6
Move search_in_common variable
5 years ago
Ismael Gomez
9b634b8d2a
Search DCI in UE space before common to avoid DCI size ambiguity. Fixes #1398
5 years ago
Francisco Paisana
17cd3a02cb
fix pcch error message
5 years ago
Francisco Paisana
877dee2ba8
fix use of phy cell select procedure
5 years ago