Merge branch 'develop-nr' into nr_pdsch
This commit is contained in:
@@ -25,7 +25,7 @@ extern "C" {
|
||||
// todo : move to public_inc so can be used by vendor extensions
|
||||
|
||||
#define MAX_BAD_TAG 3
|
||||
|
||||
int nfapitooai_level(int nfapilevel);
|
||||
uint8_t push8(uint8_t in, uint8_t **out, uint8_t *end);
|
||||
uint8_t pushs8(int8_t in, uint8_t **out, uint8_t *end);
|
||||
uint8_t push16(uint16_t in, uint8_t **out, uint8_t *end);
|
||||
|
||||
@@ -49,9 +49,10 @@
|
||||
/// UL_CONFIG_REQ
|
||||
#define FAPI_NR_UL_CONFIG_LIST_NUM 10
|
||||
|
||||
#define FAPI_NR_DL_CONFIG_TYPE_PRACH 0x01
|
||||
#define FAPI_NR_DL_CONFIG_TYPE_PUCCH 0x02
|
||||
#define FAPI_NR_DL_CONFIG_TYPE_PUSCH 0x03
|
||||
#define FAPI_NR_UL_CONFIG_TYPE_PRACH 0x01
|
||||
#define FAPI_NR_UL_CONFIG_TYPE_PUCCH 0x02
|
||||
#define FAPI_NR_UL_CONFIG_TYPE_PUSCH 0x03
|
||||
#define FAPI_NR_UL_CONFIG_TYPE_SRS 0x04
|
||||
|
||||
|
||||
#endif
|
||||
@@ -219,8 +219,20 @@ typedef struct {
|
||||
} fapi_nr_tx_request_t;
|
||||
|
||||
typedef struct {
|
||||
|
||||
} fapi_nr_ul_config_rach_pdu;
|
||||
uint8_t preamble_index;
|
||||
uint8_t prach_configuration_index;
|
||||
uint16_t preamble_length;
|
||||
uint8_t power_ramping_step;
|
||||
uint16_t preamble_received_target_power;
|
||||
uint8_t msg1_fdm;
|
||||
uint8_t msg1_frequency_start;
|
||||
uint8_t zero_correlation_zone_config;
|
||||
uint8_t subcarrier_spacing;
|
||||
uint8_t restrictedset_config;
|
||||
uint16_t root_sequence_index;
|
||||
uint16_t rsrp_threshold_ssb;
|
||||
uint16_t rsrp_threshold_sul;
|
||||
} fapi_nr_ul_config_prach_pdu;
|
||||
|
||||
typedef struct {
|
||||
|
||||
@@ -232,6 +244,8 @@ typedef struct {
|
||||
uint16_t number_symbols;
|
||||
uint16_t start_symbol;
|
||||
uint8_t mcs;
|
||||
uint8_t tpc_command;
|
||||
uint8_t rv;
|
||||
} fapi_nr_ul_config_pusch_pdu_rel15_t;
|
||||
|
||||
typedef struct {
|
||||
@@ -239,16 +253,20 @@ typedef struct {
|
||||
fapi_nr_ul_config_pusch_pdu_rel15_t ulsch_pdu_rel15;
|
||||
} fapi_nr_ul_config_pusch_pdu;
|
||||
|
||||
typedef struct {
|
||||
|
||||
} fapi_nr_ul_config_srs_pdu;
|
||||
|
||||
typedef struct {
|
||||
uint8_t pdu_type;
|
||||
union {
|
||||
fapi_nr_ul_config_rach_pdu prach_config_pdu;
|
||||
fapi_nr_ul_config_prach_pdu prach_config_pdu;
|
||||
fapi_nr_ul_config_pucch_pdu pucch_config_pdu;
|
||||
fapi_nr_ul_config_pusch_pdu ulsch_config_pdu;
|
||||
fapi_nr_ul_config_srs_pdu srs_config_pdu;
|
||||
};
|
||||
} fapi_nr_ul_config_request_pdu_t;
|
||||
|
||||
///
|
||||
typedef struct {
|
||||
uint32_t sfn_slot;
|
||||
uint8_t number_pdus;
|
||||
@@ -273,7 +291,6 @@ typedef struct {
|
||||
fapi_nr_dl_config_dci_dl_pdu_rel15_t dci_config_rel15;
|
||||
} fapi_nr_dl_config_dci_pdu;
|
||||
|
||||
//typedef fapi_nr_dci_pdu_rel15_t fapi_nr_dl_config_dlsch_pdu_rel15_t;
|
||||
typedef struct {
|
||||
uint16_t number_rbs;
|
||||
uint16_t start_rb;
|
||||
@@ -281,7 +298,9 @@ typedef struct {
|
||||
uint16_t start_symbol;
|
||||
uint8_t mcs;
|
||||
uint8_t rv;
|
||||
// to be check the fields needed to L1 with NR_DL_UE_HARQ_t and NR_UE_DLSCH_t
|
||||
uint8_t harq_pid;
|
||||
uint8_t ndi;
|
||||
// TODO: check the fields needed to L1 with NR_DL_UE_HARQ_t and NR_UE_DLSCH_t
|
||||
} fapi_nr_dl_config_dlsch_pdu_rel15_t;
|
||||
|
||||
typedef struct {
|
||||
|
||||
@@ -1339,7 +1339,7 @@ typedef struct {
|
||||
typedef struct {
|
||||
nfapi_tl_t tl;
|
||||
uint16_t length;
|
||||
uint16_t pdu_index;
|
||||
int16_t pdu_index;
|
||||
uint16_t transmission_power;
|
||||
} nfapi_dl_config_bch_pdu_rel8_t;
|
||||
#define NFAPI_DL_CONFIG_REQUEST_BCH_PDU_REL8_TAG 0x2004
|
||||
@@ -1351,7 +1351,7 @@ typedef struct {
|
||||
typedef struct {
|
||||
nfapi_tl_t tl;
|
||||
uint16_t length;
|
||||
uint16_t pdu_index;
|
||||
int16_t pdu_index;
|
||||
uint16_t rnti;
|
||||
uint8_t resource_allocation_type;
|
||||
uint32_t resource_block_coding;
|
||||
@@ -1375,7 +1375,7 @@ typedef struct {
|
||||
typedef struct {
|
||||
nfapi_tl_t tl;
|
||||
uint16_t length;
|
||||
uint16_t pdu_index;
|
||||
int16_t pdu_index;
|
||||
uint16_t rnti;
|
||||
uint8_t resource_allocation_type;
|
||||
uint8_t virtual_resource_block_assignment_flag;
|
||||
@@ -1460,7 +1460,7 @@ typedef struct {
|
||||
typedef struct {
|
||||
nfapi_tl_t tl;
|
||||
uint16_t length;
|
||||
uint16_t pdu_index;
|
||||
int16_t pdu_index;
|
||||
uint16_t p_rnti;
|
||||
uint8_t resource_allocation_type;
|
||||
uint8_t virtual_resource_block_assignment_flag;
|
||||
@@ -1626,7 +1626,7 @@ typedef struct {
|
||||
typedef struct {
|
||||
nfapi_tl_t tl;
|
||||
uint16_t length;
|
||||
uint16_t pdu_index;
|
||||
int16_t pdu_index;
|
||||
uint16_t transmission_power;
|
||||
uint16_t hyper_sfn_2_lsbs;
|
||||
} nfapi_dl_config_nbch_pdu_rel13_t;
|
||||
@@ -1640,7 +1640,7 @@ typedef struct {
|
||||
typedef struct {
|
||||
nfapi_tl_t tl;
|
||||
uint16_t length;
|
||||
uint16_t pdu_index;
|
||||
int16_t pdu_index;
|
||||
uint8_t ncce_index;
|
||||
uint8_t aggregation_level;
|
||||
uint8_t start_symbol;
|
||||
@@ -1673,7 +1673,7 @@ typedef struct {
|
||||
typedef struct {
|
||||
nfapi_tl_t tl;
|
||||
uint16_t length;
|
||||
uint16_t pdu_index;
|
||||
int16_t pdu_index;
|
||||
uint8_t start_symbol;
|
||||
uint8_t rnti_type;
|
||||
uint16_t rnti;
|
||||
@@ -2249,6 +2249,7 @@ typedef struct {
|
||||
uint8_t dl_assignment_index;
|
||||
uint32_t tpc_bitmap;
|
||||
uint16_t transmission_power;
|
||||
uint8_t harq_pid;
|
||||
} nfapi_hi_dci0_dci_pdu_rel8_t;
|
||||
#define NFAPI_HI_DCI0_REQUEST_DCI_PDU_REL8_TAG 0x2020
|
||||
|
||||
@@ -2392,7 +2393,7 @@ typedef struct {
|
||||
#define NFAPI_TX_MAX_SEGMENTS 32
|
||||
typedef struct {
|
||||
uint16_t pdu_length;
|
||||
uint16_t pdu_index;
|
||||
int16_t pdu_index;
|
||||
uint8_t num_segments;
|
||||
struct {
|
||||
uint32_t segment_length;
|
||||
@@ -2933,7 +2934,7 @@ typedef struct {
|
||||
|
||||
typedef struct {
|
||||
uint8_t sub_error_code;
|
||||
uint16_t pdu_index;
|
||||
int16_t pdu_index;
|
||||
} nfapi_error_indication_msg_tx_err;
|
||||
|
||||
//
|
||||
|
||||
@@ -1,3 +1,11 @@
|
||||
/*
|
||||
nfapi_nr_interface.h
|
||||
-------------------
|
||||
AUTHOR : Raymond Knopp, Guy de Souza, WEI-TAI CHEN
|
||||
COMPANY : EURECOM, NTUST
|
||||
EMAIL : Lionel.Gauthier@eurecom.fr, desouza@eurecom.fr, kroempa@gmail.com
|
||||
*/
|
||||
|
||||
#ifndef _NFAPI_NR_INTERFACE_H_
|
||||
#define _NFAPI_NR_INTERFACE_H_
|
||||
|
||||
@@ -94,6 +102,38 @@ typedef struct
|
||||
#define NFAPI_NR_NFAPI_NMM_UPLINK_RSSI_SUPPORTED_TAG 0x5133
|
||||
|
||||
// P5 Message Structures
|
||||
|
||||
typedef struct{
|
||||
nfapi_tl_t tl;
|
||||
uint16_t corset_ID; ///// L1 parameter 'CORESET-ID'
|
||||
uint16_t freq_dom; ///// L1 parameter 'CORESET-freq-dom'
|
||||
uint16_t duration; ///// L1 parameter 'CORESET-time-duration'
|
||||
uint16_t reg_type; ///// L1 parameter 'CORESET-CCE-REG-mapping-type'
|
||||
uint16_t reg_bundlesize; ///// L1 parameter 'CORESET-REG-bundle-size'
|
||||
uint16_t interleaversize; ///// L1 parameter 'CORESET-interleaver-size'
|
||||
uint16_t shiftindex; ///// L1 parameter 'CORESET-shift-index'
|
||||
uint16_t precodergranularity; ///// L1 parameter 'CORESET-precoder-granuality'
|
||||
uint16_t tci_stateId; ///// L1 parameter 'TCI-StatesPDCCH'
|
||||
uint16_t tci_present; ///// L1 parameter 'TCI-PresentInDCI'
|
||||
uint16_t dmrs_scramblingID; ///// L1 parameter 'PDCCH-DMRS-Scrambling-ID'
|
||||
} nfapi_nr_ControlResourcesSet_t;
|
||||
|
||||
typedef struct{
|
||||
nfapi_tl_t tl;
|
||||
nfapi_nr_ControlResourcesSet_t coreset;
|
||||
uint16_t monitoringSlotPeriodicityAndOffset; ///// L1 parameters 'Montoring-periodicity-PDCCH-slot'
|
||||
uint16_t monitoringSymbolsWithinSlot; ///// L1 parameter 'Montoring-symbols-PDCCH-within-slot'
|
||||
uint16_t nrofCand_aggLevel1; ///// L1 parameter 'Aggregation-level-1'
|
||||
uint16_t nrofCand_aggLevel2; ///// L1 parameter 'Aggregation-level-2'
|
||||
uint16_t nrofCand_aggLevel4; ///// L1 parameter 'Aggregation-level-4'
|
||||
uint16_t nrofCand_aggLevel8; ///// L1 parameter 'Aggregation-level-8'
|
||||
uint16_t nrofCand_aggLevel16; ///// L1 parameter 'Aggregation-level-16'
|
||||
uint16_t sfi_agg_fmt2_0; ///// L1 parameters 'SFI-Num-PDCCH-cand' and 'SFI-Aggregation-Level'
|
||||
uint16_t monitoringperiodicity_fmt2_3; ///// L1 parameter 'SRS-monitoring-periodicity'
|
||||
uint16_t nrof_candidates_fmt_2_3; ///// L1 parameter 'SRS-Num-PDCCH-cand'
|
||||
} nfapi_nr_SearchSpace_t;
|
||||
|
||||
|
||||
typedef struct {
|
||||
nfapi_uint16_tlv_t numerology_index_mu;
|
||||
nfapi_uint16_tlv_t duplex_mode;
|
||||
@@ -110,24 +150,22 @@ typedef struct {
|
||||
|
||||
typedef struct {
|
||||
nfapi_uint16_tlv_t tx_antenna_ports;
|
||||
nfapi_uint16_tlv_t rx_antenna_ports;
|
||||
nfapi_uint16_tlv_t dl_channel_bandwidth;
|
||||
nfapi_uint16_tlv_t ul_channel_bandwidth;
|
||||
nfapi_uint16_tlv_t dl_BWP_carrierBandwidth;
|
||||
nfapi_uint16_tlv_t ul_BWP_carrierBandwidth;
|
||||
nfapi_uint16_tlv_t dl_locationAndBandwidth;
|
||||
nfapi_uint16_tlv_t ul_locationAndBandwidth;
|
||||
nfapi_uint16_tlv_t dl_BWP_SubcarrierSpacing;
|
||||
nfapi_uint16_tlv_t ul_BWP_SubcarrierSpacing;
|
||||
nfapi_uint16_tlv_t dl_absoluteFrequencyPointA;
|
||||
nfapi_uint16_tlv_t ul_absoluteFrequencyPointA;
|
||||
nfapi_uint16_tlv_t dl_offsetToCarrier;
|
||||
nfapi_uint16_tlv_t ul_offsetToCarrier;
|
||||
nfapi_uint16_tlv_t dl_SCS_SubcarrierSpacing;
|
||||
nfapi_uint16_tlv_t ul_SCS_SubcarrierSpacing;
|
||||
nfapi_uint16_tlv_t dl_SCS_SpecificCarrier_k0;
|
||||
nfapi_uint16_tlv_t ul_SCS_SpecificCarrier_k0;
|
||||
nfapi_uint16_tlv_t NIA_SubcarrierSpacing;
|
||||
nfapi_uint16_tlv_t rx_antenna_ports;
|
||||
nfapi_uint16_tlv_t dl_carrier_bandwidth;
|
||||
nfapi_uint16_tlv_t ul_carrier_bandwidth;
|
||||
nfapi_uint16_tlv_t dl_bwp_subcarrierspacing;
|
||||
nfapi_uint16_tlv_t ul_bwp_subcarrierspacing;
|
||||
nfapi_uint16_tlv_t dl_locationandbandwidth;
|
||||
nfapi_uint16_tlv_t ul_locationandbandwidth;
|
||||
nfapi_uint16_tlv_t dl_absolutefrequencypointA;
|
||||
nfapi_uint16_tlv_t ul_absolutefrequencypointA;
|
||||
nfapi_uint16_tlv_t dl_offsettocarrier;
|
||||
nfapi_uint16_tlv_t ul_offsettocarrier;
|
||||
nfapi_uint16_tlv_t dl_scs_subcarrierspacing;
|
||||
nfapi_uint16_tlv_t ul_scs_subcarrierspacing;
|
||||
nfapi_uint16_tlv_t dl_scs_specificcarrier_k0;
|
||||
nfapi_uint16_tlv_t ul_scs_specificcarrier_k0;
|
||||
nfapi_uint16_tlv_t NIA_subcarrierspacing;
|
||||
} nfapi_nr_rf_config_t;
|
||||
|
||||
#define NFAPI_NR_RF_CONFIG_DL_CHANNEL_BANDWIDTH_TAG 0x500A
|
||||
@@ -190,37 +228,42 @@ typedef struct {
|
||||
} nfapi_nr_pucch_config_t;
|
||||
|
||||
|
||||
typedef struct {
|
||||
nfapi_tl_t tl;
|
||||
nfapi_nr_SearchSpace_t sib1searchSpace;
|
||||
nfapi_nr_SearchSpace_t sibssearchSpace;
|
||||
nfapi_nr_SearchSpace_t ra_SearchSpace;
|
||||
}nfapi_nr_pdcch_config_t;
|
||||
|
||||
typedef struct {
|
||||
//NR TDD-UL-DL-ConfigCommon ///// L1 parameter 'UL-DL-configuration-common'
|
||||
nfapi_uint16_tlv_t referenceSubcarrierSpacing; ///// L1 parameter 'reference-SCS'
|
||||
nfapi_uint16_tlv_t dl_UL_TransmissionPeriodicity; ///// L1 parameter 'DL-UL-transmission-periodicity'
|
||||
nfapi_uint16_tlv_t subcarrierspacing; ///// L1 parameter 'reference-SCS'
|
||||
nfapi_uint16_tlv_t dl_ul_periodicity; ///// L1 parameter 'DL-UL-transmission-periodicity'
|
||||
nfapi_uint16_tlv_t nrofDownlinkSlots; ///// L1 parameter 'number-of-DL-slots'
|
||||
nfapi_uint16_tlv_t nrofDownlinkSymbols; ///// L1 parameter 'number-of-DL-symbols-common'
|
||||
nfapi_uint16_tlv_t nrofUplinkSlots; ///// L1 parameter 'number-of-UL-slots'
|
||||
nfapi_uint16_tlv_t nrofUplinkSymbols; ///// L1 parameter 'number-of-UL-symbols-common'
|
||||
} nfapi_nr_tdd_ul_dl_config_t;
|
||||
|
||||
|
||||
typedef struct {
|
||||
//RateMatchPattern is used to configure one rate matching pattern for PDSCH ///// L1 parameter 'Resource-set-cekk'
|
||||
nfapi_uint16_tlv_t rateMatchPatternId;
|
||||
nfapi_uint16_tlv_t RateMatchPattern_patternType;
|
||||
nfapi_uint16_tlv_t symbolsInResourceBlock; ///// L1 parameter 'rate-match-PDSCH-bitmap2
|
||||
nfapi_uint16_tlv_t periodicityAndPattern; ///// L1 parameter 'rate-match-PDSCH-bitmap3'
|
||||
nfapi_uint16_tlv_t RateMatchPattern_controlResourceSet;
|
||||
nfapi_uint16_tlv_t RateMatchPattern_subcarrierSpacing; ///// L1 parameter 'resource-pattern-scs'
|
||||
nfapi_uint16_tlv_t RateMatchPattern_mode;
|
||||
nfapi_uint16_tlv_t Match_Id;
|
||||
nfapi_uint16_tlv_t patternType;
|
||||
nfapi_uint16_tlv_t symbolsInResourceBlock; ///// L1 parameter 'rate-match-PDSCH-bitmap2
|
||||
nfapi_uint16_tlv_t periodicityAndPattern; ///// L1 parameter 'rate-match-PDSCH-bitmap3'
|
||||
nfapi_uint16_tlv_t controlResourceSet;
|
||||
nfapi_uint16_tlv_t subcarrierSpacing; ///// L1 parameter 'resource-pattern-scs'
|
||||
nfapi_uint16_tlv_t mode;
|
||||
} nfapi_nr_ratematchpattern_t;
|
||||
|
||||
typedef struct {
|
||||
//NR RateMatchPatternLTE-CRS
|
||||
nfapi_uint16_tlv_t RateMatchPatternLTE_CRS_carrierFreqDL; ///// L1 parameter 'center-subcarrier-location'
|
||||
nfapi_uint16_tlv_t RateMatchPatternLTE_CRS_carrierBandwidthDL; ///// L1 parameter 'BW'
|
||||
nfapi_uint16_tlv_t RateMatchPatternLTE_CRS_nrofCRS_Ports; ///// L1 parameter 'rate-match-resources-numb-LTE-CRS-antenna-port'
|
||||
nfapi_uint16_tlv_t RateMatchPatternLTE_CRS_v_Shift; ///// L1 parameter 'rate-match-resources-LTE-CRS-v-shift'
|
||||
nfapi_uint16_tlv_t RateMatchPatternLTE_CRS_radioframeAllocationPeriod;
|
||||
nfapi_uint16_tlv_t RateMatchPatternLTE_CRS_radioframeAllocationOffset;
|
||||
nfapi_uint16_tlv_t RateMatchPatternLTE_CRS_subframeAllocation_choice;
|
||||
nfapi_uint16_tlv_t carrierfreqDL; ///// L1 parameter 'center-subcarrier-location'
|
||||
nfapi_uint16_tlv_t dl_bandwidth; ///// L1 parameter 'BW'
|
||||
nfapi_uint16_tlv_t nrofcrs_Ports; ///// L1 parameter 'rate-match-resources-numb-LTE-CRS-antenna-port'
|
||||
nfapi_uint16_tlv_t v_Shift; ///// L1 parameter 'rate-match-resources-LTE-CRS-v-shift'
|
||||
nfapi_uint16_tlv_t frame_Period;
|
||||
nfapi_uint16_tlv_t frame_Offset;
|
||||
} nfapi_nr_ratematchpattern_lte_crs_t;
|
||||
|
||||
typedef struct {
|
||||
@@ -233,6 +276,7 @@ typedef struct {
|
||||
nfapi_nr_pdsch_config_t pdsch_config;
|
||||
nfapi_nr_pusch_config_t pusch_config;
|
||||
nfapi_nr_pucch_config_t pucch_config;
|
||||
nfapi_nr_pdcch_config_t pdcch_config;
|
||||
nfapi_nr_tdd_ul_dl_config_t tdd_ul_dl_config;
|
||||
nfapi_nr_ratematchpattern_t ratematchpattern;
|
||||
nfapi_nr_ratematchpattern_lte_crs_t ratematchpattern_lte_crs;
|
||||
@@ -241,6 +285,8 @@ typedef struct {
|
||||
nfapi_vendor_extension_tlv_t vendor_extension;
|
||||
} nfapi_nr_config_request_t;
|
||||
|
||||
|
||||
|
||||
typedef enum {
|
||||
NFAPI_NR_DL_DCI_FORMAT_1_0 = 0,
|
||||
NFAPI_NR_DL_DCI_FORMAT_1_1,
|
||||
@@ -398,8 +444,8 @@ uint16_t reserved; //1_0/C-RNTI:10 bits, 1_0/P-RNTI: 6 bits, 1_0/SI-&RA-RNTI: 16
|
||||
uint16_t padding;
|
||||
|
||||
} nfapi_nr_dl_config_dci_dl_pdu_rel15_t;
|
||||
//#define NFAPI_NR_DL_CONFIG_REQUEST_DCI_DL_PDU_REL15_TAG 0x????
|
||||
|
||||
//#define NFAPI_NR_DL_CONFIG_REQUEST_DCI_DL_PDU_REL15_TAG 0x????
|
||||
|
||||
typedef struct{
|
||||
nfapi_tl_t tl;
|
||||
@@ -465,11 +511,14 @@ typedef struct {
|
||||
typedef struct {
|
||||
nfapi_tl_t tl;
|
||||
uint16_t length;
|
||||
uint16_t pdu_index;
|
||||
int16_t pdu_index;
|
||||
uint16_t transmission_power;
|
||||
} nfapi_nr_dl_config_bch_pdu_rel15_t;
|
||||
#define NFAPI_NR_DL_CONFIG_REQUEST_BCH_PDU_REL15_TAG 0x5025
|
||||
|
||||
typedef struct {
|
||||
nfapi_nr_dl_config_bch_pdu_rel15_t bch_pdu_rel15;
|
||||
} nfapi_nr_dl_config_bch_pdu;
|
||||
|
||||
typedef struct {
|
||||
nfapi_tl_t tl;
|
||||
@@ -489,15 +538,15 @@ typedef struct {
|
||||
|
||||
typedef struct {
|
||||
|
||||
}nfapi_nr_dl_config_nbch_pdu_rel15_t;
|
||||
} nfapi_nr_dl_config_nbch_pdu_rel15_t;
|
||||
|
||||
typedef struct {
|
||||
|
||||
}nfapi_nr_dl_config_npdcch_pdu_rel15_t;
|
||||
} nfapi_nr_dl_config_npdcch_pdu_rel15_t;
|
||||
|
||||
typedef struct {
|
||||
|
||||
}nfapi_nr_dl_config_ndlsch_pdu_rel15_t;
|
||||
} nfapi_nr_dl_config_ndlsch_pdu_rel15_t;
|
||||
|
||||
typedef struct {
|
||||
nfapi_nr_dl_config_dci_dl_pdu_rel15_t dci_dl_pdu_rel15;
|
||||
|
||||
@@ -2924,7 +2924,7 @@ static uint8_t unpack_dl_config_bch_pdu_rel8_value(void *tlv, uint8_t **ppReadPa
|
||||
nfapi_dl_config_bch_pdu_rel8_t* bch_pdu_rel8 = (nfapi_dl_config_bch_pdu_rel8_t*)tlv;
|
||||
|
||||
return ( pull16(ppReadPackedMsg, &bch_pdu_rel8->length, end) &&
|
||||
pull16(ppReadPackedMsg, &bch_pdu_rel8->pdu_index, end) &&
|
||||
pull16(ppReadPackedMsg, (uint16_t *)&bch_pdu_rel8->pdu_index, end) &&
|
||||
pull16(ppReadPackedMsg, &bch_pdu_rel8->transmission_power, end));
|
||||
}
|
||||
|
||||
@@ -2933,7 +2933,7 @@ static uint8_t unpack_dl_config_mch_pdu_rel8_value(void *tlv, uint8_t **ppReadPa
|
||||
nfapi_dl_config_mch_pdu_rel8_t* mch_pdu_rel8 = (nfapi_dl_config_mch_pdu_rel8_t*)tlv;
|
||||
|
||||
return (pull16(ppReadPackedMsg, &mch_pdu_rel8->length, end) &&
|
||||
pull16(ppReadPackedMsg, &mch_pdu_rel8->pdu_index, end) &&
|
||||
pull16(ppReadPackedMsg, (uint16_t *)&mch_pdu_rel8->pdu_index, end) &&
|
||||
pull16(ppReadPackedMsg, &mch_pdu_rel8->rnti, end) &&
|
||||
pull8(ppReadPackedMsg, &mch_pdu_rel8->resource_allocation_type, end) &&
|
||||
pull32(ppReadPackedMsg, &mch_pdu_rel8->resource_block_coding, end) &&
|
||||
@@ -2947,7 +2947,7 @@ static uint8_t unpack_dl_config_dlsch_pdu_rel8_value(void *tlv, uint8_t **ppRead
|
||||
nfapi_dl_config_dlsch_pdu_rel8_t* dlsch_pdu_rel8 = (nfapi_dl_config_dlsch_pdu_rel8_t*)tlv;
|
||||
|
||||
if (!(pull16(ppReadPackedMsg, &dlsch_pdu_rel8->length, end) &&
|
||||
pull16(ppReadPackedMsg, &dlsch_pdu_rel8->pdu_index, end) &&
|
||||
pull16(ppReadPackedMsg, (uint16_t *)&dlsch_pdu_rel8->pdu_index, end) &&
|
||||
pull16(ppReadPackedMsg, &dlsch_pdu_rel8->rnti, end) &&
|
||||
pull8(ppReadPackedMsg, &dlsch_pdu_rel8->resource_allocation_type, end) &&
|
||||
pull8(ppReadPackedMsg, &dlsch_pdu_rel8->virtual_resource_block_assignment_flag, end) &&
|
||||
@@ -3033,7 +3033,7 @@ static uint8_t unpack_dl_config_pch_pdu_rel8_value(void *tlv, uint8_t **ppReadPa
|
||||
nfapi_dl_config_pch_pdu_rel8_t* pch_pdu_rel8 = (nfapi_dl_config_pch_pdu_rel8_t*)tlv;
|
||||
|
||||
return ( pull16(ppReadPackedMsg, &pch_pdu_rel8->length, end) &&
|
||||
pull16(ppReadPackedMsg, &pch_pdu_rel8->pdu_index, end) &&
|
||||
pull16(ppReadPackedMsg, (uint16_t *)&pch_pdu_rel8->pdu_index, end) &&
|
||||
pull16(ppReadPackedMsg, &pch_pdu_rel8->p_rnti, end) &&
|
||||
pull8(ppReadPackedMsg, &pch_pdu_rel8->resource_allocation_type, end) &&
|
||||
pull8(ppReadPackedMsg, &pch_pdu_rel8->virtual_resource_block_assignment_flag, end) &&
|
||||
@@ -3179,7 +3179,7 @@ static uint8_t unpack_dl_config_nbch_pdu_rel13_value(void *tlv, uint8_t **ppRead
|
||||
nfapi_dl_config_nbch_pdu_rel13_t* nbch_params_rel13 = (nfapi_dl_config_nbch_pdu_rel13_t*)tlv;
|
||||
|
||||
return ( pull16(ppReadPackedMsg, &nbch_params_rel13->length, end) &&
|
||||
pull16(ppReadPackedMsg, &nbch_params_rel13->pdu_index, end) &&
|
||||
pull16(ppReadPackedMsg, (uint16_t *)&nbch_params_rel13->pdu_index, end) &&
|
||||
pull16(ppReadPackedMsg, &nbch_params_rel13->transmission_power, end) &&
|
||||
pull16(ppReadPackedMsg, &nbch_params_rel13->hyper_sfn_2_lsbs, end));
|
||||
}
|
||||
@@ -3189,7 +3189,7 @@ static uint8_t unpack_dl_config_npdcch_pdu_rel13_value(void *tlv, uint8_t **ppRe
|
||||
nfapi_dl_config_npdcch_pdu_rel13_t* npdcch_params_rel13 = (nfapi_dl_config_npdcch_pdu_rel13_t*)tlv;
|
||||
|
||||
return ( pull16(ppReadPackedMsg, &npdcch_params_rel13->length, end) &&
|
||||
pull16(ppReadPackedMsg, &npdcch_params_rel13->pdu_index, end) &&
|
||||
pull16(ppReadPackedMsg, (uint16_t *)&npdcch_params_rel13->pdu_index, end) &&
|
||||
pull8(ppReadPackedMsg, &npdcch_params_rel13->ncce_index, end) &&
|
||||
pull8(ppReadPackedMsg, &npdcch_params_rel13->aggregation_level, end) &&
|
||||
pull8(ppReadPackedMsg, &npdcch_params_rel13->start_symbol, end) &&
|
||||
@@ -3218,7 +3218,7 @@ static uint8_t unpack_dl_config_ndlsch_pdu_rel13_value(void *tlv, uint8_t **ppRe
|
||||
nfapi_dl_config_ndlsch_pdu_rel13_t* ndlsch_params_rel13 = (nfapi_dl_config_ndlsch_pdu_rel13_t*)tlv;
|
||||
|
||||
return ( pull16(ppReadPackedMsg, &ndlsch_params_rel13->length, end) &&
|
||||
pull16(ppReadPackedMsg, &ndlsch_params_rel13->pdu_index, end) &&
|
||||
pull16(ppReadPackedMsg, (uint16_t *)&ndlsch_params_rel13->pdu_index, end) &&
|
||||
pull8(ppReadPackedMsg, &ndlsch_params_rel13->start_symbol, end) &&
|
||||
pull8(ppReadPackedMsg, &ndlsch_params_rel13->rnti_type, end) &&
|
||||
pull16(ppReadPackedMsg, &ndlsch_params_rel13->rnti, end) &&
|
||||
@@ -3602,7 +3602,7 @@ static uint8_t unpack_ul_config_ue_info_rel8_value(void *tlv, uint8_t **ppReadPa
|
||||
nfapi_ul_config_ue_information_rel8_t* ue_info_rel8 = (nfapi_ul_config_ue_information_rel8_t*)tlv;
|
||||
|
||||
return (pull32(ppReadPackedMsg, &ue_info_rel8->handle, end) &&
|
||||
pull16(ppReadPackedMsg, &ue_info_rel8->rnti, end));
|
||||
pull16(ppReadPackedMsg, (uint16_t *)&ue_info_rel8->rnti, end));
|
||||
}
|
||||
static uint8_t unpack_ul_config_ue_info_rel11_value(void *tlv, uint8_t **ppReadPackedMsg, uint8_t *end)
|
||||
{
|
||||
|
||||
@@ -1624,10 +1624,6 @@ void pnf_nfapi_p7_read_dispatch_message(pnf_p7_t* pnf_p7, uint32_t now_hr_time)
|
||||
|
||||
// need to update the time as we would only use the value from the
|
||||
// select
|
||||
#if 0
|
||||
// DJP - why do this here and not on return from recv???
|
||||
now_hr_time = pnf_get_current_time_hr();
|
||||
#endif
|
||||
}
|
||||
while(recvfrom_result > 0);
|
||||
}
|
||||
|
||||
@@ -1247,9 +1247,14 @@ void vnf_handle_timing_info(void *pRecvMsg, int recvMsgLen, vnf_p7_t* vnf_p7)
|
||||
int16_t vnf_pnf_sfnsf_delta = NFAPI_SFNSF2DEC(vnf_p7->p7_connections[0].sfn_sf) - NFAPI_SFNSF2DEC(ind.last_sfn_sf);
|
||||
|
||||
//NFAPI_TRACE(NFAPI_TRACE_INFO, "%s() PNF:SFN/SF:%d VNF:SFN/SF:%d deltaSFNSF:%d\n", __FUNCTION__, NFAPI_SFNSF2DEC(ind.last_sfn_sf), NFAPI_SFNSF2DEC(vnf_p7->p7_connections[0].sfn_sf), vnf_pnf_sfnsf_delta);
|
||||
if (vnf_pnf_sfnsf_delta>1 || vnf_pnf_sfnsf_delta < -1)
|
||||
|
||||
// Panos: Careful here!!! Modification of the original nfapi-code
|
||||
//if (vnf_pnf_sfnsf_delta>1 || vnf_pnf_sfnsf_delta < -1)
|
||||
if (vnf_pnf_sfnsf_delta>0 || vnf_pnf_sfnsf_delta < 0)
|
||||
{
|
||||
NFAPI_TRACE(NFAPI_TRACE_INFO, "%s() LARGE SFN/SF DELTA between PNF and VNF delta:%d VNF:%d PNF:%d\n\n\n\n\n\n\n\n\n", __FUNCTION__, vnf_pnf_sfnsf_delta, NFAPI_SFNSF2DEC(vnf_p7->p7_connections[0].sfn_sf), NFAPI_SFNSF2DEC(ind.last_sfn_sf));
|
||||
// Panos: Careful here!!! Modification of the original nfapi-code
|
||||
vnf_p7->p7_connections[0].sfn_sf = ind.last_sfn_sf;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -200,13 +200,6 @@ int nfapi_vnf_p7_start(nfapi_vnf_p7_config_t* config)
|
||||
// still time before the end of the subframe wait
|
||||
pselect_timeout = timespec_sub(sf_start, pselect_start);
|
||||
|
||||
#if 0
|
||||
NFAPI_TRACE(NFAPI_TRACE_INFO, "%s() sf_start:%d.%ld pselect_start:%d.%ld pseclect_timeout:%d.%ld\n",
|
||||
__FUNCTION__,
|
||||
sf_start.tv_sec, sf_start.tv_nsec,
|
||||
pselect_start.tv_sec, pselect_start.tv_nsec,
|
||||
pselect_timeout.tv_sec, pselect_timeout.tv_nsec);
|
||||
#endif
|
||||
}
|
||||
|
||||
//original_pselect_timeout = pselect_timeout;
|
||||
@@ -266,13 +259,6 @@ if (selectRetval==-1 && errno == 22)
|
||||
phy->insync_minor_adjustment_duration, phy->insync_minor_adjustment,
|
||||
sf_duration.tv_sec, sf_duration.tv_nsec);
|
||||
}
|
||||
#if 0
|
||||
if (selectRetval != 0 || phy->insync_minor_adjustment_duration != 0)
|
||||
NFAPI_TRACE(NFAPI_TRACE_NOTE, "pselect()=%d maxSock:%d vnf_p7->socket:%d pselect_timeout:%u.%u original_pselect_timeout:%u.%u\n",
|
||||
selectRetval, maxSock, vnf_p7->socket, pselect_timeout.tv_sec, pselect_timeout.tv_nsec,
|
||||
original_pselect_timeout.tv_sec, original_pselect_timeout.tv_nsec);
|
||||
#endif
|
||||
|
||||
if(selectRetval == 0)
|
||||
{
|
||||
// calculate the start of the next subframe
|
||||
|
||||
Reference in New Issue
Block a user