From 2c1f32b6e60bddbd8200355c4b8597887d1b6343 Mon Sep 17 00:00:00 2001 From: luis_pereira87 <lpereira@allbesmart.pt> Date: Fri, 28 Jun 2024 23:11:36 +0100 Subject: [PATCH] Do not extract CSI report if PUCCH format 2 CRC check fails in polar decoder This fix prevents the scheduler to process a wrong CSI feedback message, for example, it avoids the scheduler to compute a wrong MCS from CQI or a wrong RI from CQI --- openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_uci.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_uci.c b/openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_uci.c index 3134ec3cda7..1e133a028b6 100644 --- a/openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_uci.c +++ b/openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_uci.c @@ -1116,10 +1116,12 @@ void handle_nr_uci_pucch_2_3_4(module_id_t mod_id, } /* phy-test has hardcoded allocation, so no use to handle CSI reports */ if ((uci_234->pduBitmap >> 2) & 0x01 && !get_softmodem_params()->phy_test) { - //API to parse the csi report and store it into sched_ctrl - extract_pucch_csi_report(csi_MeasConfig, uci_234, frame, slot, UE, nrmac->common_channels->ServingCellConfigCommon); - //TCI handling function - tci_handling(UE,frame, slot); + if (uci_234->csi_part1.csi_part1_crc != 1) { + // API to parse the csi report and store it into sched_ctrl + extract_pucch_csi_report(csi_MeasConfig, uci_234, frame, slot, UE, nrmac->common_channels->ServingCellConfigCommon); + // TCI handling function + tci_handling(UE, frame, slot); + } free(uci_234->csi_part1.csi_part1_payload); } if ((uci_234->pduBitmap >> 3) & 0x01) { -- GitLab