114 Commits (f2409534e492716ed3dbf5ee423f6f73e520dff4)

Author SHA1 Message Date
Francisco f2409534e4 nr,gnb,sched: Simplify sched api and locking design to better reflect the mac-phy FAPI interface
- removal of condition variables from sched main calls
- addition of sched sched::slot_indication call as a point of synchronization per slot
- removal of sched_worker_manager class
- removal of serv_cell_manager class
- centralization of cc-specific functionality and components in cc_worker
3 years ago
Andre Puschmann 5f837c0c67 enb,nr: rewrite UL PDU processing to handle CEs in reverse order but SDUs in order
this makes sure that C-RNTI CE gets processed before any SDU gets processed.
but it also makes sure that all SDUs then are processed in-order to
avoid reordering at higher layers.
3 years ago
Alejandro Leal Conejos 547ebf11f7 Fixes coverity 372880 3 years ago
Francisco 67a39fbb81 nr,sched: push BSRs into the scheduler when nr_phy_test is run with PUSCH enabled 3 years ago
Francisco e4247517d0 nr,sched: update sched_nr_test to support the new DL sched no-copy api 3 years ago
Andre Puschmann cf4b6d0bea sched_nr_interface: make PHY results a reference to avoid copying 3 years ago
Francisco 0663594aa1 nr,gnb,sched: add extra checks to sched to ensure the max nof grants is not exceeded 3 years ago
Francisco 327687cbc2 nr,sched: auto clear HARQs that exceeded maxretx, after the feedback has been processed 3 years ago
Francisco 3295449619 nr,gnb,sched: fix crash in debug mode due to incorrect is_lcid_valid check 3 years ago
faluco b8171e493e Fix crash in mac_nr when accesing the ue_db and not checking if the rnti is valid, while there fix a potential data race.
Fix data race inside sched_nr when modifying per ue metrics.
3 years ago
Carlo Galiotto a4932564d7 stdout: remove extra value from eNB stats + ...
address PR review
- change "TO DO" into "TODO"
- remove forgotten "printf" for debug

Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto 4e3564a8a2 mac,stdout: add PUSCH and PUCCH SINR to stdout
This commit implements the PUCCH and PUSCH metrics in the MAC,
to be displayed in the eNB console.

Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Andre Puschmann 146f12f0c0 enb,mac_nr: fix MAC PDU packing by tyring to pack multiple SDUs when possible
the patch adds support to fully use the available space in a MAC PDU by adding
multiple SDUs.
3 years ago
Francisco d5acf73c46 nr,gnb,sched: fix logging of tbs. check if sched args are supported at sched startup. change the tti logging to be equal to tti_rx 3 years ago
Francisco 9df6c6b936 sched,nr: ensure the ue_cfg_t passed to the scheduler in NR FDD mode has the correct harq delay 3 years ago
Francisco 64ffd81cf9 nr,sched: fix recomputation of ue_bwp_cfg when sched receives new ue_cfg objects 3 years ago
Francisco 964dce575b nr,sched: fix nof_harqs in NR scheduler to 8 3 years ago
Francisco 25eb44914e nr,sched: fix sched_args_t default values 3 years ago
Francisco 04d48127bb nr,sched: enable NR fixed mcs configuration via enb.conf 3 years ago
Carlo Galiotto a57ccdabf5 mac: move and check boolean from funcion to caller
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto 1a52cdcdaa mac: remove unused rwlock and unused cqi counter
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto f53e01cfa3 mac: apply changes by PR reviewers
- reinstate write_lock on ue metrics
- change "rwlock" variable name in mac_nr.h

Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto dc3e3a89f8 mac: update CQI in MAC with CSI reports from PHY
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Francisco c08bb6023c nr,sched,refactor: clear of unused typedefs and renaming of some types 3 years ago
Francisco 510e9f47a7 sched,nr: simplify metrics extraction from MAC
Allow some level of mutex contention between metrics and worker threads in accessing
internal scheduler variables.
3 years ago
Francisco 877b995a4d gnb,nr: add metrics for ack'd TBS in the gNB. 3 years ago
Francisco 7d4a5238f6 sched,nr: force R<0.9 by reducing mcs 3 years ago
Francisco Paisana efa2026a70 sched,nr: erase uneeded parameters from sched_nr_interface bwp_cft_t 3 years ago
Francisco Paisana b7f40b2baf rrc,nr: reenable CSI reporting in gNB 3 years ago
Ismael Gomez 410cec7557 NR: assume all zero LCG is SBSR with 0 is received 3 years ago
Francisco Paisana 55ea2cbcee sched,nr: fix harq delay derivation 3 years ago
Francisco Paisana 8ceb573ea7 mac,nr: avoid concurrency in update of pdsch/pusch slot 3 years ago
Carlo Galiotto f177a03605 sched,nr: add const to function input parameter
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
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>
3 years ago
Carlo Galiotto d18af603aa sched,nr: address comments in PR (code formatting)
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
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>
3 years ago
yagoda 82bda02b36 adding nr metrics 3 years ago
Francisco Paisana 28e25b12b4 sched,nr: add error checking and logging for invalid PIDs 3 years ago
Francisco Paisana d927b779dc sched,nr: implement methods to fill nzp csi-rs in scheduler 3 years ago
Francisco Paisana cbb709d4e3 sched,nr: function to log UEs buffer status before scheduling decision, fix const_iterator of circular_map 3 years ago
faluco fa351cd285 Rename functions that contain the unsafe word to nolock.
The term "unsafe" does not clearly state that the function is not locking the shared date and it sounds "dangerous", so use a more explicit term.
3 years ago
Francisco Paisana a952f0f62d sched,nr: expose sched nr UE bearer configuration in sched interface 3 years ago
Francisco Paisana bdf18856d1 sched,nr: fix handling of DL BSR in NR scheduler and computation of UCI 3 years ago
Francisco Paisana 70fe48a5ab sched,nr: change NR sched configuration api 3 years ago
Francisco Paisana a035ad144b mac,nr: create sched_nr object only at mac::init() 3 years ago
Andre Puschmann 7f897d83e2 gnb,mac_nr: push DL buffer state to scheduler 3 years ago
yagoda bc4388a78c -adding temp crnti removal for NR carrier attach 3 years ago
Francisco Paisana 3351e97aa2 nr,mac: use SR to send an UL grant after Msg3 and complete ContextResolution of UE NSA NR 3 years ago
Francisco Paisana e1a4e63ec8 sched,nr: use MAC-NR as prefix for NR scheduler 3 years ago
Francisco Paisana 00cc8fb8d8 sched,nr: ensure PUCCH is generated for SR even if the UE doesn't have any pending ACK 3 years ago