Commit Graph

155 Commits

Author SHA1 Message Date
Francisco 14d32db92f implement Handover direct forwarding path availability configuration feature 2021-04-15 17:48:18 +01:00
Francisco b8fa1d1b61 fix rrc mobility test 2021-04-15 09:45:31 +01:00
Francisco d142d7b6a5 update test helpers for enb, so that the rrc tests pass 2021-04-09 12:54:22 +01:00
Francisco 8fe27a72d0 enb - decreased default enb.conf mac.max_nof_ues to 8 to avoid large memory pool preallocations 2021-04-09 12:54:22 +01:00
Pedro Alvarez 47135cb75b Changed counting of KOs to RRC 2021-04-01 13:21:43 +01:00
Pedro Alvarez 8e48467a30 Make sure that meas_report_desc is present if ho_active == true in rr.conf 2021-03-26 10:06:38 +00:00
Codebot 4523ee6087 rename srsLTE to srsRAN 2021-03-21 21:47:01 +01:00
Francisco 3e9f93eb8a refactor - remove old log_filter and logmap libraries from the codebase 2021-03-11 20:10:54 +00:00
Pedro Alvarez bea78512e5 Make sure the eNB exits with error when some invalid configs are provided 2021-03-09 19:45:30 +00:00
Francisco 34e39a9835 Implementation of scheduler algorithm to avoid PUCCH collisions
- The cch_allocator considers the existence of a fixed PUCCH region dedicated to CQI, SR, and HARQ ACKs
- At the moment PUCCH multiplexing is not considered
- The PUCCH width was increased to accommodate possible PUCCH-ACK positions
2021-03-05 14:59:44 +01:00
Francisco 4b09507c19 remove srslte.h includes from upper layers 2021-02-26 16:44:57 +01:00
Francisco 6404722b4b convert qci_cfg in srsenb to std::map to allow qci values above 10 2021-02-20 23:00:05 +01:00
faluco 711438f756
Port enb specific classes to use srslog (#2155)
* - Started porting the enb PHY layer to use srslog loggers.
- Updated srslog to manage the none level.

* Finished porting enb phy layer including the NR part.

* Ported MAC, GTPU, PDCP, RLC and S1AP enb classes to use srslog.

* Use new stack logger.

* Ported the enb RRC clases to use srslog.

* Remove unused log macros.

* Replace loggers in sched, sched_carrier, sched_helpers.

* Replaced loggers in sched grid.

* Replaced loggers in sched harq.

* Replaced loggers in sched ue.

* Replaced loggers in sched ue ctrl.

* Replace loggers in sched ue ctrl TPC.

* Replaced loggers in sched subclasses.

* Replaced loggers in rrc_meascfg_test

* Configure loggers in rrc_mobility_test.

* Fix compilation errors left out after the rebase.

* - Implement a custom log sink that will serve as a test spy to intercept and count the number of error and warning log entries.
- Adapt the erab_test_setup and rrc_mobility tests to use this new class and make them pass again.

* - Remove trailing new lines introduced in the rebase.
- Ported the sched_ue_cell class to srslog.

* Remove unused log member.

* Ported mac tests to srslog.

* - Removed remaining trailing newlines from log entries.

* Fix compiler errors detected in CI.

* Fix another static variable without definition passed to log lines.

* Fixed a bug in srslog::flush that would never end when the backend queue is full.

* Fetch the RRC logger instead of injecting it in the constructor.
2021-01-28 12:17:18 +01:00
Francisco Paisana 2abe486e18 separate control loops for PUCCH and PUSCH TPC 2021-01-06 22:14:46 +01:00
Francisco Paisana 099dad8cb1 disable PHR handling in the UL sched by default 2020-12-17 17:56:42 +01:00
Francisco 479602ed1d add option to specify target ul sinr for UL power control to the enb rr.conf parser 2020-12-12 15:59:27 +01:00
Xavier Arteaga b501f2eeaf SRSENB/UE: Added NR workers 2020-12-12 15:59:26 +01:00
Andre Puschmann 07d2bc4fe8 change license header to agnostic version with hint to root LICENSE file 2020-12-12 15:59:25 +01:00
Francisco 1cb65f07f1 enable meas gaps in RRC and enb parser 2020-12-12 15:58:34 +01:00
Francisco Paisana 510959b50f update nr asn1 files, and asn1 tests 2020-12-12 15:58:32 +01:00
Andre Puschmann ff21d9c077 enb: fix error log when parsing cell config 2020-10-28 12:05:53 +01:00
Francisco Paisana 4230a60859 added a warning to the enb parsing that checks for invalid cell pci configurations 2020-10-19 10:00:10 +02:00
yagoda 7e60d8aae5 fixing issue with explicit uplink frequency setting 2020-10-16 12:02:39 +01:00
Francisco Paisana 78a3370396 added comment explaining that we evenly distribute PUCCH resources between SR and CQI 2020-08-25 13:57:38 +01:00
Francisco Paisana 68acad25c6 altered default SR and CQI mapping in rr.conf parsing to avoid collisions 2020-08-25 13:57:38 +01:00
Francisco Paisana 1abec61498 allow inactivity timers below the recommended value 2020-08-25 11:47:24 +01:00
Francisco Paisana b47f8e6c1a increased rrc inactivity timer to avoid unnecessary pagings while
setting up an initial enb-ue iperf connection
2020-08-25 11:47:24 +01:00
Pedro Alvarez 8e00febb1d srsENB: Derive inactivity timeout from T310 and T311 and N310. 2020-06-26 12:19:57 +01:00
Andre Puschmann 06d31f46ba enb: set maximum allowed TTI difference between PHY and Stack TTI clocks for ZMQ
this fixes the issue where PHY and MAC threads, and the processing
of events therein, are drifting apart too much.

This patch effectivly enforces a strong wait on the PHY if the
stack thread is too slow in processing its tasks.

For RF hardware the default is still 8192 TTIs, for ZMQ 1 TTI is used.
2020-06-12 21:37:10 +02:00
Pedro Alvarez 51f8ba60da Make MBMS MCS configurable for the eNB. 2020-05-15 10:58:42 +01:00
Francisco Paisana 71520d681a changes in pucch res allocation api to allow replacing p/scells 2020-05-11 12:44:08 +01: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
yagoda faf1cf6975 limiting prach search space to number of prachs set in sib2 2020-04-28 14:40:20 +02:00
Xavier Arteaga a59884a14a SRSENB: configure PUCCH3 as default HARQ feedback for CA 2020-04-27 21:03:44 +02:00
Francisco Paisana 0526ae8ab1 updated rrc mobility parsing. added some utility methods 2020-04-22 12:57:11 +01:00
Francisco Paisana 6fedec8223 avoid dangling scells 2020-04-13 11:15:28 +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
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 0770c13f08 fixed overwriting of parsed max CFI 2020-03-18 19:55:39 +00:00
Francisco Paisana 4fc243ae4b added minimum CFI to config 2020-03-17 22:06:37 +00:00
Francisco Paisana ede09cb9b2 added dynamic CFI capability to the eNB scheduler 2020-03-17 22:06:37 +00:00
Xavier Arteaga e832769ae6 Updated copyright 2020-03-16 11:26:06 +01:00
Francisco Paisana e824cbd251 fixes in the mac log and cell parsing 2020-03-13 18:45:38 +01:00
Xavier Arteaga 5af89513eb use double precission for frequency in srsue and srsenb 2020-03-13 14:01:58 +01:00
Andre Puschmann 90beda34a1 fix parsing of optional field in SIB3 2020-03-12 20:55:47 +01:00
Francisco Paisana 9ad80ee29f added initial_dl_cqi to the enb rr.cfg parser 2020-03-10 22:06:07 +00:00
Andre Puschmann 73feeaeba9 make UL earfcn optional in cell list 2020-03-06 17:57:26 +01:00
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
2020-03-06 16:20:44 +01:00
Ismael Gomez 4e12405fff
Remove radio_multi class and organize channels, ports and carrier buffers (#1019) 2020-03-06 15:26:48 +01:00
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
2020-03-05 20:46:14 +01:00
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
2020-03-05 20:46:14 +01:00
Andre Puschmann a32d4ebf59 move PRACH config check into cfg parser 2020-02-03 16:26:15 +01:00
Xavier Arteaga a6105a3020 SRSENB: made possible custom UL/DL frequencies for each carrier 2020-01-28 11:22:50 +01:00
Xavier Arteaga c5dcc5e95b SRSENB: moved backwards compatibility enb conf check 2020-01-28 11:22:50 +01:00
Xavier Arteaga c2b23d273b SRSENB: keep backwards compatibility of enb.conf 2020-01-28 11:22:50 +01:00
Xavier Arteaga b08c1f003e SRSENB: enabled multiple cells from rr.cfg 2020-01-28 11:22:50 +01:00
Andre Puschmann 476f970ee1 replace FIXME with TODO 2019-12-18 11:25:56 +01:00
Francisco Paisana d270518d69 updated rrc to new srsasn1 version 2019-12-11 19:58:20 +00:00
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 2019-12-06 10:21:41 +00:00
Francisco Paisana 33aa858118 rr.conf.example fix 2019-11-11 14:48:33 +00:00
Francisco Paisana 50ed2ccfec added the handling of ho preparation failure and an ue class to s1ap 2019-11-10 22:06:31 +00:00
Francisco Paisana 57cd40ca31 added an ho required message send from SeNB to MME 2019-11-10 22:06:31 +00:00
Xavier Arteaga 2b7ef9b4a8 SRSENB: Fixed rr.conf cell list example parsing errors and segfault 2019-11-08 17:33:35 +00:00
Francisco Paisana 56fdf047e6 added default cell_list config to the rr.conf, but commented 2019-11-08 17:33:35 +00:00
Francisco Paisana 37a9501db3 added scell parsing to the rr.conf 2019-11-08 17:33:35 +00:00
Francisco Paisana 35c9f02579 added quant cfg parsing and addition to measCfg 2019-11-01 15:48:47 +00:00
Francisco Paisana 7e62d6d1f9 added parser for rrc_cnfg section of rr.conf file, and dummy rrc_mobility class 2019-10-29 15:27:09 +00:00
Xavier Arteaga b3e8c4ae6a SRSENB: Schedule RI reporting 2019-09-30 15:15:18 +02:00
Harald Welte 756374419f SRSENB: Add SIB7 (GERAN neighbor) support
This adds the required missing bits to the eNB config file parser
to enable minimalistic support of parsing SIB7 configuration.

SIB7 contains GERAN (GSM) neighbor cell information, which is important
if you are operating a combined 2G+4G netowrk and want to assist the UEs
to reselect GSM cells once they move out of LTE coverage.

An example SIB7 section looks as follows:

sib7 = {
    t_resel_geran = 1;
    carrier_freqs_info_list =
    (
        {
            cell_resel_prio = 0;
            ncc_permitted = 255;
            q_rx_lev_min = 0;
            thresh_x_high = 7;
            thresh_x_low = 7;

            start_arfcn = 871;
            band_ind = "dcs1800";
            explicit_list_of_arfcns = ( 873, 875, 877 );
        }

    );
};

Closes: #357
2019-08-29 20:47:02 +02:00
Andre Puschmann e60a4490d2 streamline embms parameters and fix MCS selection 2019-07-21 22:27:17 +02:00
Ismael Gomez feafec2725 Fix srsENB PHY log and reorganized expert args 2019-07-17 12:40:57 +02:00
Andre Puschmann 4e86b2f6b2 introduce layerd architecture we use for UE to eNB
- this allows flexible use of different PHYs and radios
- use common radio_multi (moved to lib)
2019-07-12 04:17:56 +02:00
Francisco Paisana 58e2e51044 removed rlc_interfaces. The rlc_cnfg types are now part of the rrc_interface_types. Removed implicit RB initialization in the RLC. 2019-07-05 10:44:15 +02:00
Francisco Paisana b936629221 removed rrc asn1 header from bcd_helpers, from rlc_interface, and rlc tests 2019-07-05 10:44:15 +02:00
Francisco Paisana b04cb0deb9 using the new choice set api in UE and eNB RRC 2019-05-10 11:59:34 +02:00
Francisco Paisana e70e88b8b4 revert prach freq offset auto change 2019-04-29 21:05:13 +02:00
Francisco Paisana 1674c8939f automatically resolve invalid prach_offset for prb6 2019-04-29 15:53:59 +02:00
Andre Puschmann 4b01a2e4a0 update copyright notice 2019-04-29 09:20:02 +02:00
Ismael Gomez 7780b1aba5 add tdd/ca support 2019-04-25 20:57:58 +02:00
Francisco Paisana 41338293ea added a default radioframe alloc 2019-04-02 11:03:37 +02:00
Francisco Paisana be06f260db fixed issues in the parsing of sibs 2019-01-21 16:39:00 +00:00
Francisco Paisana 0204db2e12 new asn1 rrc library 2019-01-17 17:43:13 +01:00
Andre Puschmann c56fa3b46c only enable eMBMS if both the sib config is present and its enabled in enb config 2018-10-02 10:52:43 +02:00
Ismael Gomez 42e46bc599 Fix MBSFN section optional and default PRACH configuration for MBSFN example 2018-09-27 18:10:35 +02:00
Andre Puschmann b603125dea Revert "fix eNB config parsing issue causing eMBMS to be always disabled"
This reverts commit 09a47b51b2.

Causes issues when receiving PRACH from UE.
2018-09-26 17:56:37 +02:00
Andre Puschmann 09a47b51b2 fix eNB config parsing issue causing eMBMS to be always disabled 2018-09-26 11:29:36 +02:00
Ismael Gomez 13cba873d5 Make SIB2 mbsfn settings optional 2018-09-24 11:27:22 +02:00
yagoda 3e46e7fbab minor change to reintroduce mbms sib config parsing 2018-05-16 12:23:04 +02:00
yagoda e4c3f0bc30 adding mbms-gw and mch generation tables 2018-05-15 17:27:10 +02:00
yagoda 84f4996584 adding upper embms support to the enodeb 2018-05-15 17:13:30 +02:00
David Rupprecht 06d4559294 Change include path absolut to project dir 2018-04-01 18:08:24 +02:00
Ismael Gomez 2d9c101027 Check all DRB config parameters 2018-03-21 11:42:37 +01:00
Andre Puschmann dfe430a584 Merge branch 'next' 2018-02-01 16:35:53 +01:00
Xavier Arteaga 99ef760b6f More Coverity fixes 2018-01-31 16:49:14 +01:00
Andre Puschmann f3b1fe0f1a update for null-termination of strings fix 2018-01-30 15:19:26 +01:00
Andre Puschmann c8f9a7785a fix null-termination of strings 2018-01-30 14:13:16 +01:00
Xavier Arteaga a8a66cb214 Block TM1 with more than 1 antenna and TM2-4 with less than 2 antennas 2017-12-14 17:51:44 +01:00
Xavier Arteaga 0773220d86 Corrected bugs for running TM3 witha phone (up to 75Mbps@10MHz) 2017-12-06 10:25:51 +01:00
Xavier Arteaga dbf10cff17 Solved PDSCH Power Allocation p_b on eNB side 2017-11-22 18:01:13 +01:00