Commit Graph

8954 Commits

Author SHA1 Message Date
Francisco Paisana f97b92abd0 sched,nr: fix nzp csi rs allocation in NR scheduler 2021-10-04 14:44:35 +02:00
Francisco Paisana 55ea2cbcee sched,nr: fix harq delay derivation 2021-10-04 14:44:35 +02:00
Francisco Paisana f22483ce72 sched,nr: use formatting %d to represent slot index 2021-10-04 13:43:56 +02:00
Francisco Paisana 8ceb573ea7 mac,nr: avoid concurrency in update of pdsch/pusch slot 2021-10-04 12:24:51 +02:00
Andre Puschmann ea21232f61 ue,rrc_nr: fix SSB config warning
first read freqInfoDL then try to build SSB config
2021-10-04 12:12:32 +02:00
Carlo Galiotto f177a03605 sched,nr: add const to function input parameter
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-04 11:44:25 +02:00
Carlo Galiotto 9887c17c17 sched,nr: move ssb_sched test to different file...
and also:
- correct half-frame bit in MIB package
- rename slot_index variable in ssb_sched function

Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-04 11:44:25 +02:00
Carlo Galiotto d18af603aa sched,nr: address comments in PR (code formatting)
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-04 11:44:25 +02:00
Carlo Galiotto bc7c21b8c3 sched,nr: add test case for SSB scheduling
The SSB test checks whether, with the given periodicity, the
SSB grant is present within the dl_sched structure passed to the PHY.
It also checks that the SSB grant is not scheduled outside
the required time slots.

NOTE: The test is a modified version of an existing scheduler test.

Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-04 11:44:25 +02:00
Carlo Galiotto fd4b368f71 sched,nr: handle case of ssb_periodicity not given
If the parameter ssb_periodicity is not given by higher layers,
the function needs to handle this case. The parameters could be
passed with 0 value, which makes the function crash.

For the time being, if ssb_periodicity is not given, the std value
5 ms will be used.

Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-04 11:44:25 +02:00
Carlo Galiotto 9d864bbe55 sched,nr: add function that schedule SSB
Notes:
- NOT YET TESTED
- Requires rebase on commit with PHY changes to work

Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-04 11:44:25 +02:00
Xavier Arteaga c9d7db7314 Minor changes 2021-10-04 10:28:34 +02:00
Xavier Arteaga e3bd92d87c Fix SSB pattern in UE 2021-10-04 10:28:34 +02:00
Xavier Arteaga 8f90ee847a Refactor carrier frequency from PHY and fix OFDM phase compensation 2021-10-04 10:28:34 +02:00
Xavier Arteaga fda35bf6a1 Initial OFDM carrier phase compensation 2021-10-04 10:28:34 +02:00
Xavier Arteaga 2ab3971ef1 Fix NR PBCH encoding/decoding 2021-10-04 10:28:34 +02:00
Xavier Arteaga 530b381c6c Change NR PDSCH/PUSCH freq/time resource format in log 2021-10-04 10:28:34 +02:00
Ismael Gomez 6b506ec357
phy_common: clear tx_hold flag before releasing the semaphore (#3342) 2021-10-03 20:05:38 +02:00
Andre Puschmann f8d55a6fd3 Refactor rrc nr. 2021-10-03 14:20:42 +02:00
yagoda 82bda02b36 adding nr metrics 2021-10-03 13:06:59 +02:00
Andre Puschmann 86938e8474 sched_nr_cfg: bump fixed UL MCS to 28 2021-10-03 12:07:18 +02:00
Andre Puschmann 1937e4d7fc ssb: add extra checks when configuring SSB
this is to avoid invalid configs that later on cause segfaults, etc.

e.g.:

    0 0x7f397adf64a3  (/lib/x86_64-linux-gnu/libc.so.6+0xbb4a3)
    1 0x7f397cc8c6ce  (/usr/lib/x86_64-linux-gnu/libasan.so.4+0x796ce)
    2 0x55b921d61707 in srsran_vec_cf_copy /mnt/data/jenkins/workspace/srslte_ogt_trial_builder_x86-ubuntu1804-asan/srsLTE/lib/src/phy/utils/vector.c:226
    3 0x55b921d3b1d4 in ssb_demodulate /mnt/data/jenkins/workspace/srslte_ogt_trial_builder_x86-ubuntu1804-asan/srsLTE/lib/src/phy/sync/ssb.c:632
    4 0x55b921d3d8ce in srsran_ssb_csi_measure /mnt/data/jenkins/workspace/srslte_ogt_trial_builder_x86-ubuntu1804-asan/srsLTE/lib/src/phy/sync/ssb.c:905
    5 0x55b9215dc20f in srsue::nr::cc_worker::measure_csi() /mnt/data/jenkins/workspace/srslte_ogt_trial_builder_x86-ubuntu1804-asan/srsLTE/srsue/src/phy/nr/cc_worker.cc:373
    6 0x55b9215dd216 in srsue::nr::cc_worker::work_dl() /mnt/data/jenkins/workspace/srslte_ogt_trial_builder_x86-ubuntu1804-asan/srsLTE/srsue/src/phy/nr/cc_worker.cc:483
    7 0x55b9215f9c69 in srsue::nr::sf_worker::work_imp() /mnt/data/jenkins/workspace/srslte_ogt_trial_builder_x86-ubuntu1804-asan/srsLTE/srsue/src/phy/nr/sf_worker.cc:78
    8 0x55b921c47cc6 in srsran::thread_pool::worker::run_thread() /mnt/data/jenkins/workspace/srslte_ogt_trial_builder_x86-ubuntu1804-asan/srsLTE/lib/src/common/thread_pool.cc:48
    9 0x55b92152ea0b in srsran:🧵:thread_function_entry(void*) /mnt/data/jenkins/workspace/srslte_ogt_trial_builder_x86-ubuntu1804-asan/srsLTE/lib/include/srsran/common/threads.h:103
    10 0x7f397c9fb6da in start_thread (/lib/x86_64-linux-gnu/libpthread.so.0+0x76da)
    11 0x7f397ae5c71e in __clone (/lib/x86_64-linux-gnu/libc.so.6+0x12171e)
2021-10-02 17:58:16 +02:00
faluco 666cb73cc9 Fix data race in phy_common::set_neighbour_cells. 2021-10-02 17:40:34 +02:00
faluco 72088dadb5 Fix race conditions in intra measure class. 2021-10-02 17:40:34 +02:00
Andre Puschmann 782aefa553 enb,rrc: derive ENDC configuration from cell config
* move ENDC config struct to main RRC config (same for all UEs)
* remove hard-coded measurement config for NR carrier
* now both TDD and FDD cells are correctly handled
2021-10-02 17:39:19 +02:00
Fabian Eckermann eb294fd4e3 Add phy object to rrc_nr_test. 2021-10-01 19:21:08 +02:00
Fabian Eckermann 992d1bb02a Configure PHY from RRC. 2021-10-01 19:21:08 +02:00
Xavier Arteaga 1aa65bd10c HOTFIX: force DFT wisdom save at exit 2021-10-01 18:06:37 +02:00
Francisco Paisana 28e25b12b4 sched,nr: add error checking and logging for invalid PIDs 2021-10-01 17:35:54 +02:00
Francisco Paisana 14b3a65dfe sched,nr: fix assignment of PID for PUSCH grants that the scheduler outputs 2021-10-01 17:35:54 +02:00
Andre Puschmann 2b1be3dbce enb,rrc_nr: fix wrong fmt formater 2021-10-01 12:34:05 +02:00
Andre Puschmann 3cd2de1ffe ue,rrc_nr: accept RRC Reconfigs with disable NZP and ZP configs 2021-10-01 12:21:54 +02:00
Andre Puschmann a66994aa80 gnb,rrc: disable NZP and ZP CSI configs 2021-10-01 12:21:54 +02:00
Fabian Eckermann 1018e7ae1c fix validation of ul_arfcn. 2021-10-01 10:56:57 +02:00
Fabian Eckermann 93eb6e93d9 Read band from rr config. 2021-10-01 10:56:57 +02:00
Ismael Gomez a1294ed06a srsgnb: use lcg=3 for as a default for drb. Pass lcg to MAC config 2021-10-01 10:00:36 +02:00
Francisco Paisana 78dad52cc8 rrc,nr,gnb: disable CQI configuration in gNB until gNB PHY supports it 2021-09-30 11:34:22 +02:00
Francisco Paisana a64750e1be rrc,nr,gnb: fix number of PDCCH candidates in search space 2021-09-30 11:34:22 +02:00
Andre Puschmann bf2606f94e ue,mac_nr: fix race condition by using thread-safe RNTI class 2021-09-30 10:36:29 +02:00
Fabian Eckermann e02218e4ab configure phy to be tdd by default (currently static). 2021-09-29 22:31:23 +02:00
Fabian Eckermann 077f9cd03e Add test for get_abs_freq_point_a_arfcn. 2021-09-29 22:31:23 +02:00
Fabian Eckermann 7f7cfe687d fix calculation. 2021-09-29 22:31:23 +02:00
Ismael Gomez 91401ae3a4 Fix meascfg test 2021-09-29 21:39:56 +02:00
Ismael Gomez 7bc8bb8500 combine all report configuration with all measurement objects 2021-09-29 21:39:56 +02:00
Ismael Gomez ada05ea0c8 Add A1, A2 and A4 measurement Reports event triggers 2021-09-29 21:39:56 +02:00
Ismael Gomez 04db8c6bbf Log measurementReport before checking if it's valid 2021-09-29 21:39:56 +02:00
Ismael Gomez c09f09b7be Move rrc_common from srsue to lib 2021-09-29 21:39:56 +02:00
Fabian Eckermann 8830c2796f Add support for NSA FDD on band n3, n5 and n7. 2021-09-29 16:03:44 +02:00
Fabian Eckermann 9b1d783812 Code formatting. 2021-09-29 16:03:44 +02:00
Fabian Eckermann 2d0be77660 Add helper functions for abs freq point a. 2021-09-29 16:03:44 +02:00