Move find_monitoring_periodicity_offset_common() to RA file
This commit is contained in:
@@ -1676,77 +1676,6 @@ void set_monitoring_periodicity_offset(NR_SearchSpace_t *ss,
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void find_monitoring_periodicity_offset_common(NR_SearchSpace_t *ss,
|
|
||||||
uint16_t *slot_period,
|
|
||||||
uint16_t *offset) {
|
|
||||||
|
|
||||||
switch(ss->monitoringSlotPeriodicityAndOffset->present) {
|
|
||||||
case NR_SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl1:
|
|
||||||
*slot_period = 1;
|
|
||||||
*offset = 0;
|
|
||||||
break;
|
|
||||||
case NR_SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl2:
|
|
||||||
*slot_period = 2;
|
|
||||||
*offset = ss->monitoringSlotPeriodicityAndOffset->choice.sl2;
|
|
||||||
break;
|
|
||||||
case NR_SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl4:
|
|
||||||
*slot_period = 4;
|
|
||||||
*offset = ss->monitoringSlotPeriodicityAndOffset->choice.sl4;
|
|
||||||
break;
|
|
||||||
case NR_SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl5:
|
|
||||||
*slot_period = 5;
|
|
||||||
*offset = ss->monitoringSlotPeriodicityAndOffset->choice.sl5;
|
|
||||||
break;
|
|
||||||
case NR_SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl8:
|
|
||||||
*slot_period = 8;
|
|
||||||
*offset = ss->monitoringSlotPeriodicityAndOffset->choice.sl8;
|
|
||||||
break;
|
|
||||||
case NR_SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl10:
|
|
||||||
*slot_period = 10;
|
|
||||||
*offset = ss->monitoringSlotPeriodicityAndOffset->choice.sl10;
|
|
||||||
break;
|
|
||||||
case NR_SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl16:
|
|
||||||
*slot_period = 16;
|
|
||||||
*offset = ss->monitoringSlotPeriodicityAndOffset->choice.sl16;
|
|
||||||
break;
|
|
||||||
case NR_SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl20:
|
|
||||||
*slot_period = 20;
|
|
||||||
*offset = ss->monitoringSlotPeriodicityAndOffset->choice.sl20;
|
|
||||||
break;
|
|
||||||
case NR_SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl40:
|
|
||||||
*slot_period = 40;
|
|
||||||
*offset = ss->monitoringSlotPeriodicityAndOffset->choice.sl40;
|
|
||||||
break;
|
|
||||||
case NR_SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl80:
|
|
||||||
*slot_period = 80;
|
|
||||||
*offset = ss->monitoringSlotPeriodicityAndOffset->choice.sl80;
|
|
||||||
break;
|
|
||||||
case NR_SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl160:
|
|
||||||
*slot_period = 160;
|
|
||||||
*offset = ss->monitoringSlotPeriodicityAndOffset->choice.sl160;
|
|
||||||
break;
|
|
||||||
case NR_SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl320:
|
|
||||||
*slot_period = 320;
|
|
||||||
*offset = ss->monitoringSlotPeriodicityAndOffset->choice.sl320;
|
|
||||||
break;
|
|
||||||
case NR_SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl640:
|
|
||||||
*slot_period = 640;
|
|
||||||
*offset = ss->monitoringSlotPeriodicityAndOffset->choice.sl640;
|
|
||||||
break;
|
|
||||||
case NR_SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl1280:
|
|
||||||
*slot_period = 1280;
|
|
||||||
*offset = ss->monitoringSlotPeriodicityAndOffset->choice.sl1280;
|
|
||||||
break;
|
|
||||||
case NR_SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl2560:
|
|
||||||
*slot_period = 2560;
|
|
||||||
*offset = ss->monitoringSlotPeriodicityAndOffset->choice.sl2560;
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
AssertFatal(1==0,"Invalid monitoring slot periodicity and offset value\n");
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
int get_nr_prach_occasion_info_from_index(uint8_t index,
|
int get_nr_prach_occasion_info_from_index(uint8_t index,
|
||||||
uint32_t pointa,
|
uint32_t pointa,
|
||||||
uint8_t mu,
|
uint8_t mu,
|
||||||
|
|||||||
@@ -133,10 +133,6 @@ void find_aggregation_candidates(uint8_t *aggregation_level,
|
|||||||
const NR_SearchSpace_t *ss,
|
const NR_SearchSpace_t *ss,
|
||||||
int maxL);
|
int maxL);
|
||||||
|
|
||||||
void find_monitoring_periodicity_offset_common(NR_SearchSpace_t *ss,
|
|
||||||
uint16_t *slot_period,
|
|
||||||
uint16_t *offset);
|
|
||||||
|
|
||||||
int get_nr_prach_info_from_index(uint8_t index,
|
int get_nr_prach_info_from_index(uint8_t index,
|
||||||
int frame,
|
int frame,
|
||||||
int slot,
|
int slot,
|
||||||
|
|||||||
@@ -585,6 +585,75 @@ static const NR_RA_t *find_nr_RA_rnti(const NR_RA_t *ra_base, int ra_count, rnti
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void find_monitoring_periodicity_offset_common(const NR_SearchSpace_t *ss, uint16_t *slot_period, uint16_t *offset)
|
||||||
|
{
|
||||||
|
switch (ss->monitoringSlotPeriodicityAndOffset->present) {
|
||||||
|
case NR_SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl1:
|
||||||
|
*slot_period = 1;
|
||||||
|
*offset = 0;
|
||||||
|
break;
|
||||||
|
case NR_SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl2:
|
||||||
|
*slot_period = 2;
|
||||||
|
*offset = ss->monitoringSlotPeriodicityAndOffset->choice.sl2;
|
||||||
|
break;
|
||||||
|
case NR_SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl4:
|
||||||
|
*slot_period = 4;
|
||||||
|
*offset = ss->monitoringSlotPeriodicityAndOffset->choice.sl4;
|
||||||
|
break;
|
||||||
|
case NR_SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl5:
|
||||||
|
*slot_period = 5;
|
||||||
|
*offset = ss->monitoringSlotPeriodicityAndOffset->choice.sl5;
|
||||||
|
break;
|
||||||
|
case NR_SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl8:
|
||||||
|
*slot_period = 8;
|
||||||
|
*offset = ss->monitoringSlotPeriodicityAndOffset->choice.sl8;
|
||||||
|
break;
|
||||||
|
case NR_SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl10:
|
||||||
|
*slot_period = 10;
|
||||||
|
*offset = ss->monitoringSlotPeriodicityAndOffset->choice.sl10;
|
||||||
|
break;
|
||||||
|
case NR_SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl16:
|
||||||
|
*slot_period = 16;
|
||||||
|
*offset = ss->monitoringSlotPeriodicityAndOffset->choice.sl16;
|
||||||
|
break;
|
||||||
|
case NR_SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl20:
|
||||||
|
*slot_period = 20;
|
||||||
|
*offset = ss->monitoringSlotPeriodicityAndOffset->choice.sl20;
|
||||||
|
break;
|
||||||
|
case NR_SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl40:
|
||||||
|
*slot_period = 40;
|
||||||
|
*offset = ss->monitoringSlotPeriodicityAndOffset->choice.sl40;
|
||||||
|
break;
|
||||||
|
case NR_SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl80:
|
||||||
|
*slot_period = 80;
|
||||||
|
*offset = ss->monitoringSlotPeriodicityAndOffset->choice.sl80;
|
||||||
|
break;
|
||||||
|
case NR_SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl160:
|
||||||
|
*slot_period = 160;
|
||||||
|
*offset = ss->monitoringSlotPeriodicityAndOffset->choice.sl160;
|
||||||
|
break;
|
||||||
|
case NR_SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl320:
|
||||||
|
*slot_period = 320;
|
||||||
|
*offset = ss->monitoringSlotPeriodicityAndOffset->choice.sl320;
|
||||||
|
break;
|
||||||
|
case NR_SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl640:
|
||||||
|
*slot_period = 640;
|
||||||
|
*offset = ss->monitoringSlotPeriodicityAndOffset->choice.sl640;
|
||||||
|
break;
|
||||||
|
case NR_SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl1280:
|
||||||
|
*slot_period = 1280;
|
||||||
|
*offset = ss->monitoringSlotPeriodicityAndOffset->choice.sl1280;
|
||||||
|
break;
|
||||||
|
case NR_SearchSpace__monitoringSlotPeriodicityAndOffset_PR_sl2560:
|
||||||
|
*slot_period = 2560;
|
||||||
|
*offset = ss->monitoringSlotPeriodicityAndOffset->choice.sl2560;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
AssertFatal(1 == 0, "Invalid monitoring slot periodicity and offset value\n");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void nr_initiate_ra_proc(module_id_t module_idP,
|
void nr_initiate_ra_proc(module_id_t module_idP,
|
||||||
int CC_id,
|
int CC_id,
|
||||||
frame_t frameP,
|
frame_t frameP,
|
||||||
|
|||||||
Reference in New Issue
Block a user