701 Commits (31673d17971092cae55cc5e4d3d5742eeeb8cb6a)

Author SHA1 Message Date
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
Francisco Paisana ee209fc0a2 added a stack thread to the eNB and move the tti_clock() method to this thread to avoid race conditions 5 years ago
Xavier Arteaga 2e1479e9d6 SRSENB: Added PHY CA PRACH workers 5 years ago
Andre Puschmann 2f00fd62ec fix PDCP config in TTCN3 SS 5 years ago
Pedro Alvarez b7fdcaabc5 Starting to add reordering timers at PDCP NR entity. Timeout seems to be triggered correctly and pass the SDUs to the upper layers when it expires. First tests passing. 5 years ago
Francisco Paisana 35c9f02579 added quant cfg parsing and addition to measCfg 5 years ago
Francisco Paisana b6b1dd1814 extended mobility test 5 years ago
Francisco Paisana 427fdb83fe using std::make_tuple now to support old compilers. Move operator== definitions for meascfg types to rrc_asn1_types 5 years ago
Francisco Paisana 200e18ee3a added diff computation for reportconfig and measid. Tests passing 5 years ago
Francisco Paisana 1524e28c3a finished the function to compute diffs between cells/measObjs of two var_meas_cfg objects. Added tests for this. Now the update of a UE's var_meas_cfg is made via a shared pointer. 5 years ago
Francisco Paisana b7559171b7 added logic to insert cells from conf file into var_meas_cfg and calculate diffs between meas_objs 5 years ago
Francisco Paisana b88b8fde7b moved the carrier scheduler and tti_result_t classes out of the main sched class. Now it is possible to instantiate more than one carrier_sched per sched 5 years ago
Francisco Paisana 2019fec37a moved dl/ul scheduling to the a separate class carrier_sched 5 years ago
Francisco Paisana 00d24872d9 clang-format on all the scheduler files 5 years ago
Francisco Paisana c1f9d8768c started to implement separate SIB scheduler, and its tests. This is particualrly important for CA 5 years ago
Francisco Paisana 22f2781f28 fixed bug associated with the initialization of srsenb::rrc::ue. Disabled std::map::operator[] as a result 5 years ago
Francisco Paisana d5a2114320 added a default configuration to the rr.conf for meas cells 5 years ago
Francisco Paisana 7e62d6d1f9 added parser for rrc_cnfg section of rr.conf file, and dummy rrc_mobility class 5 years ago
Francisco Paisana b0d2584795
Merge pull request #735 from softwareradiosystems/pr_sched_changes
Scheduler changes
5 years ago
Francisco Paisana 8440126d35 removal of srslte::timers class 5 years ago
Francisco Paisana d2c56caf7e applied new timer class to the whole code base 5 years ago
Francisco Paisana 6aec98e140 cleanup of some type names, and other minor changes 5 years ago
Francisco Paisana c19e0d9423 moved the RAR/Msg3 scheduling to a separate class 5 years ago
Francisco Paisana 388776d1fa provided a general way to access ue_db from the scheduler - part2 5 years ago
Francisco Paisana e0b8be61e5 provided a general way to access ue_db from the scheduler 5 years ago
Francisco Paisana d79e49ed4c moved the BC scheduling to a separate class/file 5 years ago
Francisco Paisana 837c16557f started to implement separate SIB scheduler, and its tests. This is particualrly important for CA 5 years ago
Francisco Paisana 84ac16826f modernized the scheduler code, and removed some clang-tidy warnings 5 years ago
Francisco Paisana ad0b3ce6e2 modernize the random sched test 5 years ago
Ismael Gomez 3828e03f33
Refactor in eNodeB, add channel emulator and fixes in OFDM
* Added channel emulator to srsENB. Added support for fixed delay

* Bug in OFDM when using nonguru mode

* A few changes and refactor in eNodeB
5 years ago
Xavier Arteaga 73517f981e Minor fixes 5 years ago
Xavier Arteaga 423475173d Refactored magnitude and argument extraction from sf_worker 5 years ago
Xavier Arteaga f9a795e985 SRSENB: cleanup and mutex rearange 5 years ago
Xavier Arteaga 8e92baf401 SRSENB: quitsafter entering 'q\n' 5 years ago
Xavier Arteaga 10480f62b3 SRSENB: Split sf_worker and cc_worker 5 years ago
Xavier Arteaga 4238c045a4 fix unitialised value 5 years ago
Xavier Arteaga ce9bcc1033 fix unitialised value 5 years ago
Ismael Gomez 1d83bb08e2 Changes in ACK procedure to support CA. Tested 1 cell in SISO/MIMO 5 years ago
Francisco Paisana a2f1998350 fix issue with thread pool shut down 5 years ago
Francisco Paisana 6db0e474be moved RA waiting procedure to a background task of the stack thread pool 5 years ago
Xavier Arteaga b3e8c4ae6a SRSENB: Schedule RI reporting 5 years ago
Ismael Gomez 9325aaddf2 Do not change master clock rate if not necessary. Hint in ue/enb configs for low BW cells 5 years ago
Andre Puschmann a2ab043c0d fix memleaks and uninitialized vars found by cppcheck 5 years ago
Ismael Gomez 6bb0790cf1
Fix coverty issues (#652) 5 years ago
Pedro Alvarez 004db4a067 Applied clang-format to zuc_support PR. 5 years ago
Pedro Alvarez 1ae8ccda8c Added EIA3 and EEA3 to default UE capabilities to srsUE. Added parsers for EEA3/EIA3 config options in srsENB and srsEPC 5 years ago
Andre Puschmann 49279c89d8 send DL-DCCH on SRB2 after it has been established 5 years ago
Harald Welte 2e426948fe [ENB] Add CFSB support
This commit introduces CSFB (circuit switched fall-back) capabilities to
srsLTE.  Actually, all the eNB has to do is to send a
RrcConnectionRelease with the RedirectedCarrierInfo IE.

The MME triggers this by the S1AP CS Fallback Indicator IE, which may
be present either in the Initial Context Setup Requst or in the
UE Context Modification Request.

As srsLTE has no support for the UE Context Modification Request at all
yet (!), basic support for this message is introduced in this patch.

Both Mobile Originated and Mobile Terminated CSFB with a coupel of
different UE models have been verified using this patch in a setup
consisting of srsENB attached to an undisclosed EPC connected via SGsAP
to a complete  Osmocom 2G network.

Closes: #358
Closes: #363
5 years ago
Ismael Gomez c92c61d560
Optimized front-end logging processing (#641)
Avoid memory allocation and stringstream in log frontend calls (executed from worker threads). Uses a buffer pool of fixed buffer and vsnprintf
5 years ago
Francisco Paisana 67d6a25194 Moving mac timers to stack timers (#638)
* first step towards moving MAC timers to stack. Mac is still using its own timers. srslte::timers class can be restructured.

* moved timers out of the UE MAC
5 years ago
Francisco Paisana 116dc0a57b fixed group extensions, removed extra presence flag for copy_ptr<T> types as it was just a source of bugs. 5 years ago
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
5 years ago
Andre Puschmann 343c30be4a fix RF metrics/logging in eNB 5 years ago
Harald Welte 44977bcdec [ENB] enb.conf.example: Mention WRITE_SIB_PCAP
The documentation talks about a MAC protocol trace, but in fact
it is only a protocol trace of dedicated channels.  There's a related
define in the source code, but that's not documented.

Let's at least make the user aware that the MAC pcap trace is
for dedicated channels only, unless he uses that #define.
5 years ago
Harald Welte d01dd7fb91 [ENB] Fix builds with #define WRITE_SIB_PCAP
Building with WRITE_SIB_PCAP was broken in April 2019 in commit
7780b1aba5.  Let's make it work again.
5 years ago
Harald Welte 844994f2cd [ENB] Fix enabling of MAC pcap file
when using

[pcap]
enable = true
filename = /tmp/enb.pcap

in enb.conf, there is no pcap file created.

The problem is somewhere in the way how arguments are handled.
pcap.enable is properly parsed into args.pcap.  However, later on,
lte_stack->init(args.stack, rrc_cfg, lte_phy.get()) only passes
args.stack down the road, not args.pcap.  enb_stack_lte::init() then
basically uses args.stack.pcap and not args.pcap, and the latter appears
always false.

Let's remove pcap_args_t from all_args and only use the instance in
stack_args_t.

Closes: #359
5 years ago
Pedro Alvarez 6efa944b5e Removed srslte prefix from pdcp_config_t 5 years ago
Pedro Alvarez 494be243c0 Changed security direction to use an enum. 5 years ago
Pedro Alvarez f90b69e5f4 More clang-format for PDCP 5 years ago
Pedro Alvarez 964db869a6 Fix mistake in configuring SRB1's PDCP. 5 years ago
Pedro Alvarez d3b6828082 Changed PDCP configuration to explicitly have tx and rx direction. Decrypt on PDCP NR seems fine. 5 years ago
Pedro Alvarez 73e30743d1 Added enum to PDCP config to replace two bools. 5 years ago
Pedro Alvarez 457f35699d Reverted back to a single config structure between PDCP NR and PDCP LTE. 5 years ago
Pedro Alvarez 005d03cb1a Starting to split pdcp_entity into pdcp_entity_lte and pdcp_entity_nr to support NR PDCP 5 years ago
Andre Puschmann e0bd7f156d replace remaining warning macros with pragma message 5 years ago
Andre Puschmann 09610ce788 add type setter to sch_subh and use it for MCH PDUs 5 years ago
Andre Puschmann e60a4490d2 streamline embms parameters and fix MCS selection 5 years ago