@@ -343,13 +343,15 @@ uplink_config srsran::config_helpers::make_default_ue_uplink_config(const cell_c
343343
344344 // >> PUCCH.
345345 auto & pucch_cfg = ul_config.init_ul_bwp .pucch_cfg .value ();
346- // PUCCH Resource Set ID 0.
346+
347+ // PUCCH Resource Set ID 0. This is for PUCCH Format 1 only (Format 0 not yet supported), used for HARQ-ACK only.
347348 auto & pucch_res_set_0 = pucch_cfg.pucch_res_set .emplace_back ();
348349 pucch_res_set_0.pucch_res_set_id = 0 ;
349350 pucch_res_set_0.pucch_res_id_list .emplace_back (0 );
350351 pucch_res_set_0.pucch_res_id_list .emplace_back (1 );
351352 pucch_res_set_0.pucch_res_id_list .emplace_back (2 );
352353
354+ // PUCCH Resource Set ID 1. This is for PUCCH Format 2 only and used for HARQ-ACK + optionally SR and/or CSI.
353355 auto & pucch_res_set_1 = pucch_cfg.pucch_res_set .emplace_back ();
354356 pucch_res_set_1.pucch_res_set_id = 1 ;
355357 pucch_res_set_1.pucch_res_id_list .emplace_back (3 );
@@ -381,15 +383,13 @@ uplink_config srsran::config_helpers::make_default_ue_uplink_config(const cell_c
381383 pucch_resource& res1 = pucch_cfg.pucch_res_list .back ();
382384 res1.res_id = 1 ;
383385 res1.starting_prb = 1 ;
384- res1.second_hop_prb = nof_rbs - res1.starting_prb - 1 ;
385386 // >>> PUCCH resource 2.
386387 pucch_cfg.pucch_res_list .push_back (res_basic);
387388 pucch_resource& res2 = pucch_cfg.pucch_res_list .back ();
388389 res2.res_id = 2 ;
389- res2.second_hop_prb = 1 ;
390- res2.starting_prb = nof_rbs - res2.second_hop_prb - 1 ;
390+ res2.starting_prb = nof_rbs - 2 ;
391391
392- // PUCCH resource format 2, for HARQ-ACK and CSI.
392+ // PUCCH resource format 2, for HARQ-ACK + optionally SR and/or CSI.
393393 // >>> PUCCH resource 3.
394394 pucch_resource res_basic_f2{
395395 .starting_prb = 2 , .second_hop_prb = 0 , .intraslot_freq_hopping = false , .format = pucch_format::FORMAT_2};
@@ -423,19 +423,27 @@ uplink_config srsran::config_helpers::make_default_ue_uplink_config(const cell_c
423423 pucch_resource& res8 = pucch_cfg.pucch_res_list .back ();
424424 res8.res_id = 8 ;
425425 res8.format_2 .starting_sym_idx = 10 ;
426+
427+ // PUCCH resource format 2, for CSI and optionally for SR.
426428 // >>> PUCCH resource 9.
427429 pucch_cfg.pucch_res_list .push_back (res_basic_f2);
428430 pucch_resource& res9 = pucch_cfg.pucch_res_list .back ();
429431 res9.res_id = 9 ;
430432 res9.format_2 .starting_sym_idx = 12 ;
431433
434+ // PUCCH resource format 1, for SR only.
432435 // >>> PUCCH resource 10.
433436 pucch_cfg.pucch_res_list .push_back (res_basic);
434437 pucch_resource& res10 = pucch_cfg.pucch_res_list .back ();
435438 res10.res_id = 10 ;
436439 res10.starting_prb = 0 ;
437440 res10.second_hop_prb = nof_rbs - 1 ;
438441
442+ pucch_cfg.pucch_res_list .push_back (res_basic);
443+ pucch_resource& res11 = pucch_cfg.pucch_res_list .back ();
444+ res11.res_id = 11 ;
445+ res11.starting_prb = nof_rbs - 3 ;
446+
439447 // TODO: add more PUCCH resources.
440448
441449 // >>> SR Resource.
0 commit comments