Francisco Paisana
1393bd11fa
avoid using PUCCH for SCell DL allocations
2020-06-10 22:22:41 +01:00
Francisco Paisana
d859c33035
added check for UCI collision during DL scheduling for CA
2020-06-10 22:22:41 +01:00
Francisco Paisana
53b85691b5
moved sf result to sched class. This way each carrier has a view to the results of the remaining carriers in the same subframe
2020-06-10 22:22:41 +01:00
Francisco Paisana
5d33acdb53
changed name of sched_ue_carrier class
2020-06-10 22:22:41 +01:00
Ismael Gomez
60b5fb9a74
Refactor variable name
2020-06-10 21:30:39 +02:00
Ismael Gomez
edb1fcc892
srsENB: Apply new PUCCH configuration when setting dedicated config
2020-06-10 21:30:39 +02:00
Pedro Alvarez
9df40c3af0
Added debug GTPU print.
2020-06-10 15:08:32 +01:00
Andre Puschmann
8512c10286
create simple helper method to log command line arguments
2020-06-09 20:55:38 +02:00
Andre Puschmann
db7478e9f0
enb: fix eNB shutdown if layers cant be initialized
...
this fixed #1392 which ocurrured because we were going on with the eNB
init even if the radio failed to initialize
2020-06-08 10:25:42 +02:00
Xavier Arteaga
039f2164a6
Initial Sounding Reference Signals implementation
2020-06-08 09:33:51 +02:00
Francisco Paisana
857c4de420
extended handover test to check for correct SR/CQI resource setup
2020-06-06 12:16:00 +01:00
Francisco Paisana
7ce23e0afb
extend handover intraenb handover fsm to account for multiple C-RNTI CEs
2020-06-06 12:16:00 +01:00
Francisco Paisana
b843585abc
add srsgnb stack class
2020-06-05 15:10:11 +01:00
Francisco Paisana
f5174415f8
add srsenb::sdap class
2020-06-05 15:10:11 +01:00
Francisco Paisana
613003ac53
add srsenb::rrc class
2020-06-05 15:10:11 +01:00
Francisco Paisana
0916e29de4
add srsenb::rlc_nr class
2020-06-05 15:10:11 +01:00
Francisco Paisana
9001117b2d
add srsenb::pdcp_nr class
2020-06-05 15:10:11 +01:00
Xavier Arteaga
6398cd841d
SRSENB: PHY reports MAC all UL grants
2020-06-05 10:47:34 +02:00
Xavier Arteaga
fbce38dc27
SRSENB: PHY tries to remove always the RNTI in PHY-lib. No error messages prompted.
2020-06-03 19:19:33 +02:00
Francisco Paisana
6908e0fab1
disabled all UL in the MAC during handover, including scheduling requests
2020-06-03 11:28:44 +01:00
Pedro Alvarez
960c0e97cd
Added handling of RRC re-establishment to srsENB.
...
* Added the appropriate code for handling and sending the
re-establishment procedure messages to rrc_ue.c/.h.
* Triggered RRC reconfiguration after the reception of RRC
re-establishment complete
* Refreshed K_eNB at the reception of re-establishment
request
* Changed the mapping of TEIDs to RNTIs in the GTP-U layer,
as the RNTI might change with reestablishment.
2020-06-02 11:19:17 +01:00
Francisco Paisana
452c043370
created a global map of lcids to srbs/drbs for NR
2020-05-29 14:11:23 +01:00
Francisco Paisana
6a164e032d
added srsue::rrc_nr
2020-05-29 14:11:23 +01:00
Francisco Paisana
43635c3fa1
added cqi cfg to handover command
2020-05-26 14:46:41 +01:00
Francisco Paisana
026628a84f
use of reestablishment method to reset the RLC bearers during handover
2020-05-26 14:46:41 +01:00
Ismael Gomez
6a19a19f00
Fix memory fault during exiting and waiting for worker
2020-05-26 14:55:37 +02:00
Francisco Paisana
9a0ea6e08c
use log_helper for log macros
2020-05-26 10:02:08 +01:00
Francisco Paisana
edba7f57e4
corrected mac_nr_pdu includes
2020-05-26 10:02:08 +01:00
Francisco Paisana
d7b35ba7d1
added nr mac
2020-05-26 10:02:08 +01:00
Andre Puschmann
a0e4b18507
enb_mac: pre-allocate UE object for quicker PRACH/RAR handling
...
we've seen long delays in handling PRACH on low-power devices
such as the RPi4. This was mainly caused by long delays
in creating the UE object on the fly during PRACH handling.
This patch pre-allocates one UE object that is then used
during the PRACH.
2020-05-25 13:12:19 +02:00
Ismael Gomez
270c7ce9dc
Separate PHY interface to add rnti and pregenerate sequences. Calculate the sequences on the reception of ConnectionSetup instead of PRACH
2020-05-25 13:12:19 +02:00
Francisco Paisana
d36ae722d5
added extra debug logs
2020-05-22 16:46:42 +01:00
Ismael Gomez
a1f0f8de35
Add callback to RLC to indicate BSR for TX and reTX queues (used in ENB) ( #1361 )
2020-05-22 11:20:33 +02:00
Francisco Paisana
860174a819
remove comment and changed handover_type enum
2020-05-21 16:45:16 +01:00
Francisco Paisana
b37923312e
added intraenb handover fsm and respective test
2020-05-21 16:45:16 +01:00
Francisco Paisana
65ef16c7f1
void sending rrc connection release as msg4
2020-05-20 18:43:46 +01:00
Francisco Paisana
61680d64d7
move rrc::ue to separate file
2020-05-19 18:54:55 +01:00
Xavier Arteaga
9d5c2d70df
SRSENB: Fix PHY reconfiguration for HO
...
Minimal aesthetic change
2020-05-19 16:38:55 +02:00
Francisco Paisana
7713df2cf9
fix fixed mcs issue
2020-05-15 14:29:17 +01:00
Pedro Alvarez
51f8ba60da
Make MBMS MCS configurable for the eNB.
2020-05-15 10:58:42 +01:00
Francisco Paisana
04961148e9
removed old code to compute meas obj diffs
2020-05-14 20:51:16 +01:00
Francisco Paisana
b8339031f6
updated code for crnti update during handover and reset of the mac
2020-05-14 20:51:16 +01:00
Francisco Paisana
45cd893e21
update handover test
2020-05-14 20:51:16 +01:00
Francisco Paisana
e8aff22e1b
using new rrc obj id util methods in handover code
2020-05-14 20:51:16 +01:00
Francisco Paisana
f43985b6cd
small updates for testing handover and configuring the rrc
2020-05-13 21:02:53 +01:00
Francisco Paisana
f2af447b1a
use of unique_byte_buffer for sib scheduling to allow for padding
2020-05-13 14:38:21 +01:00
Francisco Paisana
598bad1f0e
changed rrc ue cfg files names
2020-05-13 12:39:58 +01:00
Francisco Paisana
ea5ba93f25
changed file names
2020-05-12 21:04:57 +01:00
Francisco Paisana
ad03d7caf7
move position of security cfg
2020-05-12 17:28:11 +01:00
Francisco Paisana
d43448e8a1
created security cfg handling class for rrc ue and refactor bearer_list handling
2020-05-12 17:28:11 +01:00
Francisco Paisana
09cafaa4bb
update ded_info_nas_list handling
2020-05-12 14:17:57 +01:00
Francisco Paisana
2e4e22dc68
revert clang-format change
2020-05-12 14:17:57 +01:00
Francisco Paisana
1ac91f2f93
updated erab_setup_test
2020-05-12 14:17:57 +01:00
Francisco Paisana
0515229240
perform mac bearer addiction via the bearer handler class
2020-05-12 14:17:57 +01:00
Francisco Paisana
6bcb5910c9
usage of new bearer list cfg class for srb1/srb2 setup
2020-05-12 14:17:57 +01:00
Francisco Paisana
ca0db7fffe
created generic methods to apply toaddmodlist and removelists.
2020-05-12 14:17:57 +01:00
Francisco Paisana
c65c081b51
created separate files to handle rrc bearers
2020-05-12 14:17:57 +01:00
Francisco Paisana
dbcaec6689
avoid dangling reference
2020-05-11 12:44:08 +01:00
Francisco Paisana
71520d681a
changes in pucch res allocation api to allow replacing p/scells
2020-05-11 12:44:08 +01:00
Andre Puschmann
c892ae56be
rrc_cell_cfg: fix potential div by zero
...
similar fix has been applied for SR resources
2020-05-09 14:01:34 +02:00
Andre Puschmann
248e2b5f7e
rrc: fix potential division by zero
2020-05-08 14:15:10 +02:00
Xavier Arteaga
b11ffaee7e
SRSENB: fix channel emulator for multiple channels
2020-05-07 13:09:46 +02:00
yagoda
210eae8e7e
fixing small rr.conf config error
2020-05-06 11:33:39 +02:00
Francisco Paisana
aab989022d
avoid forward declarations
2020-05-05 17:33:03 +01:00
Francisco Paisana
08e1f01c72
allocation of the sr/cqi/pucch_cs resources takes place at a frequency basis now
2020-05-05 17:33:03 +01:00
Francisco Paisana
ee994468f7
separate sr and pucch_cs allocation from rrc class
2020-05-05 17:33:03 +01:00
Francisco Paisana
b16c7c1cfa
created separate cqi res allocation types
2020-05-05 17:33:03 +01:00
Francisco Paisana
4b525127c9
created separate cell ctxt common list
2020-05-05 17:33:03 +01:00
Francisco Paisana
3c29bce014
apply segmentation break check to newtxs only. Allow configurable cqi
2020-05-05 14:35:40 +01:00
Francisco Paisana
c75e31db03
added random cqi to sched tester
2020-05-05 14:35:40 +01:00
Francisco Paisana
500a7f6357
created new separate ue class in sched tester to handle acks and harq tests
2020-05-05 14:35:40 +01:00
Pedro Alvarez
2ea78c8feb
Added configuration options for stack logging.
2020-05-05 14:34:47 +01:00
yagoda
3f99e40159
-changing rlc so that mrb is never removed when going to idle
...
-adding metric counting to eMBMS MAC so that the count is not lost during eMBMS subframes
2020-05-04 17:50:57 +02:00
Xavier Arteaga
d94078d543
Minor changes
...
Fix UE sequence generation
minor change
2020-05-01 21:07:33 +02:00
yagoda
94f62b54ad
fixing some bugs in embms with new stack and cc scheduler in enodeb
2020-05-01 21:06:26 +02:00
Ismael Gomez
8c82203c74
Removed unused pregenerate option
2020-05-01 21:05:00 +02:00
Andre Puschmann
8d7a336bee
enb: fix ok/nok packets
...
fix ok/nok counter, since we do not count the correctly
decoded packets explicitly, we need to calculate them from
the total number of pkts minus the failed pkts to avoid this:
------DL--------------------------------UL------------------------------------
rnti cqi ri mcs brate ok nok (%) snr phr mcs brate ok nok (%) bsr
46 6.2 0 0.0 0 0 0 0% 0.11 0.00.10 0 900 900 100% 15.3k
46 7.9 0 0.0 504 1 0 0% 0.11 0.00.10 0 900 900 100% 15.3k
2020-05-01 11:05:19 +02:00
Francisco Paisana
b69b274c63
comment removed
2020-04-30 18:34:25 +01:00
Francisco Paisana
6f02c067b3
fix cell ptr assignment
2020-04-30 18:34:25 +01:00
Francisco Paisana
5ef6031b44
added ability to use single-carrier if we are unable to allocate resources for the scells
2020-04-30 18:34:25 +01:00
Francisco Paisana
439193e4b0
added code to handle fail to alloc ue cqi and sr
2020-04-30 13:19:11 +01:00
Xavier Arteaga
f200c01566
SRSENB: PUSCH EVM measure is optional and disabled by default
2020-04-29 21:11:30 +02:00
Pedro Alvarez
6a65cb0624
Accept both decimal and hexadecimal for enb_id
2020-04-29 21:02:15 +02:00
Francisco Paisana
5f4b0b1e0c
added default sf_mapping for cqi and sr in the enb parser
2020-04-29 12:30:44 +01:00
Francisco Paisana
de4d58d8fe
fix coverity scan issues in master
2020-04-29 11:17:00 +02:00
Ismael Gomez
485771749e
Allocate Scell resources when creating it rather than at UE creation
2020-04-29 10:11:43 +01:00
Ismael Gomez
c0054140e9
Configure properly PUCCH CS mode for CA in ConnectionReconfiguration. Allocate n_pucch_cs resource and cqi/sr at rrc::ue constructor
2020-04-29 10:11:43 +01:00
Francisco Paisana
0fc36d44d7
disable handover altogether to avoid crash
2020-04-28 14:57:49 +01:00
yagoda
faf1cf6975
limiting prach search space to number of prachs set in sib2
2020-04-28 14:40:20 +02:00
Francisco Paisana
12b2ea7dde
remove warnings for base classes with no virtual dtors
2020-04-27 22:19:08 +01:00
Francisco Paisana
b8e6ba02e4
remove warnings related to unused vars and fwd declarations with trivial dtors
2020-04-27 22:19:08 +01:00
Xavier Arteaga
d7e7399e7b
srsENB: PHY configuration in two stages
2020-04-27 21:03:44 +02:00
Xavier Arteaga
1bbf1caabc
Reverted PUCCH3 default CA DL HARQ method
2020-04-27 21:03:44 +02:00
Xavier Arteaga
b9583d4182
Fix Extended CSI request bits in DCI
2020-04-27 21:03:44 +02:00
Xavier Arteaga
a59884a14a
SRSENB: configure PUCCH3 as default HARQ feedback for CA
2020-04-27 21:03:44 +02:00
yagoda
8e0b106c22
fixing some warnings from LGTM
2020-04-27 20:59:40 +02:00
Pedro Alvarez
218531b418
Making sure the eNB only sends S1AP context release requests if it has a MME-UE-S1AP-ID assigned.
2020-04-27 11:31:14 +01:00
Jason Tang
7b7308ac1b
Fix CSFB
2020-04-25 11:22:42 +02:00
jmasterfunk84
7f51fcb419
Update s1ap.cc
2020-04-24 15:29:05 +02:00
Francisco Paisana
b506e29b72
removed common ce_typeenum
2020-04-24 11:55:53 +01:00
Francisco Paisana
372126deac
created ul-sch and mch lcid types
2020-04-24 11:55:53 +01:00
Francisco Paisana
367a190829
created dl-sch lcid type
2020-04-24 11:55:53 +01:00
Xavier Arteaga
77d5dedddc
Fix LGTM warnings and recommendations
2020-04-22 18:01:43 +02:00
Pedro Alvarez
ad0abe740b
Added support to PDCP SN len of 7. Also added a check for valid configs in pdcp entity.
2020-04-22 17:44:00 +02:00
Francisco Paisana
7a132f9ccd
more enb interface comments
2020-04-22 13:34:37 +01:00
Francisco Paisana
0526ae8ab1
updated rrc mobility parsing. added some utility methods
2020-04-22 12:57:11 +01:00
Francisco Paisana
20f6655c6b
use common method to build mac pdu. allow CE allocations in dci format2/2a
2020-04-22 11:34:08 +01:00
Francisco Paisana
64557740fc
use mac_buffer_state interface to schedule CEs in scheduler
2020-04-22 11:34:08 +01:00
Francisco Paisana
ec94819f08
changed mechanism for conres ce scheduling to be controlled by rrc
2020-04-22 11:34:08 +01:00
Francisco Paisana
66a38f53f5
fix req_bytes methods to account for new method to calculate conres scheduling.
2020-04-22 11:34:08 +01:00
Francisco Paisana
d716d8bf7e
use mini state machine for ConRes CE scheduling instead of relying that there is data in the DL buffer
2020-04-22 11:34:08 +01:00
Francisco Paisana
6de7b644ec
schedule conres ce when pcell changes
2020-04-22 11:34:08 +01:00
Francisco Paisana
d183d64409
added allocate_rnti method to mac. Useful both during PRACH and handover UE resource allocation
2020-04-22 11:34:08 +01:00
Francisco Paisana
6ddedd5972
moved pdu to common mac folder
2020-04-22 10:06:08 +01:00
Xavier Arteaga
4756319e8f
Reduce PHY logging
2020-04-20 16:10:01 +02:00
Pedro Alvarez
882a610504
Fix mistake in adding dedicated DRB to scheduler.
2020-04-13 20:45:27 +02:00
Pedro Alvarez
b176eef8e7
Using a single map to store erab_info messages.
2020-04-13 20:45:27 +02:00
Pedro Alvarez
84b012051c
Added ability to reconfigure more than one DRB in the eNB RRC reconfiguration.
2020-04-13 20:45:27 +02:00
Pedro Alvarez
9b60d7977e
Make sure that the NAS buffers for multiple erabs are initialized.
2020-04-13 20:45:27 +02:00
Pedro Alvarez
cc2b474754
Starting to add array of erab_info messages.
2020-04-13 20:45:27 +02:00
Pedro Alvarez
f872e6ec39
Marking nas_pending a vector to support multiple erab setup on sending RRC reconf.
2020-04-13 20:45:27 +02:00
Francisco Paisana
6fedec8223
avoid dangling scells
2020-04-13 11:15:28 +01:00
Francisco Paisana
ca7e667a22
small fix in list size check
2020-04-13 11:15:28 +01:00
Francisco Paisana
4d0068243b
fixing scell activation in the enb rrc
2020-04-13 11:15:28 +01:00
Francisco Paisana
c09f76ed6c
unified stack task defer method
2020-04-10 22:30:59 +01:00
Xavier Arteaga
5b7493cab5
Added 256QAM modulation tables to scheduler
2020-04-10 17:48:53 +02:00
Xavier Arteaga
a4225b189b
SRSENB: Added initial UE capability parser
2020-04-10 17:48:53 +02:00
Xavier Arteaga
784bf81a1a
Multiple fixes HARQ ACK/NACK feedback and CSI reporting for MIMO and CA
2020-04-10 15:58:25 +02:00
Xavier Arteaga
8b265883e4
SRSENB: UL TA measurement waits for a start order before start measuring
2020-04-10 15:57:41 +02:00
Andre Puschmann
3e916ac3a8
srsenb_phy: only wait for txrx thread if it has actually been started
2020-04-10 14:58:36 +02:00
Andre Puschmann
b994255b35
enb: fix handling of GTPU and S1AP init return values
...
if the eNB stack startup fails, for example due to binding
the wrong GTPU socket or similar issues, the eNB should stop
and log a message. Previously the return values for
S1AP and GTPU init were not even evaluated.
2020-04-10 14:58:36 +02:00
Ismael Gomez
425c70c8d7
Fix CQI scheduling allocation for CA
2020-04-09 22:24:04 +02:00
Ismael Gomez
0841ec510c
Fix deadlock when UE disconnected due to incorrect use of rwlock
2020-04-09 22:24:04 +02:00
Francisco Paisana
26211f12bd
add warning when space in pdcch cannot be found
2020-04-08 15:25:33 +01:00
Francisco Paisana
40da4495ce
do a loop in rrc::tti_clock() to process all pending events
2020-04-06 15:55:20 +01:00
Andre Puschmann
d69aa55a42
enb: don't exit enb if rr.cfg for 6 PRBs isn't correct
...
we agreed to print the error message but still patch the values to
work for 6 PRBs. Since there is only one option there is not
configuration ambiguity.
2020-04-03 22:22:04 +02:00
Xavier Arteaga
9a2b0b7cc7
Standard vector allocation uses vector library
2020-04-02 20:49:58 +02:00
Francisco Paisana
076aa6b1f8
fix mobility test for when the eutra_capability is received
2020-04-01 19:27:11 +01:00
Francisco Paisana
69486f2953
took out change in cc_worker to force retxs
2020-04-01 15:02:21 +01:00
Francisco Paisana
179e959d05
fix msg3 retx issue. Now nof_prb for pucch above 1 are forbidden for prb==6
2020-04-01 15:02:21 +01:00
Francisco Paisana
c661025cda
fix log tti, and print a warning when the ul_harq tti does not match existing ones
2020-04-01 15:02:21 +01:00
Francisco Paisana
30ae2226c1
common interface for stack multiqueue tasks, background tasks and timers
2020-03-31 13:42:06 +01:00
Andre Puschmann
62e4bd9469
log_ptr: fix issue if accessing log_ptr that was reset already
...
during deinit of the UE/eNB it could happen that the log_ptr
was already set to null but the stack thread was still accessing
it through log_h->info()
i've moved the old macro into a new header and used as as much
as possible. there are still places in the code where similar
macros are used but we would need to change the variable name
to replace them
2020-03-31 12:32:52 +02:00
Pedro Alvarez
88f56721ee
Fix issue where connection was still setup when no EPC was connected.
2020-03-25 22:19:26 +01:00
Francisco Paisana
344eaf49ec
use logmap in the whole enb and ue
2020-03-25 15:50:30 +00:00
Ismael Gomez
9a264b62c4
Protect access to shared grants ( #1117 )
...
* Protect access to shared grants
* Set correct number of carriers for DL
* Fix previous issues
* Address comments
2020-03-25 14:30:43 +01:00
Francisco Paisana
4baeee10c5
avoid dangerous [] map operator
2020-03-24 17:48:29 +00:00
Francisco Paisana
1839b9a6e5
cleaned up paging code to avoid extra processing steps in worker threads
2020-03-24 17:48:29 +00:00
Francisco Paisana
9c028ab723
removed user_mutex from srsenb::rrc. All that needed to happen was the prach_worker calling add_user from stack thread (done in an earlier PR), and the get_metrics run in the stack thread. I achieved the latter with an extra metrics queue
2020-03-24 17:48:29 +00:00
Ismael Gomez
c157a37894
Address comments
2020-03-24 16:47:33 +01:00