Add F1AP positioning measurement request message enc/dec + test
Reference: 3GPP 38.473 v16.21.0 Mandatory fields: Transcation ID (supported) LMF Measurement ID (supported) RAN Measurement ID (supported) TRP Measurement Request List (range : 1) > TRP Measurement Request Item (range : 1..64) >> TRP ID (supported) >> Search Window Information (optional : not supported) Positioning Report Characteristics (supported) Positioning Measurement Periodicity (supported) Positioning Measurement Quantities (range : 1) > Positioning Measurement Quantities Item (range : 1..16384) >> Positioning Measurement Type (supported) >> Timing Reporting Granularity Factor (optional: not supported) Optional fields: SFN Initialisation Time (not supported) SRS Configuration (supported) Measurement Beam Information Request (not supported) System Frame Number (not supported) Slot Number (not supported)
This commit is contained in:
@@ -1249,6 +1249,52 @@ typedef struct f1ap_trp_information_list_s {
|
||||
uint32_t trp_information_item_length;
|
||||
} f1ap_trp_information_list_t;
|
||||
|
||||
typedef struct f1ap_trp_measurement_request_item_s {
|
||||
uint32_t tRPID;
|
||||
} f1ap_trp_measurement_request_item_t;
|
||||
|
||||
typedef struct f1ap_trp_measurement_request_list_s {
|
||||
f1ap_trp_measurement_request_item_t *trp_measurement_request_item;
|
||||
uint32_t trp_measurement_request_list_length;
|
||||
} f1ap_trp_measurement_request_list_t;
|
||||
|
||||
typedef enum f1ap_PosMeasurementType_e {
|
||||
F1AP_POSMEASUREMENTTYPE_GNB_RX_TX = 0,
|
||||
F1AP_POSMEASUREMENTTYPE_UL_SRS_RSRP = 1,
|
||||
F1AP_POSMEASUREMENTTYPE_UL_AOA = 2,
|
||||
F1AP_POSMEASUREMENTTYPE_UL_RTOA = 3
|
||||
} f1ap_PosMeasurementType_e;
|
||||
|
||||
typedef struct f1ap_pos_measurement_quantities_item_s {
|
||||
f1ap_PosMeasurementType_e pos_measurement_type;
|
||||
} f1ap_pos_measurement_quantities_item_t;
|
||||
|
||||
typedef struct f1ap_pos_measurement_quantities_s {
|
||||
f1ap_pos_measurement_quantities_item_t *pos_measurement_quantities_item;
|
||||
uint32_t pos_measurement_quantities_length;
|
||||
} f1ap_pos_measurement_quantities_t;
|
||||
|
||||
typedef enum f1ap_pos_measurement_periodicity_e {
|
||||
F1AP_POSMEASUREMENTPERIODICITY_MS120 = 0,
|
||||
F1AP_POSMEASUREMENTPERIODICITY_MS240 = 1,
|
||||
F1AP_POSMEASUREMENTPERIODICITY_MS480 = 2,
|
||||
F1AP_POSMEASUREMENTPERIODICITY_MS640 = 3,
|
||||
F1AP_POSMEASUREMENTPERIODICITY_MS1024 = 4,
|
||||
F1AP_POSMEASUREMENTPERIODICITY_MS2048 = 5,
|
||||
F1AP_POSMEASUREMENTPERIODICITY_MS5120 = 6,
|
||||
F1AP_POSMEASUREMENTPERIODICITY_MS10240 = 7,
|
||||
F1AP_POSMEASUREMENTPERIODICITY_MIN1 = 8,
|
||||
F1AP_POSMEASUREMENTPERIODICITY_MIN6 = 9,
|
||||
F1AP_POSMEASUREMENTPERIODICITY_MIN12 = 10,
|
||||
F1AP_POSMEASUREMENTPERIODICITY_MIN30 = 11,
|
||||
F1AP_POSMEASUREMENTPERIODICITY_MIN60 = 12
|
||||
} f1ap_pos_measurement_periodicity_pr;
|
||||
|
||||
typedef enum f1ap_pos_report_characteristics_e {
|
||||
F1AP_POSREPORTCHARACTERISTICS_ONDEMAND = 0,
|
||||
F1AP_POSREPORTCHARACTERISTICS_PERIODIC = 1
|
||||
} f1ap_pos_report_characteristics_pr;
|
||||
|
||||
typedef struct f1ap_positioning_information_req_s {
|
||||
// IE 9.3.1.4 (mandatory)
|
||||
uint32_t gNB_CU_ue_id;
|
||||
@@ -1347,4 +1393,23 @@ typedef struct f1ap_trp_information_failure_s {
|
||||
long cause_value;
|
||||
} f1ap_trp_information_failure_t;
|
||||
|
||||
typedef struct f1ap_measurement_req_s {
|
||||
// IE 9.3.1.23 (mandatory)
|
||||
uint8_t transaction_id;
|
||||
// (mandatory)
|
||||
uint16_t lmf_measurement_id;
|
||||
// (mandatory)
|
||||
uint16_t ran_measurement_id;
|
||||
// (mandatory)
|
||||
f1ap_trp_measurement_request_list_t trp_measurement_request_list;
|
||||
// (mandatory) ondemand = 0, periodic = 1
|
||||
f1ap_pos_report_characteristics_pr pos_report_characteristics;
|
||||
// if report characteristics periodic
|
||||
f1ap_pos_measurement_periodicity_pr measurement_periodicity;
|
||||
// (mandatory)
|
||||
f1ap_pos_measurement_quantities_t pos_measurement_quantities;
|
||||
// IE 9.3.1.192 (optional)
|
||||
f1ap_srs_configuration_t *srs_configuration;
|
||||
} f1ap_positioning_measurement_req_t;
|
||||
|
||||
#endif /* F1AP_MESSAGES_TYPES_H_ */
|
||||
|
||||
Reference in New Issue
Block a user