move static some functions that are used only in one file
This commit is contained in:
@@ -548,7 +548,7 @@ static void config_common_ue(NR_UE_MAC_INST_t *mac, NR_ServingCellConfigCommon_t
|
||||
}
|
||||
}
|
||||
|
||||
void release_common_ss_cset(NR_BWP_PDCCH_t *pdcch)
|
||||
static void release_common_ss_cset(NR_BWP_PDCCH_t *pdcch)
|
||||
{
|
||||
pdcch->otherSI_SS_id = -1;
|
||||
pdcch->ra_SS_id = -1;
|
||||
|
||||
@@ -59,8 +59,6 @@ void nr_ue_mac_default_configs(NR_UE_MAC_INST_t *mac);
|
||||
|
||||
void nr_ue_decode_mib(NR_UE_MAC_INST_t *mac, int cc_id);
|
||||
|
||||
void release_common_ss_cset(NR_BWP_PDCCH_t *pdcch);
|
||||
|
||||
/**\brief decode SIB1 and other SIs pdus in NR_UE, from if_module dl_ind
|
||||
\param mac pointer to MAC instance
|
||||
\param cc_id component carrier id
|
||||
@@ -117,12 +115,6 @@ void nr_ue_dl_scheduler(NR_UE_MAC_INST_t *mac, nr_downlink_indication_t *dl_info
|
||||
|
||||
csi_payload_t nr_ue_aperiodic_csi_reporting(NR_UE_MAC_INST_t *mac, dci_field_t csi_request, int tda, long *K2);
|
||||
|
||||
/*! \fn int8_t nr_ue_get_SR(NR_UE_MAC_INST_t *mac, frame_t frame, slot_t slot, NR_SchedulingRequestId_t sr_id);
|
||||
\brief This function schedules a positive or negative SR for schedulingRequestID sr_id
|
||||
depending on the presence of any active SR and the prohibit timer.
|
||||
If the max number of retransmissions is reached, it triggers a new RA */
|
||||
int8_t nr_ue_get_SR(NR_UE_MAC_INST_t *mac, frame_t frame, slot_t slot, NR_SchedulingRequestId_t sr_id);
|
||||
|
||||
nr_dci_format_t nr_ue_process_dci_indication_pdu(NR_UE_MAC_INST_t *mac, frame_t frame, int slot, fapi_nr_dci_indication_pdu_t *dci);
|
||||
|
||||
int8_t nr_ue_process_csirs_measurements(NR_UE_MAC_INST_t *mac,
|
||||
@@ -138,30 +130,11 @@ bool trigger_periodic_scheduling_request(NR_UE_MAC_INST_t *mac,
|
||||
|
||||
int nr_get_csi_measurements(NR_UE_MAC_INST_t *mac, frame_t frame, int slot, PUCCH_sched_t *pucch);
|
||||
|
||||
csi_payload_t get_ssb_rsrp_payload(NR_UE_MAC_INST_t *mac,
|
||||
struct NR_CSI_ReportConfig *csi_reportconfig,
|
||||
NR_CSI_ResourceConfigId_t csi_ResourceConfigId,
|
||||
NR_CSI_MeasConfig_t *csi_MeasConfig);
|
||||
|
||||
csi_payload_t get_csirs_RI_PMI_CQI_payload(NR_UE_MAC_INST_t *mac,
|
||||
struct NR_CSI_ReportConfig *csi_reportconfig,
|
||||
NR_CSI_ResourceConfigId_t csi_ResourceConfigId,
|
||||
NR_CSI_MeasConfig_t *csi_MeasConfig,
|
||||
CSI_mapping_t mapping_type);
|
||||
|
||||
csi_payload_t get_csirs_RSRP_payload(NR_UE_MAC_INST_t *mac,
|
||||
struct NR_CSI_ReportConfig *csi_reportconfig,
|
||||
NR_CSI_ResourceConfigId_t csi_ResourceConfigId,
|
||||
const NR_CSI_MeasConfig_t *csi_MeasConfig);
|
||||
|
||||
csi_payload_t nr_get_csi_payload(NR_UE_MAC_INST_t *mac,
|
||||
int csi_report_id,
|
||||
CSI_mapping_t mapping_type,
|
||||
NR_CSI_MeasConfig_t *csi_MeasConfig);
|
||||
|
||||
uint8_t get_rsrp_index(int rsrp);
|
||||
uint8_t get_rsrp_diff_index(int best_rsrp,int current_rsrp);
|
||||
|
||||
/* \brief Get payload (MAC PDU) from UE PHY
|
||||
@param dl_info pointer to dl indication
|
||||
@param ul_time_alignment pointer to timing advance parameters
|
||||
@@ -170,8 +143,6 @@ uint8_t get_rsrp_diff_index(int best_rsrp,int current_rsrp);
|
||||
*/
|
||||
void nr_ue_send_sdu(NR_UE_MAC_INST_t *mac, nr_downlink_indication_t *dl_info, int pdu_id);
|
||||
|
||||
void nr_ue_process_mac_pdu(NR_UE_MAC_INST_t *mac,nr_downlink_indication_t *dl_info, int pdu_id);
|
||||
|
||||
typedef struct {
|
||||
union {
|
||||
NR_BSR_SHORT s;
|
||||
@@ -187,28 +158,12 @@ int nr_write_ce_ulsch_pdu(uint8_t *mac_ce,
|
||||
const type_bsr_t *bsr,
|
||||
uint8_t *mac_ce_end);
|
||||
|
||||
void config_dci_pdu(NR_UE_MAC_INST_t *mac,
|
||||
fapi_nr_dl_config_request_t *dl_config,
|
||||
const int rnti_type,
|
||||
const int slot,
|
||||
const NR_SearchSpace_t *ss);
|
||||
|
||||
void ue_dci_configuration(NR_UE_MAC_INST_t *mac, fapi_nr_dl_config_request_t *dl_config, const frame_t frame, const int slot);
|
||||
void set_precoding_information_parameters(nfapi_nr_ue_pusch_pdu_t *pusch_config_pdu,
|
||||
int n_antenna_port,
|
||||
long transformPrecoder,
|
||||
int precoding_information,
|
||||
NR_PUSCH_Config_t *pusch_Config);
|
||||
void set_harq_status(NR_UE_MAC_INST_t *mac,
|
||||
uint8_t pucch_id,
|
||||
uint8_t harq_id,
|
||||
int8_t delta_pucch,
|
||||
uint16_t data_toul_fb,
|
||||
uint8_t dai,
|
||||
int n_CCE,
|
||||
int N_CCE,
|
||||
frame_t frame,
|
||||
int slot);
|
||||
|
||||
bool get_downlink_ack(NR_UE_MAC_INST_t *mac, frame_t frame, int slot, PUCCH_sched_t *pucch);
|
||||
initial_pucch_resource_t get_initial_pucch_resource(const int idx);
|
||||
@@ -285,9 +240,7 @@ and fills the PRACH PDU per each FD occasion.
|
||||
@param slotP Slot index
|
||||
@returns void
|
||||
*/
|
||||
void nr_ue_pucch_scheduler(NR_UE_MAC_INST_t *mac, frame_t frameP, int slotP);
|
||||
void nr_schedule_csirs_reception(NR_UE_MAC_INST_t *mac, int frame, int slot);
|
||||
void nr_schedule_csi_for_im(NR_UE_MAC_INST_t *mac, int frame, int slot);
|
||||
|
||||
void configure_csi_resource_mapping(fapi_nr_dl_config_csirs_pdu_rel15_t *csirs_config_pdu,
|
||||
NR_CSI_RS_ResourceMapping_t *resourceMapping,
|
||||
uint32_t bwp_size,
|
||||
|
||||
@@ -104,11 +104,11 @@ NR_ControlResourceSet_t *ue_get_coreset(const NR_BWP_PDCCH_t *config, const int
|
||||
return coreset;
|
||||
}
|
||||
|
||||
void config_dci_pdu(NR_UE_MAC_INST_t *mac,
|
||||
fapi_nr_dl_config_request_t *dl_config,
|
||||
const int rnti_type,
|
||||
const int slot,
|
||||
const NR_SearchSpace_t *ss)
|
||||
static void config_dci_pdu(NR_UE_MAC_INST_t *mac,
|
||||
fapi_nr_dl_config_request_t *dl_config,
|
||||
const int rnti_type,
|
||||
const int slot,
|
||||
const NR_SearchSpace_t *ss)
|
||||
{
|
||||
const NR_UE_DL_BWP_t *current_DL_BWP = mac->current_DL_BWP;
|
||||
const NR_UE_UL_BWP_t *current_UL_BWP = mac->current_UL_BWP;
|
||||
|
||||
@@ -113,6 +113,43 @@ random-access procedure
|
||||
*/
|
||||
static void nr_ue_process_rar(NR_UE_MAC_INST_t *mac, nr_downlink_indication_t *dl_info, int pdu_id);
|
||||
|
||||
/*! \fn int8_t nr_ue_get_SR(NR_UE_MAC_INST_t *mac, frame_t frame, slot_t slot, NR_SchedulingRequestId_t sr_id);
|
||||
\brief This function schedules a positive or negative SR for schedulingRequestID sr_id
|
||||
depending on the presence of any active SR and the prohibit timer.
|
||||
If the max number of retransmissions is reached, it triggers a new RA */
|
||||
static int8_t nr_ue_get_SR(NR_UE_MAC_INST_t *mac, frame_t frame, slot_t slot, NR_SchedulingRequestId_t sr_id);
|
||||
|
||||
static csi_payload_t get_ssb_rsrp_payload(NR_UE_MAC_INST_t *mac,
|
||||
struct NR_CSI_ReportConfig *csi_reportconfig,
|
||||
NR_CSI_ResourceConfigId_t csi_ResourceConfigId,
|
||||
NR_CSI_MeasConfig_t *csi_MeasConfig);
|
||||
|
||||
static csi_payload_t get_csirs_RI_PMI_CQI_payload(NR_UE_MAC_INST_t *mac,
|
||||
struct NR_CSI_ReportConfig *csi_reportconfig,
|
||||
NR_CSI_ResourceConfigId_t csi_ResourceConfigId,
|
||||
NR_CSI_MeasConfig_t *csi_MeasConfig,
|
||||
CSI_mapping_t mapping_type);
|
||||
static csi_payload_t get_csirs_RSRP_payload(NR_UE_MAC_INST_t *mac,
|
||||
struct NR_CSI_ReportConfig *csi_reportconfig,
|
||||
NR_CSI_ResourceConfigId_t csi_ResourceConfigId,
|
||||
const NR_CSI_MeasConfig_t *csi_MeasConfig);
|
||||
static uint8_t get_rsrp_index(int rsrp);
|
||||
|
||||
static uint8_t get_rsrp_diff_index(int best_rsrp, int current_rsrp);
|
||||
|
||||
static void nr_ue_process_mac_pdu(NR_UE_MAC_INST_t *mac, nr_downlink_indication_t *dl_info, int pdu_id);
|
||||
|
||||
static void set_harq_status(NR_UE_MAC_INST_t *mac,
|
||||
uint8_t pucch_id,
|
||||
uint8_t harq_id,
|
||||
int8_t delta_pucch,
|
||||
uint16_t data_toul_fb,
|
||||
uint8_t dai,
|
||||
int n_CCE,
|
||||
int N_CCE,
|
||||
frame_t frame,
|
||||
int slot);
|
||||
|
||||
int get_pucch0_mcs(const int O_ACK, const int O_SR, const int ack_payload, const int sr_payload)
|
||||
{
|
||||
int mcs = 0;
|
||||
@@ -1442,16 +1479,16 @@ int8_t nr_ue_process_csirs_measurements(NR_UE_MAC_INST_t *mac,
|
||||
return 0;
|
||||
}
|
||||
|
||||
void set_harq_status(NR_UE_MAC_INST_t *mac,
|
||||
uint8_t pucch_id,
|
||||
uint8_t harq_id,
|
||||
int8_t delta_pucch,
|
||||
uint16_t data_toul_fb,
|
||||
uint8_t dai,
|
||||
int n_CCE,
|
||||
int N_CCE,
|
||||
frame_t frame,
|
||||
int slot)
|
||||
static void set_harq_status(NR_UE_MAC_INST_t *mac,
|
||||
uint8_t pucch_id,
|
||||
uint8_t harq_id,
|
||||
int8_t delta_pucch,
|
||||
uint16_t data_toul_fb,
|
||||
uint8_t dai,
|
||||
int n_CCE,
|
||||
int N_CCE,
|
||||
frame_t frame,
|
||||
int slot)
|
||||
{
|
||||
NR_UE_DL_HARQ_STATUS_t *current_harq = &mac->dl_harq_info[harq_id];
|
||||
current_harq->active = true;
|
||||
@@ -2527,7 +2564,7 @@ bool trigger_periodic_scheduling_request(NR_UE_MAC_INST_t *mac, PUCCH_sched_t *p
|
||||
return sr_count > 0;
|
||||
}
|
||||
|
||||
int8_t nr_ue_get_SR(NR_UE_MAC_INST_t *mac, frame_t frame, slot_t slot, NR_SchedulingRequestId_t sr_id)
|
||||
static int8_t nr_ue_get_SR(NR_UE_MAC_INST_t *mac, frame_t frame, slot_t slot, NR_SchedulingRequestId_t sr_id)
|
||||
{
|
||||
// no UL-SCH resources available for this tti && UE has a valid PUCCH resources for SR configuration for this tti
|
||||
NR_UE_SCHEDULING_INFO *si = &mac->scheduling_info;
|
||||
@@ -2811,11 +2848,10 @@ csi_payload_t nr_get_csi_payload(NR_UE_MAC_INST_t *mac,
|
||||
return csi;
|
||||
}
|
||||
|
||||
|
||||
csi_payload_t get_ssb_rsrp_payload(NR_UE_MAC_INST_t *mac,
|
||||
struct NR_CSI_ReportConfig *csi_reportconfig,
|
||||
NR_CSI_ResourceConfigId_t csi_ResourceConfigId,
|
||||
NR_CSI_MeasConfig_t *csi_MeasConfig)
|
||||
static csi_payload_t get_ssb_rsrp_payload(NR_UE_MAC_INST_t *mac,
|
||||
struct NR_CSI_ReportConfig *csi_reportconfig,
|
||||
NR_CSI_ResourceConfigId_t csi_ResourceConfigId,
|
||||
NR_CSI_MeasConfig_t *csi_MeasConfig)
|
||||
{
|
||||
int nb_ssb = 0; // nb of ssb in the resource
|
||||
int nb_meas = 0; // nb of ssb to report measurements on
|
||||
@@ -2892,11 +2928,11 @@ csi_payload_t get_ssb_rsrp_payload(NR_UE_MAC_INST_t *mac,
|
||||
return csi;
|
||||
}
|
||||
|
||||
csi_payload_t get_csirs_RI_PMI_CQI_payload(NR_UE_MAC_INST_t *mac,
|
||||
struct NR_CSI_ReportConfig *csi_reportconfig,
|
||||
NR_CSI_ResourceConfigId_t csi_ResourceConfigId,
|
||||
NR_CSI_MeasConfig_t *csi_MeasConfig,
|
||||
CSI_mapping_t mapping_type)
|
||||
static csi_payload_t get_csirs_RI_PMI_CQI_payload(NR_UE_MAC_INST_t *mac,
|
||||
struct NR_CSI_ReportConfig *csi_reportconfig,
|
||||
NR_CSI_ResourceConfigId_t csi_ResourceConfigId,
|
||||
NR_CSI_MeasConfig_t *csi_MeasConfig,
|
||||
CSI_mapping_t mapping_type)
|
||||
{
|
||||
int p1_bits = 0;
|
||||
int p2_bits = 0;
|
||||
@@ -2980,10 +3016,10 @@ csi_payload_t get_csirs_RI_PMI_CQI_payload(NR_UE_MAC_INST_t *mac,
|
||||
return csi;
|
||||
}
|
||||
|
||||
csi_payload_t get_csirs_RSRP_payload(NR_UE_MAC_INST_t *mac,
|
||||
struct NR_CSI_ReportConfig *csi_reportconfig,
|
||||
NR_CSI_ResourceConfigId_t csi_ResourceConfigId,
|
||||
const NR_CSI_MeasConfig_t *csi_MeasConfig)
|
||||
static csi_payload_t get_csirs_RSRP_payload(NR_UE_MAC_INST_t *mac,
|
||||
struct NR_CSI_ReportConfig *csi_reportconfig,
|
||||
NR_CSI_ResourceConfigId_t csi_ResourceConfigId,
|
||||
const NR_CSI_MeasConfig_t *csi_MeasConfig)
|
||||
{
|
||||
int n_bits = 0;
|
||||
uint64_t temp_payload = 0;
|
||||
@@ -3047,8 +3083,8 @@ csi_payload_t get_csirs_RSRP_payload(NR_UE_MAC_INST_t *mac,
|
||||
// returns index from RSRP
|
||||
// according to Table 10.1.6.1-1 in 38.133
|
||||
|
||||
uint8_t get_rsrp_index(int rsrp) {
|
||||
|
||||
static uint8_t get_rsrp_index(int rsrp)
|
||||
{
|
||||
int index = rsrp + 157;
|
||||
if (rsrp>-44)
|
||||
index = 113;
|
||||
@@ -3058,17 +3094,15 @@ uint8_t get_rsrp_index(int rsrp) {
|
||||
return index;
|
||||
}
|
||||
|
||||
|
||||
// returns index from differential RSRP
|
||||
// according to Table 10.1.6.1-2 in 38.133
|
||||
uint8_t get_rsrp_diff_index(int best_rsrp,int current_rsrp) {
|
||||
|
||||
static uint8_t get_rsrp_diff_index(int best_rsrp, int current_rsrp)
|
||||
{
|
||||
int diff = best_rsrp-current_rsrp;
|
||||
if (diff>30)
|
||||
return 15;
|
||||
else
|
||||
return (diff>>1);
|
||||
|
||||
}
|
||||
|
||||
void nr_ue_send_sdu(NR_UE_MAC_INST_t *mac, nr_downlink_indication_t *dl_info, int pdu_id)
|
||||
@@ -3697,7 +3731,7 @@ static int nr_ue_validate_successrar(uint8_t *pduP,
|
||||
// F: lenght of L is 0:8 or 1:16 bits wide
|
||||
// R: Reserved bit, set to zero.
|
||||
////////////////////////////////
|
||||
void nr_ue_process_mac_pdu(NR_UE_MAC_INST_t *mac, nr_downlink_indication_t *dl_info, int pdu_id)
|
||||
static void nr_ue_process_mac_pdu(NR_UE_MAC_INST_t *mac, nr_downlink_indication_t *dl_info, int pdu_id)
|
||||
{
|
||||
frame_t frameP = dl_info->frame;
|
||||
int slot = dl_info->slot;
|
||||
|
||||
@@ -78,6 +78,10 @@ static uint8_t nr_ue_get_sdu(NR_UE_MAC_INST_t *mac,
|
||||
int P_MAX,
|
||||
bool *BSRsent);
|
||||
|
||||
static void nr_ue_pucch_scheduler(NR_UE_MAC_INST_t *mac, frame_t frameP, int slotP);
|
||||
static void nr_schedule_csirs_reception(NR_UE_MAC_INST_t *mac, int frame, int slot);
|
||||
static void nr_schedule_csi_for_im(NR_UE_MAC_INST_t *mac, int frame, int slot);
|
||||
|
||||
static void clear_ul_config_request(NR_UE_MAC_INST_t *mac)
|
||||
{
|
||||
int slots = mac->frame_structure.numb_slots_frame;
|
||||
@@ -1709,7 +1713,7 @@ static bool schedule_uci_on_pusch(NR_UE_MAC_INST_t *mac,
|
||||
return mux_done;
|
||||
}
|
||||
|
||||
void nr_ue_pucch_scheduler(NR_UE_MAC_INST_t *mac, frame_t frameP, int slotP)
|
||||
static void nr_ue_pucch_scheduler(NR_UE_MAC_INST_t *mac, frame_t frameP, int slotP)
|
||||
{
|
||||
PUCCH_sched_t pucch[3] = {0}; // TODO the size might change in the future in case of multiple SR or multiple CSI in a slot
|
||||
|
||||
@@ -1784,7 +1788,7 @@ void nr_ue_pucch_scheduler(NR_UE_MAC_INST_t *mac, frame_t frameP, int slotP)
|
||||
}
|
||||
}
|
||||
|
||||
void nr_schedule_csi_for_im(NR_UE_MAC_INST_t *mac, int frame, int slot)
|
||||
static void nr_schedule_csi_for_im(NR_UE_MAC_INST_t *mac, int frame, int slot)
|
||||
{
|
||||
if (!mac->sc_info.csi_MeasConfig)
|
||||
return;
|
||||
@@ -2025,7 +2029,7 @@ void configure_csi_resource_mapping(fapi_nr_dl_config_csirs_pdu_rel15_t *csirs_c
|
||||
}
|
||||
}
|
||||
|
||||
void nr_schedule_csirs_reception(NR_UE_MAC_INST_t *mac, int frame, int slot)
|
||||
static void nr_schedule_csirs_reception(NR_UE_MAC_INST_t *mac, int frame, int slot)
|
||||
{
|
||||
if (!mac->sc_info.csi_MeasConfig)
|
||||
return;
|
||||
|
||||
Reference in New Issue
Block a user