Commit Graph

8762 Commits

Author SHA1 Message Date
Andre Puschmann fc35c0ee51 enb,nsa: fix packing of DL MAC PDUs
* use byte_buffer_t as interface type for DL PHY-MAC interface
* fix missing clear() for new DL tx
2021-08-05 10:28:29 +02:00
Andre Puschmann 4a828be39f rlc_am_test: fix reestablishment test
after changing the retx counting we receive one SDU more than before
2021-08-04 13:06:38 +02:00
Andre Puschmann 7726acad41 rlc_am_lte: fix counting of retx of entire PDUs and PDU segments
this patch fixes a bug discovered in a real network where the DL CQI of a
user degraded repidly in very short time. A relativly big RLC PDU that
was still sent with the good CQI in a big grant now needs to be split
across many tiny segments because the CQI degraded so much.

The retx couting for each transmitted segment caused the retx counter to
reach maxRetx quickly.

With this patch we do not increment the retx counter for each transmitted
PDU or segment of a PDU but instead only increment the counter when
a given SN is added to the retx queue. This can happen either:
a) if the SN is negativly acknowledged and was not already on the retx queue,
b) no new data is available for tx and a SN is selected for retx.

This is in accordance with TS 36.322 which handles retx counting in section
5.2.1 according to the above description.
2021-08-04 13:06:38 +02:00
Xavier Arteaga cba6df3722 Extended NR PHY robustnes against wrong RRC configuration 2021-08-03 17:30:08 +02:00
Xavier Arteaga d518f6da46 Added gNb RRC missing fields 2021-08-03 17:30:08 +02:00
Xavier Arteaga de89e829e7 Added NR PUCCH Resource ASN1 helper 2021-08-03 17:30:08 +02:00
Xavier Arteaga 3ae131b336 gNb creates PUSCH decode PDU 2021-08-03 17:30:08 +02:00
Xavier Arteaga ac39607c22 Add HARQ codebook configuration in GNB RRC 2021-08-03 10:47:40 +02:00
Xavier Arteaga 0ca70e6ad7 Implement enb to gnb number of PRB conversion 2021-08-03 10:47:40 +02:00
Xavier Arteaga 98f29961bc Fix old GCC compilation 2021-08-03 10:46:13 +02:00
Xavier Arteaga 856573b92f Added 4096 symbol size as LTE rate 2021-08-03 10:46:13 +02:00
Xavier Arteaga 6707ec9928 Introduced multiple BW for PHY DL NR test 2021-08-03 10:46:13 +02:00
Xavier Arteaga b728367149 Fix Scheduler NR cell config generator for variable number of PRB 2021-08-03 10:46:13 +02:00
Xavier Arteaga 54e1fe172c Minor NR PHY aesthetical modifications 2021-08-03 10:46:13 +02:00
Xavier Arteaga ce0cd230bb Reduced NR PHY test PDSCH MCS to 27 2021-08-03 10:46:13 +02:00
Xavier Arteaga 956c4f8266 Added PHY NR test TDD FR1.15-1 pattern 2021-08-03 10:46:13 +02:00
Xavier Arteaga dfa323df6b Added 20MHz default configuration 2021-08-03 10:46:13 +02:00
Xavier Arteaga ea802c23f2 Remove PHY lib verbose from test and use byte vector random function 2021-08-03 10:46:13 +02:00
Xavier Arteaga 4bc7df45c6 Added R.PDSCH.2-1.1 TDD reference for NZP-CSI-RS testing 2021-08-03 10:46:13 +02:00
Xavier Arteaga 1b50758bd5 Initial NZP-CSI default configuration from TS38.101-4 2021-08-03 10:46:13 +02:00
Xavier Arteaga 64885a6741 Added PDSCH debug trace in slot worker 2021-08-03 10:46:13 +02:00
Alejandro Leal Conejos 184f51486e Added new line to split the header from the actual code. 2021-08-03 10:37:42 +02:00
Andre Puschmann be81fda08d phy: move initial NR config into init_nr() helper 2021-08-02 15:18:47 +02:00
Andre Puschmann 0a40880a9f fix typo 2021-08-02 15:18:47 +02:00
Andre Puschmann 6148ed043e rrc_nr: hard-code new UE id to 0x4602 2021-08-02 15:18:47 +02:00
Andre Puschmann 28668aac34 ue,proc_ra_nr: add temporary flag to skip RAR reception
this will be removed again as soon as the eNB supports full RAR
transmission.
2021-08-02 15:18:47 +02:00
Andre Puschmann 7e38a5119b enb: fix log IDs and default params 2021-08-02 15:18:47 +02:00
Andre Puschmann f1658cbf98 enb,mac_nr: fix handling of UCI data from PHY 2021-08-02 15:18:47 +02:00
Andre Puschmann 2adb1c0723 sched_nr_worker: make cond var to sync workers an integer
the boolean isn't enough for more than 2 PHY workers, replace by int
2021-08-02 15:18:47 +02:00
Andre Puschmann 3b5344b0f7 thread_pool: add optional ID to thread pool
this allows to prepend an ID to each thread pool to
better differentiate workers from different pools
2021-08-02 15:18:47 +02:00
Andre Puschmann 4d9d882d75 phy_common: fix getter for nof PRB and ports for NR carriers 2021-08-02 15:18:47 +02:00
Andre Puschmann c0163d7389 nr,slot_worker: add mutex to protect class from concurrent access
detected during debug while slot_worker was still initialized on the
main process, the PHY workers were already running and accessing
class members
2021-08-02 15:18:47 +02:00
Andre Puschmann 2656014f43 rrc_nr,enb: fix ARFCN values in RRC reconfig 2021-08-02 15:18:47 +02:00
Andre Puschmann 99eb671db2 prach_worker: fix PRACH plotting for NR 2021-08-02 15:18:47 +02:00
Andre Puschmann 38f1e158a5 enb,nr: fix NR PHY PRACH init and MAC-PHY interaction 2021-08-02 15:18:47 +02:00
Andre Puschmann d78cbdf9bb ue,proc_ra_nr: fix retransmission of PRACH after failed RAR rx
if the backoff value is calculated to be zero, don't start
a timer but tx new preamble directly
2021-08-02 15:18:47 +02:00
Andre Puschmann ffc63ea270 enb: use band_helper to derive freqencies for NR carrier 2021-08-02 15:18:47 +02:00
Andre Puschmann 1329bb336e rrc_nr: fix packing reconfig packing error 2021-08-02 15:18:47 +02:00
Andre Puschmann de60df9693 enb: initialize NR PHY in eNB
add required calls to initialize NR PHY alongside with LTE PHY
2021-08-02 15:18:47 +02:00
Andre Puschmann 519de5f84b rrc_ue: disable warning when RRC receives UE cap info that is not EUTRA 2021-08-02 15:18:47 +02:00
Xavier Arteaga a300a47673 Fix value selector for NEON 2021-08-02 11:10:25 +02:00
Andre Puschmann 99dc94ab38 nas: make state variables atomics
NAS states and substates maybe be requested from other threads so
they need to be protected.

Note that the caller still needs to hold it's own mutex if different
actions are required based on the state.
2021-08-01 11:41:11 +02:00
Xavier Arteaga 42b052112f Added TS reference and use SRSRAN_CEI_LOG2 macro 2021-07-30 20:23:09 +02:00
Xavier Arteaga 1f495cb008 Added generic SRSRAN_CEIL_LOG2 2021-07-30 20:23:09 +02:00
Andre Puschmann fd3a7ce098 sched_nr_ue: fix uninitialized values 2021-07-30 20:23:09 +02:00
Andre Puschmann b6f8280f67 cqi: protect potential div by zero bug 2021-07-30 20:23:09 +02:00
Xavier Arteaga d4f1839991 Increase enb_phy_test flush time 2021-07-30 16:15:21 +02:00
Xavier Arteaga f02e07c140 Fix enb worker concurrency 2021-07-30 16:15:21 +02:00
Xavier Arteaga 43ed5c2ad4 Add crash handler to enb_phy_test 2021-07-30 16:15:21 +02:00
David Rupprecht 7838b3c935 Fixed run_lte.sh script enb parameter 2021-07-30 09:33:05 +02:00