Pedro Alvarez
cc2b474754
Starting to add array of erab_info messages.
5 years ago
Pedro Alvarez
f872e6ec39
Marking nas_pending a vector to support multiple erab setup on sending RRC reconf.
5 years ago
Francisco Paisana
6fedec8223
avoid dangling scells
5 years ago
Francisco Paisana
ca7e667a22
small fix in list size check
5 years ago
Francisco Paisana
4d0068243b
fixing scell activation in the enb rrc
5 years ago
Francisco Paisana
c09f76ed6c
unified stack task defer method
5 years ago
Xavier Arteaga
5b7493cab5
Added 256QAM modulation tables to scheduler
5 years ago
Xavier Arteaga
a4225b189b
SRSENB: Added initial UE capability parser
5 years ago
Xavier Arteaga
784bf81a1a
Multiple fixes HARQ ACK/NACK feedback and CSI reporting for MIMO and CA
5 years ago
Xavier Arteaga
8b265883e4
SRSENB: UL TA measurement waits for a start order before start measuring
5 years ago
Andre Puschmann
3e916ac3a8
srsenb_phy: only wait for txrx thread if it has actually been started
5 years ago
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.
5 years ago
Ismael Gomez
425c70c8d7
Fix CQI scheduling allocation for CA
5 years ago
Ismael Gomez
0841ec510c
Fix deadlock when UE disconnected due to incorrect use of rwlock
5 years ago
Francisco Paisana
26211f12bd
add warning when space in pdcch cannot be found
5 years ago
Francisco Paisana
40da4495ce
do a loop in rrc::tti_clock() to process all pending events
5 years ago
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.
5 years ago
Xavier Arteaga
9a2b0b7cc7
Standard vector allocation uses vector library
5 years ago
Francisco Paisana
076aa6b1f8
fix mobility test for when the eutra_capability is received
5 years ago
Francisco Paisana
69486f2953
took out change in cc_worker to force retxs
5 years ago
Francisco Paisana
179e959d05
fix msg3 retx issue. Now nof_prb for pucch above 1 are forbidden for prb==6
5 years ago
Francisco Paisana
c661025cda
fix log tti, and print a warning when the ul_harq tti does not match existing ones
5 years ago
Francisco Paisana
30ae2226c1
common interface for stack multiqueue tasks, background tasks and timers
5 years ago
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
5 years ago
Pedro Alvarez
88f56721ee
Fix issue where connection was still setup when no EPC was connected.
5 years ago
Francisco Paisana
344eaf49ec
use logmap in the whole enb and ue
5 years ago
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
5 years ago
Francisco Paisana
4baeee10c5
avoid dangerous [] map operator
5 years ago
Francisco Paisana
1839b9a6e5
cleaned up paging code to avoid extra processing steps in worker threads
5 years ago
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
5 years ago
Pedro Alvarez
75f35d8ded
Making the default eNB TAC match the default EPC TAC.
5 years ago
Ismael Gomez
c157a37894
Address comments
5 years ago
Ismael Gomez
7a7385d0e5
Support multiple carriers for common buffers (RAR/BCCH/PCCH)
5 years ago
Xavier Arteaga
8e891b7038
Added AWGN channel to SRSUE and SRSENB
5 years ago
Francisco Paisana
a2866f661b
made the number of ue payload allocations proportional to number of active carriers. Made mac::ue_db use unique_ptrs
5 years ago
Francisco Paisana
8772d8f85c
use byte buffer pool for the ue tx_payload_buffer allocation. This halves the mac::ue object creation time
5 years ago
Andre Puschmann
dff00c77c0
srsenb: fix mobility test after adding UE cap enquiry
5 years ago
Andre Puschmann
ce45aabfec
srsenb: enable UE capability enquiry during attach
...
the UE capability information isn't used so far but can now
be analyzed in the PCAP
5 years ago
Xavier Arteaga
2c93f6d20a
Fix PUCCH DMRS correlation
5 years ago
Ismael Gomez
fd3d4a7874
Refactor thread_pool: use std::mutex and fix some hidden potential bugs
5 years ago
Francisco Paisana
82cb6baef0
now the whole ue and enb mac uses the logmap
5 years ago
Ismael Gomez
5846e64a4d
Deallocate all CQI resources when deallocating users ( #1097 )
5 years ago
Francisco Paisana
fb967d17a2
now we can disable tprofs individually
5 years ago
Francisco Paisana
deb76d5dbd
improved design to avoid data structures, and allow guarded start/stop even in lambdas
5 years ago
Francisco Paisana
8a54aef89d
created a better/more composable design for time measures
5 years ago
Francisco Paisana
eb20f651b9
account for all exit points
5 years ago
Francisco Paisana
854211496b
redesign of tprof for thread safety
5 years ago
Francisco Paisana
269c852767
created a class for time profiling. An object of such class, if disabled, has almost zero overhead. Added a compile-time flag to turn on/off time profiling
5 years ago
Andre Puschmann
76f1b87b69
fix uninit var in s1ap
5 years ago
Francisco Paisana
34bc48d31a
fix cfi to cc assignment
5 years ago
Francisco Paisana
0770c13f08
fixed overwriting of parsed max CFI
5 years ago
Francisco Paisana
5ee96079a2
added nof ctrl symbols of CFI to enb.conf
5 years ago
Francisco Paisana
4fc243ae4b
added minimum CFI to config
5 years ago
Francisco Paisana
807d177b47
fix hanging issue, and simplified the handling of minRBG for different CFIs
5 years ago
Francisco Paisana
ede09cb9b2
added dynamic CFI capability to the eNB scheduler
5 years ago
Xavier Arteaga
ada8772f57
Initial srenb TA compensation
5 years ago
Andre Puschmann
ac17ec6452
add common signal_handler for srsUE/srsENB/srsEPC
...
the signal handler is the same for all three apps. The "running" flag
as well as the file_logger object are in the common header in order
to allow the signal handler to flush the file if the alarm goes off.
5 years ago
Ismael Gomez
cf4f4508ce
Normalize throughput in CSV/stdout metrics with respect to number of TTIs
5 years ago
Xavier Arteaga
0408d357a7
Minor fixes
5 years ago
Ismael Gomez
858165f177
Allocate a different PDU buffer for each carrier in MAC eNodeB ( #1069 )
5 years ago
Ismael Gomez
73447972d8
Fix issue with simultaneous CQI and ACK/NACK transmission in CA ( #1067 )
...
* Fix memory corruption when phy calling mac scheduler and not yet initiated
* Do not drop CQI if collision with ACK/NACK and PUSCH
* Allocate CQI resources for SCell properly
* Use UE_PCELL_CC_IDX macro
* Protect ul_sched from being called if not yet started
5 years ago
Xavier Arteaga
e832769ae6
Updated copyright
5 years ago
Francisco Paisana
afd7ea9e83
Fixed the check for msg3 delay to account for retxs
5 years ago
Francisco Paisana
5330249625
created tti_point type and unit test. Added also the tti_point to the scheduler harqs, and rrc procedure
5 years ago
Francisco Paisana
e824cbd251
fixes in the mac log and cell parsing
5 years ago
Andre Puschmann
1099e75e7c
fix SCell carrier list population for MAC config
...
the issue caused to assign 0 as enb_cc_idx for the first SCell always
5 years ago
Xavier Arteaga
caf7b514a0
Avoid TTI initial magic number
5 years ago
Xavier Arteaga
5af89513eb
use double precission for frequency in srsue and srsenb
5 years ago
Xavier Arteaga
834a081c09
Add EPRE measurement to PUSCH decoder
5 years ago
Francisco Paisana
567790c1a2
Renamed struct to store cell context in rrc. Moved sib buffers to this struct. Created helper methods for lookup
5 years ago
Francisco Paisana
fe3195bb27
add default pcell to ue_cfg in RRC
5 years ago
Francisco Paisana
ce03971ca0
fix rrc_mobility_test
5 years ago
Francisco Paisana
349aed5e0d
use sib configuration to set SCellToAddModList
5 years ago
Andre Puschmann
764c912977
fix a few more displaying issue in the stdout metrics
5 years ago
Francisco Paisana
4217dba7e0
fix msg3 delayed allocation and update test
5 years ago
Ismael Gomez
e8b8c9922e
Add RF per-channel frequency band constraints ( #1026 )
5 years ago
Andre Puschmann
2f8643fb97
add tx/rx pkt ok/nok to enb metrics, also add enb metrics test
...
This is what it'll look like if running the new test:
------DL--------------------------------UL-------------------------------------
rnti cqi ri mcs brate ok nok (%) snr phr mcs brate ok nok (%) bsr
46 16 1.5 28 15.2G 1000 1000 100% 14.2 12.0 20 15.2M 50 10 20% 100.0
ffff 1.2 1.5 6.2 1.00M 100 54 54% 22.2 99.1 28 1.00k 50 10 20% 100.0
5 years ago
Andre Puschmann
074ffbbb1d
remove braces and reformat code
5 years ago
Andre Puschmann
a95605a8a2
trim log name for eNB
5 years ago
Andre Puschmann
f14697cdaa
schedule PMI for SCells right after PCell, disable SRS for SCells
5 years ago
Andre Puschmann
fdb7b0fa41
fix simple typo
5 years ago
Andre Puschmann
111aa6fc46
add SIB3 definition and enable in SI scheduling
...
SIB3 contains common cell re-selection information for intra, inter and intra-RAT cell reselection
5 years ago
Andre Puschmann
90beda34a1
fix parsing of optional field in SIB3
5 years ago
Andre Puschmann
c534ee2b55
fix SCell packing in RRC reconfig
5 years ago
Andre Puschmann
0e4f97d1a0
fix bug in MAC where new PHY RNTI was always registered for enb_cc_idx==0
5 years ago
Andre Puschmann
ab210c5f3c
tiny cosmetic changes to the error messages printing 0x and clear cc_idx use
5 years ago
Andre Puschmann
b7aad27d86
move packing of SCell list into extra method and add fill PHY config on the spot
...
previously we've packed the RRCReconfig with SCellToAddMod list and have then
parsed the message again to pack the PHY config dedicated for the new SCell carrier. This
is now done in one step.
5 years ago
Francisco Paisana
d18b476e37
use utility macro for printing function name
5 years ago
yagoda
f09c8324eb
adding success/error macros in scheduler.cc
5 years ago
yagoda
bfa451559b
adding error logs to some scheduler function calls to ue_db to add clarity
5 years ago
Francisco Paisana
9b4a0baa87
activate scells in the phy
5 years ago
Francisco Paisana
7548402632
change scell activation interface to use arrays. Added a method to the scheduler to get the current set of activated carriers
5 years ago
Xavier Arteaga
c42cb92784
Fix srsENB PHY stop
5 years ago
Xavier Arteaga
76408b195e
Rename TX_DELAY and FDD_HARQ_DELAY_MS
5 years ago
Xavier Arteaga
442926cf66
Fix enb_phy_test deadlock
5 years ago
Andre Puschmann
a8acd235f6
extend eNB MAC to support multiple CC per UE
...
- add tx/rx softbuffers for each CC that a UE might have
- make sure to call assign correct buffers when iterating
over the CC for UL/DL grant assignment
5 years ago
Pedro Alvarez
96c82b3fc6
Moved PDCP configs to pdcp_config.h. Added `as_security_cfg_t` structure to hold access stratum keys.
...
Refactored PDCP, RRC and USIM accordingly.
5 years ago
Francisco Paisana
dc8dca2a08
fix namespace-related compilation error
5 years ago
Francisco Paisana
a744729007
use range of rbgs
5 years ago
Francisco Paisana
46579da1ff
use signed integer to express the error
5 years ago
Francisco Paisana
9ad80ee29f
added initial_dl_cqi to the enb rr.cfg parser
5 years ago
Francisco Paisana
bcbb08ebae
use initial_dl_cqi for first DL tx.
5 years ago
Francisco Paisana
ab69c6fe43
account for delays in RAR tx in scheduler CA tester
5 years ago
Francisco Paisana
3b937348a2
refactored some sched util methods
5 years ago
Francisco Paisana
fad897cb35
DL scheduler metric now takes into account the min and max of RBGs possible. This is to forbid segmentation of SRB0 allocations
5 years ago
Francisco Paisana
6317750de2
fix computation of ranged of allowed sched dl bytes
5 years ago
Francisco Paisana
414259e83b
fix allocation expected alloc bytes (min and max)
5 years ago
Francisco Paisana
698899d309
added scells to enb rrc reconf message
5 years ago
Xavier Arteaga
d585cf14f3
SRSENB: phy_ue_db returns default configuration for non User C-RNTI
5 years ago
Xavier Arteaga
47b7c1b72b
SRSENB: remove assert macros from phy_ue_db.cc
5 years ago
Andre Puschmann
f2e1bfa699
refactor naming for s/p/cell structs and {enb,ue}_cc_idx
5 years ago
Francisco Paisana
639f473042
fixed unsigned signed comparison
5 years ago
Francisco Paisana
1e63fa41cf
made ue_cc_idx int to set to -1 for rar and bc allocs
5 years ago
Francisco Paisana
f3c3c52fcd
added ue_cc_idx to dci allocation
5 years ago
Francisco Paisana
e62972d38e
fix fdd delays in scheduler
5 years ago
Xavier Arteaga
04b3416d87
Remove auto for u16
5 years ago
Xavier Arteaga
5311c37429
SRSENB PHY: check RNTI type before requesting configuration
5 years ago
Xavier Arteaga
002a68e183
SRSENB: hard-coded parametrized PUCCH DMRS correlation threshold
5 years ago
Xavier Arteaga
385cc8ecd8
tweaked I_offset_ack in enb_phy_test
5 years ago
Xavier Arteaga
64caa4321b
Fix UL control decoding. Some minor aesthetic changes.
5 years ago
Pedro Alvarez
8c58d1054a
Changed pcap.mac_enable back to pcap.enable in eNB.
5 years ago
Pedro Alvarez
08a4ce0970
Added the ability to save S1AP pcaps at the eNB.
5 years ago
Andre Puschmann
2edecea33e
fix SIB transmission for CA
...
Avoid double buffering of SIBs in MAC as this would require one buffer for each CC.
Instead, use byte_buffer managed by RRC that contains packed SIBs to avoid
double memcpy for each SIB tx. Only use MAC provided buffer in error case.
Also avoid MAC calling RLC for each SIB and call RRC directly.
5 years ago
Pau Espin Pedrol
91a5d1a74e
gtpu: Log bind failure cause
5 years ago
Andre Puschmann
73feeaeba9
make UL earfcn optional in cell list
5 years ago
Andre Puschmann
120ad76c63
refactor cell param handling and fix SIB transmissions
...
- move cell specific eNB params to cell list in rr.conf
- make sure DL EARFCN and DL freq can be used to manually overwrite a single cell config
- fix SIB packing and transmission for multi cell configs
- introduce cell list to MAC
- adapt default enb.conf.example and rr.conf.example
5 years ago
Ismael Gomez
4e12405fff
Remove radio_multi class and organize channels, ports and carrier buffers ( #1019 )
5 years ago
Xavier Arteaga
ecb22600ff
improved eNb PHY test scheduler
5 years ago
Xavier Arteaga
89a672a585
SRSENB: fix UE phy dB defect for SCell Index
5 years ago
Xavier Arteaga
84dd9911ca
eNb PHY test uses only Aggregation level 0
5 years ago
Xavier Arteaga
0d6694d5e6
Improvement in eNb PHY test
5 years ago
Xavier Arteaga
5c689ed4c4
SRSENB: minor aesthetic change
5 years ago
Xavier Arteaga
8eb96747ab
SRSENB: Minor RAR RNTI fix
5 years ago
Xavier Arteaga
da701cd82b
SRSENB: Added PUSCH TA and EVM measurement. Some more PHY cleanup.
5 years ago
Pedro Alvarez
bb9ff82490
Remove enb singleton and make sure log is initialized.
5 years ago
Pedro Alvarez
bd3598f774
Moved srsEPC to the new S1AP library. Deleted liblte_s1ap.cc and liblte_s1ap.h.
5 years ago
Xavier Arteaga
a61ff0b0fc
SRSENB cleanup phy common
5 years ago
Xavier Arteaga
cac2ee33b6
SRSENB: PHY uses tti_semaphore class instead of normal semaphores
5 years ago
Francisco Paisana
ec1f1cc677
remove const_casts from scheduler. Fix ODR issue
5 years ago
Francisco Paisana
e9a599857a
created a header for all common structs and helper functions
5 years ago
Francisco Paisana
02ccb8b32b
fix wrong calculation of sched tx and rx delays
5 years ago
Andre Puschmann
73c8b02820
enb: loop over CC in MAC
5 years ago
Andre Puschmann
664170fec6
pcap: add CC index when writing PCAP
5 years ago
Andre Puschmann
33a410bda4
fix parsing of DL/UL earfcn in cell config
...
using a single earfcn or dl_freq value that gets set by default
in the [rf] section doesn't make sense in a enb config with more
than 1 cell, so we should actually remove the earfcn/freq setting in [rf]
and only configure the radio through the values in the cell list in rr.cfg
5 years ago
Andre Puschmann
87f1b2a939
catch exceptions from eNB config parser
...
since the eNB config gets more complex, especially with CA,
we need to catch potential parsing errors from libconfig,
print an error with the position of the error and gracefully
stop the enb
5 years ago
Francisco Paisana
43e67b8536
created a harq entity that handles all harq procs. This entity accepts as arg the number of harq procs.
5 years ago
Francisco Paisana
1c041b2c1d
created harq entity class
5 years ago
Andre Puschmann
dfb1cd1361
temporarily disabling enb_phy_test_1cell until it is fixed
5 years ago
Francisco Paisana
9f266161cf
increase tbs until allocation is big enough to fit MAC subheader and RLC header
5 years ago
Ismael Gomez
1f3aee2fc0
Fix incorrect parameters
5 years ago
Francisco Paisana
7e840bde86
fix tb idx assignment in scheduler mac sdu alloc
5 years ago
Francisco Paisana
d1356568e0
separated sf sched result from sf_sched class. The interface became way simpler. No need for finish_tti() method, sf_sched::new_tti() is called automatically when we access the sf_sched.
5 years ago
Francisco Paisana
bb38fa7119
fixed tti resetting after tti end
5 years ago
Francisco Paisana
47b05118ad
simplified msg3 allocation. Now we can allocate resources ahead of time (e.g. msg3 is 2 ttis ahead) using the sf_sched interface. It's guaranteed that the given allocations wont be erased when the respective tti starts
5 years ago
Francisco Paisana
8f7890c60a
store mask results in separate variables for testing, and reset sf_sched state at the end of the tti
5 years ago
Pedro Alvarez
afc209711c
Fix jump depending on uninitialized variable in srsenb::sched_ue::set_bearer_cfg_unlocked
5 years ago
Francisco Paisana
5bdc603113
added error macros
5 years ago
Francisco Paisana
b37d9b9930
fixed msg4 setting in sched tester
5 years ago
Francisco Paisana
3cc94c3694
simplified mutexing of the scheduler. One single mutex for everything, and removed rwlock
5 years ago
Francisco Paisana
7210c35c6c
checked all methods of srsenb::pdcp to see if they are called by different threads. Since it is all single-threaded, I removed the locks
5 years ago
Francisco Paisana
fed06138b9
moved rach_detected to stack thread. Created a more friendly interface to enqueue tasks in stack
5 years ago
Francisco Paisana
d10e950650
fix ue streamid assignment in s1ap
5 years ago
Andre Puschmann
c79e202fd9
fix typo
5 years ago
Andre Puschmann
37c342af39
give enb_phy_tests individual names
5 years ago
Andre Puschmann
a8bbe551ac
move thread class into srslte namespace to avoid ambiguity between std::thread
5 years ago
Andre Puschmann
8b46f631c1
add basic TTI stats in stack
5 years ago
Francisco Paisana
ad9e126299
test for different enb_cc_idxs as pcell. Bug fixes
5 years ago
Francisco Paisana
0f3ef11f8b
now the scheduler only activates a scell after receiving a valid CQI for the SCell
5 years ago
Francisco Paisana
f571b7c16b
cleaned up some of the log error messages in the sched tester
5 years ago
Francisco Paisana
c595696ec2
no need for a separate class for the CA tester
5 years ago
Francisco Paisana
b44754f0ae
the CA and random sched testers now use same structs and common interface.
5 years ago
Francisco Paisana
385fa226e0
started to use a type-safe tti counter for comparisons. Uniformized the common_sched_tester api. Next, need to use the same struct to register events.
5 years ago
Francisco Paisana
518f813f13
now the CA testing generation and simulation happen simultaneously. This way we can do more tti/event specific checks
5 years ago
Francisco Paisana
b319f8dfcd
created first version of CA test. Now we need to create actual asserts
5 years ago
Francisco Paisana
507bc2d2a2
created a test for CA. Currently is quite empty
5 years ago
Xavier Arteaga
2c534c9059
Correction of TX_DELAY and FDD_HARQ_DELAY_MS uses in srsenb PHY
5 years ago
Xavier Arteaga
ae6f52bf0b
Fix CLang Warnings in PHY eNb Test
5 years ago
Xavier Arteaga
0556dea01a
Refactored eNb PHY test to accept arguments and added unit test
5 years ago
Xavier Arteaga
9a54930430
Minor log messages and dynamic number of buffer allocation
5 years ago
Xavier Arteaga
2a6f54e13f
SRSENB: phy method cleanup and CLang tidy warning fixes
5 years ago
Xavier Arteaga
4c61ffd391
SRSENB: set UE common PHY configuration in RRC::UE constructor
5 years ago
Xavier Arteaga
5893f66364
SRSENB: fixes, srsUE attaches srsENB
5 years ago
Xavier Arteaga
b45223c880
Fix minor MAC Clang warnings
5 years ago
Xavier Arteaga
f35ed14f76
SRSENB: refactored PHY common UE database
5 years ago
Xavier Arteaga
2fc0832f05
Addition of DL HARQ-ACK generation procedure for eNb DL and minor aesthetic changes
5 years ago
Andre Puschmann
dc8c5687c6
fix rwlock in PDCP
...
we've used a rdlock but since the users struct is modified, we should be
really using a rwlock
5 years ago
Andre Puschmann
9e113f8b27
pdcp: allow to configure security for rx/tx seperately
...
previously PDCP security (integrity and ciphering) could only
be enabled for both Rx and Tx at the same time.
this, however, caused an issue during the conformance testing in which,
in TC_8_2_1_1() for example, the eNB sends a SecModeCommand and a
RRC Reconfiguration in the same MAC TB. In this case, the eNB
needs to be able to enable DL security right after sending the SecModeCmd
in order to send the RRCReconfig encrypted. However, enabling UL security needs
to be postponed until after the SecModeComplete is received.
This patch allows to enable PDCP security for rx/tx independently if
that is needed. The default way is like before, enabling it for tx/rx at
the same time.
5 years ago
Francisco Paisana
ac52208409
removed most of clang-tidy warnings, introduced logmap in asn1, fixed info object naming in s1ap and ngap for successful and unsuccessful outcomes
5 years ago
Francisco Paisana
e859d622c7
added logref class to forbid logmap pointer invalidation. Created a test for the logref, and introduced it in the scheduler, rrc and nas
5 years ago
Francisco Paisana
b8b8740258
fix wraparound in si proc and error in scell parsing
5 years ago
Francisco Paisana
052892916e
fix mme/enb id assignment. Also, now using the macro for invalid rnti and a boolean flag for the uninitialized mme s1ap id
5 years ago
Francisco Paisana
2f57db5352
changed invalid rnti to 0
5 years ago
Francisco Paisana
7557ef45c8
changed the s1ap to allow the insertion of users without rnti
5 years ago
Francisco Paisana
c29f08d8d5
refactored si acquisition procedure to use stack timers. Also created an interface that is going to be used for the task/timer handling
5 years ago
Ismael Gomez
a5b7dcdf16
Remove boost string ( #936 )
...
* Remove boost string
* Make sure that int/enc algos can be specified in capital case in the MME.
* Use == instead of compare for comparing strings with const chars
Co-authored-by: Pedro Alvarez <pedro.alvarez@softwareradiosystems.com>
5 years ago
Francisco Paisana
42449b079a
now the scell_activation CE is only for 1 octet. The 4 octet one is not yet supported.
5 years ago
Francisco Paisana
d831522692
addition of SCell Activation CE Cmd to scheduler and MAC
5 years ago
Francisco Paisana
838053e8f2
added SCell Activation CE to scheduler. Handling this CE in the MAC is still missing
5 years ago
Francisco Paisana
a0407dd6f7
created a lock guard for pthread rwlocks. This will avoid using gotos in many cases, and the RAII technique avoids many accidents.
5 years ago
Xavier Arteaga
385102fa2d
SRSENB: minor format, renaming and interface changes
5 years ago
Xavier Arteaga
bf4ecc8064
Fix srsenb PHY and unit/component tests
5 years ago
Xavier Arteaga
f9c3dd2748
more fixes in the srsenb
5 years ago
Xavier Arteaga
5dbc96458a
Sets PUCCH decode threshold as macro
5 years ago
Xavier Arteaga
231431f569
SRSENB: enabled CA PUCCH decode in eNb
5 years ago
Xavier Arteaga
73c63b10f2
Fix compilation of dummy classes
5 years ago
Xavier Arteaga
db9cd1683a
SRSENB: improved phy test
5 years ago
Xavier Arteaga
fd29944bf9
[Temporal] Disabled by default enb phy test
5 years ago
Xavier Arteaga
3f5c270fce
SRSENB: added initial component PHY test
5 years ago
Xavier Arteaga
40772eae19
SRSENB: UE PHY dedicated takes a flat configuration structure
5 years ago
Xavier Arteaga
35f4e5d69a
Initial PUCCH 1B with channel selection
5 years ago
Francisco Paisana
c9ac42f11d
renamed rlc pdu / mac sdu allocate functions, and added some comments describing what these functions do
5 years ago
Francisco Paisana
87038375d5
fixed the building of MAC SDUs in the scheduler. Now, we ensure there is always space for the MAC subheader and RLC header. The MAC subheader is correctly discounted from the remaining bytes in a TB.
5 years ago
Francisco Paisana
089f72d573
ensure minimum tbs. If it cant do it, increase mcs until it can.
5 years ago
Andre Puschmann
cccabdaf4f
removing unneeded install targets for static libs (reported by Filipe)
5 years ago
Francisco Paisana
c8fc0d91b3
changed the supported cc list to a vector of structs
5 years ago
Francisco Paisana
42b15c7bed
use common ue_cfg interface to set the ue antenna info
5 years ago
Francisco Paisana
5f557700f2
changed the sched::ue_cfg(...) function to allow diff configurations. The RRC now activates all carriers after rrc reconf complete
5 years ago
Francisco Paisana
b66bc3a6b0
create a sched_interface struct for antenna info dedicated. This way we remove the asn1 as a dependency in the scheduler
5 years ago
Francisco Paisana
88a22e7dbf
support cc cfg from rrc
5 years ago
Francisco Paisana
095d0cda5a
fix regs leak
5 years ago
Francisco Paisana
e86862611c
update the scheduler interfaces to accommodate the configuration of multiple carriers
5 years ago
Francisco Paisana
73c528793f
add interface changes to dummy classes and scheduler test
5 years ago
Francisco Paisana
2dc31ea440
added interface to configure multiple cells from the RRC
5 years ago
Pau Espin Pedrol
4949df257e
Proper shutdown on SIGHUP
...
If a process exits and has a controlling terminal, everything under
it gets a SIGHUP by the kernel. That's the case for instance when
running a srsUE over ssh with some specific parameters. As a result,
when the ssh client is killed, SIGHUP is sent to srsUE, which will be
killed immediatelly without proper release, which means in turn that log
buffers are not flushed.
Let's do proper shutdown when SIGHUP is received so that everyone can
get log files.
5 years ago
Andre Puschmann
ed179fd311
timers: rename value() to time_elapsed()
...
this seems to be better readable than value() since
we've sometimes confused it with the timeout value
5 years ago
Andre Puschmann
926f256afa
fix RLC dummy class that was missing suspend/resume
5 years ago
Andre Puschmann
a32d4ebf59
move PRACH config check into cfg parser
5 years ago
Andre Puschmann
179fd394b2
enb: add SRB2+DRB1 to scheduler AFTER receiving Reconfig Complete
...
this commit fixes and issue where, after receiving paging and the resulting
PRACH from the UE, the eNB would create DRB1 and already schedule DL traffic
on this bearer. However, since the UE has not received the reconfig message
yet, the DL traffic is dropped since DRB1 isn't set up yet.
the commit also does not reset the BSR state of the bearer inside MAC since
this caused to a stall of the received DL PDU. The value would initially be set to
a non-zero value (after receiving the DL PDU from EPC). But when the bearer
was (re-)introduced to MAC, it would reset the BSR to zero, and, since
MAC never polls RLC, the PDU wasn't sent down until the next PDU arrives
and sets the BSR to a non-zero value again.
5 years ago
Andre Puschmann
d3cb2eac83
add RLC suspend/resume to eNB interface
5 years ago
Andre Puschmann
369592544c
store last RRC Connection Reconfig with transaction identifier
5 years ago
Andre Puschmann
f999e256f9
add error handling for RRC msg packing in eNB
5 years ago
Andre Puschmann
ad304207b3
patch PRACH offset parameter for 6 PRB
...
the 6 PRB eNB requires a different PRACH offset than the default
value of 2 in the SIB1 example. In order to avoid having
to use a separate SIB config with just a single different value,
the patch patches the value to the only right configuration, if it's wrong.
It continues operation but still issues a warning so the user
can change it in the config.
5 years ago
Francisco Paisana
c19d033dbc
set SIB scheduling to debug mode
5 years ago
Francisco Paisana
c8cd12ac53
updated the test logging utils
5 years ago
Francisco Paisana
daf471be1f
moved test of pdsch collisions for separate test file
5 years ago
Francisco Paisana
c537d38650
separated sched tests based on output into a separate file. Added scheduler random tester to unit tests
5 years ago
Francisco Paisana
af0b80b0a7
fix test for prb==6 and accidental adaptive retx in UL
5 years ago
Francisco Paisana
a9b8c3fd55
fix msg3 prb limit for prb==6. It has to collide with PUCCH
5 years ago
Francisco Paisana
39fff9ed68
fix potential bug with grouping of RARs with same RA-RNTI but different prach_tti. The scheduler might not clear the old tti on time before the grouping.
5 years ago
Francisco Paisana
de195e9521
changed the RAR schedule to support the allocation of nof_grants lower than the current nof_grants in the queue with same ra-rnti
5 years ago
Francisco Paisana
e9ca6e3d52
fix rar size
5 years ago
Francisco Paisana
a74dcd947f
changed rar/msg3 scheduling to accommodate multiple rars per TTI
5 years ago
Francisco Paisana
dc782e514b
change the naming from tti --> sf for scheduling operations specific to a subframe
5 years ago
Xavier Arteaga
a6105a3020
SRSENB: made possible custom UL/DL frequencies for each carrier
5 years ago
Xavier Arteaga
604e61810e
SRSENB: moved set tx/rx frequency to txrx class
5 years ago
Xavier Arteaga
c5dcc5e95b
SRSENB: moved backwards compatibility enb conf check
5 years ago
Xavier Arteaga
c2b23d273b
SRSENB: keep backwards compatibility of enb.conf
5 years ago
Xavier Arteaga
5dcb6b5960
SRSENB: Set default PRACH sequence root index in SIB2
5 years ago
Xavier Arteaga
31dffb785f
SRSENB: fix segmentation fault
5 years ago
Xavier Arteaga
9a853d8692
SRSUE: fix compilation
5 years ago
Xavier Arteaga
922481659b
SRSENB: minor corrections
5 years ago
Xavier Arteaga
b08c1f003e
SRSENB: enabled multiple cells from rr.cfg
5 years ago
Francisco Paisana
5ae3afd2b8
created cbit_ref for unpacking const buffers
5 years ago
Francisco Paisana
5468189cd9
fix some variables' naming (e.g. x2_ap -> x2ap, e_rab -> erab)
5 years ago
Francisco Paisana
2a83eee0ee
fix security key setup
5 years ago
Francisco Paisana
83758e4f55
fix integrity/ciphering bit setting
5 years ago
Francisco Paisana
ee24b59924
converted s1ap to new s1ap asn1 lib. Cleaned up bitstring packing/unpacking and bitstring types
5 years ago
Francisco Paisana
25bb36cdc3
converted ho preparation to new s1ap asn1 lib. Extended s1ap test
5 years ago
Francisco Paisana
6d1172de71
converted enbstatustransfer and ulnastransport to the new s1ap asn1 lib
5 years ago
Francisco Paisana
40baed0b3e
converted uecontextmodificationresponse, initial setup request, and s1setup request to the new s1ap asn1 lib
5 years ago
Francisco Paisana
b1c5bf7185
reverse addrv4 packing in s1ap
5 years ago
Francisco Paisana
a740fcb954
bug - wrong ue context release cmd
5 years ago
Francisco Paisana
3066b404ac
fix integer ext asn1 generation
5 years ago
Francisco Paisana
b6c53d786b
updated s1ap rrc interface with new asn1 lib types
5 years ago
Andre Puschmann
fef6893ce4
make user activity handling independent of system time
...
this commit removes the getsystime() call from the activity handling.
it uses a single timer per UE to handle its activity.
three different timer values exist. one for the Msg3 reception. This
is like before and is quite low to quickly remove fake UEs from the
RRC. The second is a generic value (set to 1s for now) that covers
the entire UE configuration phase where multiple messages are sent
back and forth until the UE is fully set up and the default
bearer runs. From there on, the UE inactivity timer is used which
may be much bigger than 1s.
5 years ago
Andre Puschmann
e5ed6ac870
fix tiny memleak by not joining input thread
5 years ago
Andre Puschmann
13bc9196b0
fix uninit memory in metrics processing
5 years ago
Andre Puschmann
b0bfc7956d
use const& in metrics interface
5 years ago
yagoda
2db90c5dd3
allowing TA CE commands in Msg4
5 years ago
Francisco Paisana
f280720564
this fix was detected by Syed in the mailing list
5 years ago
Andre Puschmann
be4ba504bd
fix another bunch of uninit memory in tests, and one in srsENB
5 years ago
Andre Puschmann
6ec573987a
remove default value for 'blocking' param from pdcp::write_sdu()
...
there were two defaults and one was shadowing the other. This
commit removes both defaults and uses blocking-mode for RRC
calls to PDCP in the UE. The eNB write_sdu() uses the non-blocking
mode by default. We have to review the eNB's RRC perhaps and use blocking
there too and non-blocking only for data plane
5 years ago
Andre Puschmann
0bd493b567
call byte_buffer cleanup in two enb tests and fix typo
5 years ago
Xavier Arteaga
11eafa8ab4
srsLTE: FFTW wisdom gets loaded and saved by default
5 years ago
Francisco Paisana
2eb6145b99
reset carriers on each set_cfg call
5 years ago
Andre Puschmann
7e294f7325
move common helper for eNB tests into own header file and split mobility and erab tests
5 years ago
Andre Puschmann
75672324b9
fix RRC connection reconfig for new bearer
...
this fixes the packing of a RRC connection reconfig after creating
a new ERAB
it also adds a PDCP config factory based on the received request
5 years ago
yagoda
845c0fc2c0
fixing lcid issue with eMBMS, adding MRNTI user to stdout metrics
5 years ago
Andre Puschmann
476f970ee1
replace FIXME with TODO
5 years ago
Andre Puschmann
705cd3c211
fix typos spotted by aleksander0m
5 years ago
Pedro Alvarez
c5979f59eb
Clang format UE, eNB and lib ( #850 )
...
* Clang-formated UE, eNB and lib.
* Fixed compiling errors from clang-format.
* Fix linking issues introduced by clang-format
* Fix poor formating in initializing arrays of arrays.
* Fix mistake in conflict resolution on rm_turbo.c
* Re-apply clang format to gtpc_ies.h
5 years ago
Andre Puschmann
c7ee887170
add factory function for creating PDCP config
5 years ago
Andre Puschmann
8a064cd3a6
pass msg_type from caller when logging RRC message
...
before the type of some message wasn't displayed correctly,
like SIBs, for example because the logger didn't
know the filed to retrieve the type string
5 years ago
Andre Puschmann
60d07f1656
assign msg-type to temp variable before logging ASN1 message in RRC
5 years ago
Francisco Paisana
d59016ae68
use of srslte::log* type for ASN1 logging. Initialization of the asn1 and rrc_asn1 loggers done now in both the ue and enb
5 years ago
Andre Puschmann
c379ef6cb1
fix uninit var
5 years ago
Aleksander Morgado
52ce1fbfd1
enb: fix list of logging layers in conf example
...
Added 'phy_lib' and 's1ap', removed 'nas'.
As per the srsenb help:
$ srsenb --help | grep level | grep log
--log.rf_level arg RF log level
--log.phy_level arg PHY log level
--log.phy_lib_level arg (=none) PHY lib log level
--log.mac_level arg MAC log level
--log.rlc_level arg RLC log level
--log.pdcp_level arg PDCP log level
--log.rrc_level arg RRC log level
--log.gtpu_level arg GTPU log level
--log.s1ap_level arg S1AP log level
--log.all_level arg (=info) ALL log level
5 years ago
Francisco Paisana
d270518d69
updated rrc to new srsasn1 version
5 years ago
Francisco Paisana
1212d403c6
added {} in if condition
5 years ago
Francisco Paisana
0894e6b2f1
updated dummy interfaces
5 years ago
Francisco Paisana
67411ecfa9
updated dummy interfaces
5 years ago
Francisco Paisana
6b4488d5c1
added sending of enb status transfer from SeNB
5 years ago
Francisco Paisana
c7f11e5690
fixed issue with the liblte_s1ap transparent container packing
5 years ago
Francisco Paisana
39fcf25e0d
added extra tests for handover. Did a some refactoring to move boilerplate out of the test mobility function
5 years ago
Francisco Paisana
a18a7e307e
moved all the parsing of the libconfig files to separate functions that can be called from individual tests. Created several stack layer dummy classes for testing. Extended the rrc_mobility test to check correctness of RRC HOPreparation struct
5 years ago
Francisco Paisana
b792a3158c
removed magic numbers for s1ap timers, and handled the error in the s1 ho cmd
5 years ago
Francisco Paisana
524c80a804
added handling of ho command
5 years ago
Pedro Alvarez
e1cdd51eba
Clang-formated before pull request
5 years ago
Pedro Alvarez
e68956bcf6
Adding discard timer timeout to PDCP config.
5 years ago
Pedro Alvarez
a049ec6b82
Finished to add boiler plate code to support PDCP discard notifications to RLC.
5 years ago
Pedro Alvarez
2e7ddef038
Continue to add discard_sdu to RLC interfaces.
5 years ago
Pedro Alvarez
a77dd4e959
Starting to add boiler-plate code to support Discard at RLC.
5 years ago
Francisco Paisana
ab3d7dd413
updated sched interface for multiple carriers
5 years ago
Francisco Paisana
1da86df597
added map between cc_idx and enb cell specifier
5 years ago
Francisco Paisana
eeb47f8fa4
fixed issue regarding repetition of ConRes tx
5 years ago
Francisco Paisana
e94e0a8641
changed the logic associated with the tx of the conres CE
5 years ago
Francisco Paisana
3159a5b84a
added cc_idx to dl_rach_info
5 years ago
Francisco Paisana
01847c5f5d
phy_config_enabled is general to all the carriers of the ue
5 years ago
Francisco Paisana
cab9327b1a
updated scheduler interfaces to accommodate multiple carriers
5 years ago
Xavier Arteaga
8dd1c59e18
Added amplitude and power conversions to dB and viceversa
5 years ago
Francisco Paisana
6d4f746a61
moved tti_sched_result out of carrier_sched. Removed interdependencies between the two classes. Simplified ra_sched and bc_sched initialization
5 years ago
Francisco Paisana
7990e2f563
use of a common tti_params struct to store all values derived from tti_rx
5 years ago
Francisco Paisana
36c45c7d64
added the changes in the enb stack from next
5 years ago
Francisco Paisana
54992e72f1
fixed and simplified multiqueue task api to avoid dangling pointers.
5 years ago
Francisco Paisana
ac4d3b9624
std::functions do not accept move-only captures. So I had to create a wrapper earlier. In this PR, I cleaned a bit the previous API for the code to be a bit more readable
5 years ago
Francisco Paisana
0b962f19f4
fix compilation issue
5 years ago
Francisco Paisana
67ccaf1029
created a file with common test utils, including assertions, a logger specialized for tests that counts the number of errors and warnings during the test run and can print diagnostics on exit
5 years ago
Francisco Paisana
011b2168a6
grouped different sched params/args/derived params into a single struct to simplify the ctor api of different sched sub components
5 years ago
Andre Puschmann
2195012dc1
fix uninit var in cfg parser
5 years ago
Andre Puschmann
6a9c4d94b0
fix printf in scheduler test
5 years ago
Andre Puschmann
6f72cbffab
fix snprintf of uint64 for ARM
5 years ago
Pedro Alvarez
d4fb4d8c86
Fixup clang-format in pdcp before PR.
5 years ago
Pedro Alvarez
15613465cf
Moving some initialization from init function to constructor in the PDCP entities.
5 years ago
Francisco Paisana
0f01b0acc2
clean paging_opportunity function
5 years ago
Francisco Paisana
77f63f7bcd
removed gtpu mutex
5 years ago
Francisco Paisana
73e06a0858
removed threads from eNB MAC
5 years ago
Francisco Paisana
151159e2c6
avoid passing stack vars by reference in callbacks
5 years ago
Francisco Paisana
e8487211e4
changed the naming of mch to m1u in the gtpu class
5 years ago
Francisco Paisana
2512e0fd79
removed thread from GTPU MCH
5 years ago
Francisco Paisana
1400777639
removed 1st thread from GTPU
5 years ago
yagoda
ca0922ddc6
adding missing embms section header to enb.conf
5 years ago
yagoda
088e3e9bcf
remove comma from rr.conf
5 years ago
Francisco Paisana
a9a33256e9
fixed some of the net utils functions
5 years ago
Francisco Paisana
546ee98879
fixed small issue that was causing compilation errors
5 years ago
Francisco Paisana
2de0eee9c7
clean up some comments
5 years ago
Francisco Paisana
76673d2d40
cleaned up socket util methods, and made the S1AP non-blocking.
5 years ago
Andre Puschmann
30aac5a89a
fix wrong c-type cast accessing UE database and uninit mem
5 years ago
Andre Puschmann
b6dd0de50a
move timers in eNB stack class up to force later dtor call
5 years ago
Aleksander Morgado
ed6044eb54
enb,rrc: always print full RRC message contents
...
Do not limit them to 1024 chars.
5 years ago
Francisco Paisana
177e880293
removed extra threads from enb rrc
5 years ago
Francisco Paisana
33aa858118
rr.conf.example fix
5 years ago
Francisco Paisana
ff62ae6ad0
created the method chain in RRC to receive and handle the response to a S1AP HORequired
5 years ago
Francisco Paisana
50ed2ccfec
added the handling of ho preparation failure and an ue class to s1ap
5 years ago
Francisco Paisana
57cd40ca31
added an ho required message send from SeNB to MME
5 years ago
Xavier Arteaga
2b7ef9b4a8
SRSENB: Fixed rr.conf cell list example parsing errors and segfault
5 years ago
Francisco Paisana
56fdf047e6
added default cell_list config to the rr.conf, but commented
5 years ago
Francisco Paisana
37a9501db3
added scell parsing to the rr.conf
5 years ago
Francisco Paisana
c8e50c1e19
DL/UL sched are called in a round-robin fashion
5 years ago
Francisco Paisana
690a9850e7
cleaned up some old patterns and run clang-format in RRC and scheduler
5 years ago
Paul Sutton
b2e6ef772b
Minor typo fix
5 years ago