Merge remote-tracking branch 'origin/config_sa_mode' into integration_2024_w45 (!3024)
Set SA mode as default - Set standalone (SA) mode as the default. - Adjust commands in Docker Compose files by removing --sa flags and adding --nsa flags where applicable. - Add a function to verify that only one mode is being used at a time. - Update all relevant documentation.
This commit is contained in:
@@ -161,7 +161,7 @@ NR_UE_MAC_INST_t *nr_l2_init_ue(int nb_inst)
|
||||
mac->ue_id = j;
|
||||
nr_ue_init_mac(mac);
|
||||
nr_ue_mac_default_configs(mac);
|
||||
if (get_softmodem_params()->sa)
|
||||
if (IS_SA_MODE(get_softmodem_params()))
|
||||
ue_init_config_request(mac, get_softmodem_params()->numerology);
|
||||
}
|
||||
|
||||
|
||||
@@ -783,7 +783,7 @@ void nr_ue_get_rach(NR_UE_MAC_INST_t *mac, int CC_id, frame_t frame, uint8_t gNB
|
||||
ra->Msg3_size = size_sdu + sizeof(NR_MAC_SUBHEADER_SHORT) + sizeof(NR_MAC_SUBHEADER_SHORT);
|
||||
}
|
||||
|
||||
} else if (!get_softmodem_params()->sa) {
|
||||
} else if (!IS_SA_MODE(get_softmodem_params())) {
|
||||
uint8_t temp_pdu[16] = {0};
|
||||
size_sdu = nr_write_ce_ulsch_pdu(temp_pdu, mac, 0, &(mac->crnti), NULL, NULL, NULL);
|
||||
ra->Msg3_size = size_sdu;
|
||||
|
||||
@@ -3810,7 +3810,7 @@ int nr_write_ce_ulsch_pdu(uint8_t *mac_ce,
|
||||
pdu, mac_ce);
|
||||
}
|
||||
|
||||
if (crnti && (!get_softmodem_params()->sa && get_softmodem_params()->do_ra && mac->ra.ra_state != nrRA_SUCCEEDED)) {
|
||||
if (crnti && (!IS_SA_MODE(get_softmodem_params()) && get_softmodem_params()->do_ra && mac->ra.ra_state != nrRA_SUCCEEDED)) {
|
||||
LOG_D(NR_MAC, "In %s: generating C-RNTI MAC CE with C-RNTI %x\n", __FUNCTION__, (*crnti));
|
||||
|
||||
// MAC CE fixed subheader
|
||||
|
||||
@@ -437,7 +437,7 @@ static void config_common(gNB_MAC_INST *nrmac,
|
||||
+ (get_N_RA_RB(cfg->prach_config.prach_sub_c_spacing.value,
|
||||
frequencyInfoUL->scs_SpecificCarrierList.list.array[0]->subcarrierSpacing)
|
||||
* i);
|
||||
if (get_softmodem_params()->sa) {
|
||||
if (IS_SA_MODE(get_softmodem_params())) {
|
||||
prach_fd_occasion->k1.value =
|
||||
NRRIV2PRBOFFSET(scc->uplinkConfigCommon->initialUplinkBWP->genericParameters.locationAndBandwidth, MAX_BWP_SIZE)
|
||||
+ rach_ConfigCommon->rach_ConfigGeneric.msg1_FrequencyStart
|
||||
@@ -743,7 +743,7 @@ void nr_fill_sched_osi(gNB_MAC_INST *nrmac, const struct NR_SetupRelease_PDCCH_C
|
||||
|
||||
void nr_mac_configure_sib1(gNB_MAC_INST *nrmac, const f1ap_plmn_t *plmn, uint64_t cellID, int tac)
|
||||
{
|
||||
AssertFatal(get_softmodem_params()->sa > 0, "error: SIB1 only applicable for SA\n");
|
||||
AssertFatal(IS_SA_MODE(get_softmodem_params()), "error: SIB1 only applicable for SA\n");
|
||||
|
||||
NR_COMMON_channels_t *cc = &nrmac->common_channels[0];
|
||||
NR_ServingCellConfigCommon_t *scc = cc->ServingCellConfigCommon;
|
||||
@@ -755,7 +755,7 @@ void nr_mac_configure_sib1(gNB_MAC_INST *nrmac, const f1ap_plmn_t *plmn, uint64_
|
||||
|
||||
void nr_mac_configure_sib19(gNB_MAC_INST *nrmac)
|
||||
{
|
||||
AssertFatal(get_softmodem_params()->sa > 0, "error: SIB19 only applicable for SA\n");
|
||||
AssertFatal(IS_SA_MODE(get_softmodem_params()), "error: SIB19 only applicable for SA\n");
|
||||
NR_COMMON_channels_t *cc = &nrmac->common_channels[0];
|
||||
NR_ServingCellConfigCommon_t *scc = cc->ServingCellConfigCommon;
|
||||
NR_BCCH_DL_SCH_Message_t *sib19 = get_SIB19_NR(scc);
|
||||
|
||||
@@ -221,7 +221,7 @@ void gNB_dlsch_ulsch_scheduler(module_id_t module_idP, frame_t frame, sub_frame_
|
||||
|
||||
// This schedules SIB1
|
||||
// SIB19 will be scheduled if ntn_Config_r17 is initialized
|
||||
if (get_softmodem_params()->sa == 1) {
|
||||
if (IS_SA_MODE(get_softmodem_params())) {
|
||||
schedule_nr_sib1(module_idP, frame, slot, &sched_info->DL_req, &sched_info->TX_req);
|
||||
if (cc->sib19)
|
||||
schedule_nr_sib19(module_idP, frame, slot, &sched_info->DL_req, &sched_info->TX_req, cc->sib19_bcch_length, cc->sib19_bcch_pdu);
|
||||
|
||||
@@ -2291,7 +2291,7 @@ void nr_clear_ra_proc(NR_RA_t *ra)
|
||||
NR_SCHED_ENSURE_LOCKED(&RC.nrmac[0]->sched_lock);
|
||||
memset(ra, 0, sizeof(*ra));
|
||||
ra->ra_state = nrRA_gNB_IDLE;
|
||||
if (get_softmodem_params()->sa) { // in SA, prefill with allowed preambles
|
||||
if (IS_SA_MODE(get_softmodem_params())) { // in SA, prefill with allowed preambles
|
||||
ra->preambles.num_preambles = MAX_NUM_NR_PRACH_PREAMBLES;
|
||||
for (int i = 0; i < MAX_NUM_NR_PRACH_PREAMBLES; i++)
|
||||
ra->preambles.preamble_list[i] = i;
|
||||
|
||||
@@ -187,7 +187,7 @@ void schedule_nr_mib(module_id_t module_idP, frame_t frameP, sub_frame_t slotP,
|
||||
const int prb_offset = offset_pointa >> scs;
|
||||
schedule_ssb(frameP, slotP, scc, dl_req, i_ssb, beam_index, ssbSubcarrierOffset, offset_pointa, mib_pdu);
|
||||
fill_ssb_vrb_map(cc, prb_offset, ssbSubcarrierOffset, ssb_start_symbol, CC_id, beam.idx);
|
||||
if (get_softmodem_params()->sa == 1) {
|
||||
if (IS_SA_MODE(get_softmodem_params())) {
|
||||
get_type0_PDCCH_CSS_config_parameters(&gNB->type0_PDCCH_CSS_config[i_ssb],
|
||||
frameP,
|
||||
mib,
|
||||
@@ -219,7 +219,7 @@ void schedule_nr_mib(module_id_t module_idP, frame_t frameP, sub_frame_t slotP,
|
||||
const int prb_offset = offset_pointa >> scs;
|
||||
schedule_ssb(frameP, slotP, scc, dl_req, i_ssb, beam_index, ssbSubcarrierOffset, offset_pointa, mib_pdu);
|
||||
fill_ssb_vrb_map(cc, prb_offset, ssbSubcarrierOffset, ssb_start_symbol, CC_id, beam.idx);
|
||||
if (get_softmodem_params()->sa == 1) {
|
||||
if (IS_SA_MODE(get_softmodem_params())) {
|
||||
get_type0_PDCCH_CSS_config_parameters(&gNB->type0_PDCCH_CSS_config[i_ssb],
|
||||
frameP,
|
||||
mib,
|
||||
@@ -251,7 +251,7 @@ void schedule_nr_mib(module_id_t module_idP, frame_t frameP, sub_frame_t slotP,
|
||||
const int prb_offset = offset_pointa >> (scs-2); // reference 60kHz
|
||||
schedule_ssb(frameP, slotP, scc, dl_req, i_ssb, beam_index, ssbSubcarrierOffset, offset_pointa, mib_pdu);
|
||||
fill_ssb_vrb_map(cc, prb_offset, ssbSubcarrierOffset >> (scs - 2), ssb_start_symbol, CC_id, beam.idx);
|
||||
if (get_softmodem_params()->sa == 1) {
|
||||
if (IS_SA_MODE(get_softmodem_params())) {
|
||||
get_type0_PDCCH_CSS_config_parameters(&gNB->type0_PDCCH_CSS_config[i_ssb],
|
||||
frameP,
|
||||
mib,
|
||||
|
||||
@@ -3004,7 +3004,7 @@ static void nr_mac_apply_cellgroup(gNB_MAC_INST *mac, NR_UE_info_t *UE, frame_t
|
||||
|
||||
reset_srs_stats(UE);
|
||||
|
||||
if (get_softmodem_params()->sa) {
|
||||
if (IS_SA_MODE(get_softmodem_params())) {
|
||||
// add all available DL,UL HARQ processes for this UE in SA
|
||||
create_dl_harq_list(sched_ctrl, &UE->sc_info);
|
||||
create_ul_harq_list(sched_ctrl, &UE->sc_info);
|
||||
|
||||
Reference in New Issue
Block a user