This commit is contained in:
2026-09-19 23:28:08 +09:00
parent c50fe1af53
commit 67717ed5c1
43 changed files with 3145 additions and 294 deletions
+12
View File
@@ -745,6 +745,7 @@ int main(int argc, char **argv)
.num_dlharq = 16,
.num_ulharq = 16,
.maxMIMO_layers = g_nrOfLayers,
.pdsch_dmrs_additional_position = 1,
.force_256qam_off = false,
.timer_config.sr_ProhibitTimer = 0,
.timer_config.sr_TransMax = 64,
@@ -1076,6 +1077,10 @@ int main(int argc, char **argv)
reset_sched_response(Sched_INFO, frame, slot, 0, 0);
clear_nr_nfapi_information(RC.nrmac[0], 0, frame, slot);
UE_info->UE_sched_ctrl.harq_processes[harq_pid].ndi = !(trial&1);
/* The high-rank PDSCH carries two independently HARQ-managed TBs.
* Advance both NDIs between independent trials; leaving CW1's NDI
* unchanged makes the UE treat every later trial as a retransmission. */
UE_info->UE_sched_ctrl.harq_processes[harq_pid].ndi2 = !(trial&1);
UE_info->UE_sched_ctrl.harq_processes[harq_pid].round = round;
// nr_schedule_ue_spec() requires the mutex to be locked
@@ -1702,6 +1707,13 @@ void update_dmrs_config(NR_CellGroupConfig_t *scg, int8_t* dmrs_arg)
NR_DMRS_DownlinkConfig_t *dmrs_config = (mapping_type == typeA) ? dmrs_MappingtypeA->choice.setup : dmrs_MappingtypeB->choice.setup;
/* Ranks 5--8 need the two-symbol Type-1 DMRS that provides ports 1000--1007.
* Keep that mandatory maxLength setting when -U changes only the additional
* DMRS position; otherwise the high-rank scheduler correctly rejects the
* inconsistent single-symbol configuration. */
if (g_nrOfLayers > 4)
asn1cCallocOne(dmrs_config->maxLength, NR_DMRS_DownlinkConfig__maxLength_len2);
if (add_pos != 2) { // pos0,pos1,pos3
if (dmrs_config->dmrs_AdditionalPosition == NULL) {
dmrs_config->dmrs_AdditionalPosition = calloc(1,sizeof(*dmrs_MappingtypeA->choice.setup->dmrs_AdditionalPosition));