blob: 6f4631e3393809d48ee83fea741397488967ec6f [file] [log] [blame]
rjw6c1fd8f2022-11-30 14:33:01 +08001/******************************************************************************
2* Copyright Statement:
3* --------------------
4* This software is protected by Copyright and the information contained
5* herein is confidential. The software may not be copied and the information
6* contained herein may not be used or disclosed except with the written
7* permission of MediaTek Inc. (C) 2013
8*
9* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
10* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
11* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
12* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
13* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
14* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
15* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
16* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
17* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
18* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
19* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
20* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
21*
22* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
23* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
24* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
25* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
26* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
27*
28* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
29* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
30* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
31* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
32* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
33*
34*******************************************************************************/
35
36/******************************************************************************
37 * Filename:
38 * --------------------------------------------------------
39 * lpp_msg_enum.h
40 *
41 * Project:
42 * --------------------------------------------------------
43 * LTE project
44 *
45 * Description:
46 * --------------------------------------------------------
47 * LTE Positioning Protocol - Message Structure Enumeration
48 *
49 * Author:
50 * --------------------------------------------------------
51 * -------
52 *
53 * --------------------------------------------------------
54 * $Log$
55 *
56 * 11 29 2018 roland.li
57 * [MOLY00363204] [Gen97] NR positioning interface check-in
58 * [LPP] 5G positioning interface.
59 *
60 * 09 20 2017 yung-chun.lin
61 * [MOLY00278366] LPP OTDOA new procedure architecture development
62 *
63 * [MOB][OTDOA][OA]
64 * - ERRC-LPP OTDOA API
65 * - enum for OTDOA STOP cause
66 *
67 * 10 28 2016 jie-yu.wang
68 * [MOLY00206577] [Gen92] A-BeiDou feature development
69 * .
70 *
71 * 01 13 2015 roland.li
72 * [MOLY00092193] [UMOLY][LPP]LPP R10R11 feature checkin
73 * .
74 *
75 * 08 04 2014 doug.shih
76 * [MOLY00073990] [LPP CP] LPP code check-in for OTDOA feature
77 * .
78 *
79 * 06 20 2014 jinghan.wang
80 * [MOLY00070034] [LCS][LPP] Always turn on reset UE stored pos info in CP for UP testing reference
81 * Turn on LPP CP option for UP SUPL usage.
82 *
83 *
84 *****************************************************************************/
85
86#ifndef _LPP_MSG_ENUM_H
87#define _LPP_MSG_ENUM_H
88
89#include "kal_public_api.h"
90#include "kal_public_defs.h"
91#include "kal_general_types.h"
92
93//#if defined(__LPP_CP_SUPPORT__) || defined(__LPP_UP_SUPPORT__) || defined(__L1EDPS_ENABLE__)
94
95#define LPP_OTDOA_MAX_NBR_CELL_FREQ_LAYER_NUM 3
96#define LPP_OTDOA_MAX_NBR_CELL_LIST_NUM 24
97#define LPP_OTDOA_MAX_NBR_CELL_LIST_NUM_TOTAL 3*24
98
99
100#define LPP_ECID_MAX_MEASURED_CELL_INFO_NUM 32
101
102#define LPP_MAX_BANDS 64 // should align LPP_maxBands
103
104/* LPP procedure enum mapped to bitmask (BIT position equals to enum value) */
105typedef enum
106{
107 LPP_PROC_TYPE_NULL,
108 LPP_PROC_TYPE_CAPABILITY_TRANSFER_INDICATION,
109 LPP_PROC_TYPE_ASSIST_DATA_TRANSFER_DELIVERY,
110 LPP_PROC_TYPE_LOC_INFO_TRANSFER_DELIVERY,
111 LPP_PROC_TYPE_ERROR,
112 LPP_PROC_TYPE_ABORT
113} lpp_procedure_type_enum;
114
115
116typedef enum
117{
118 LPP_LOC_OTDOA_RESULT_NULL,
119 LPP_LOC_OTDOA_RESULT_NO_ERROR,
120 LPP_LOC_OTDOA_RESULT_UNDEFINED,
121 LPP_LOC_OTDOA_RESULT_ASSIST_DATA_MISSING, /* TBD: used for timeout without assist data case */
122 LPP_LOC_OTDOA_RESULT_UNABLE_MEASURE_REF_CELL, /* LPP_OTDOA_TargetDeviceErrorCauses_cause_unableToMeasureReferenceCell */
123 LPP_LOC_OTDOA_RESULT_UNABLE_MEASURE_ANY_NBR_CELL, /* LPP_OTDOA_TargetDeviceErrorCauses_cause_unableToMeasureAnyNeighbourCell */
124 LPP_LOC_OTDOA_RESULT_UNABLE_MEASURE_SOME_NBR_CELL /* LPP_OTDOA_TargetDeviceErrorCauses_cause_attemptedButUnableToMeasureSomeNeighbourCells */
125} lpp_loc_otdoa_result_enum;
126
127
128typedef enum
129{
130 LPP_LOC_ECID_RESULT_NULL,
131 LPP_LOC_ECID_RESULT_NO_ERROR,
132 LPP_LOC_ECID_RESULT_UNDEFINED,
133 LPP_LOC_ECID_RESULT_REQUESTED_MEASUREMENT_NOT_AVAILABLE, /* LPP_ECID_TargetDeviceErrorCauses_cause_requestedMeasurementNotAvailable, e.g. RRC connection reestablishment */
134 LPP_LOC_ECID_RESULT_NOT_ALL_REQUESTED_MEASUREMENTS_POSSIBLE /* LPP_ECID_TargetDeviceErrorCauses_cause_notAllrequestedMeasurementsPossible */
135} lpp_loc_ecid_result_enum;
136
137
138typedef enum
139{
140 LPP_OTDOA_PRS_INFO_BANDWIDTH_N6,
141 LPP_OTDOA_PRS_INFO_BANDWIDTH_N15,
142 LPP_OTDOA_PRS_INFO_BANDWIDTH_N25,
143 LPP_OTDOA_PRS_INFO_BANDWIDTH_N50,
144 LPP_OTDOA_PRS_INFO_BANDWIDTH_N75,
145 LPP_OTDOA_PRS_INFO_BANDWIDTH_N100
146} lpp_otdoa_prs_info_bandwidth_enum;
147
148
149typedef enum
150{
151 LPP_OTDOA_PRS_INFO_NUM_DL_FRAME_SF_1,
152 LPP_OTDOA_PRS_INFO_NUM_DL_FRAME_SF_2,
153 LPP_OTDOA_PRS_INFO_NUM_DL_FRAME_SF_4,
154 LPP_OTDOA_PRS_INFO_NUM_DL_FRAME_SF_6
155} lpp_otdoa_prs_info_num_dl_frame_enum;
156
157
158typedef enum
159{
160 LPP_OTDOA_PRS_INFO_MUTING_PO_2,
161 LPP_OTDOA_PRS_INFO_MUTING_PO_4,
162 LPP_OTDOA_PRS_INFO_MUTING_PO_8,
163 LPP_OTDOA_PRS_INFO_MUTING_PO_16,
164} lpp_otdoa_prs_info_muting_po_enum;
165
166typedef enum
167{
168 LPP_OTDOA_NORMAL_STOP, /*Timer Timeout or ERRC Conn Release*/
169 LPP_OTDOA_PROC_CONFLICT_SUS, /*REQ does not stop for proc conflict, possible restart within a short time period*/
170 LPP_OTDOA_PROC_CONFLICT_STOP /*REQ does not stop for proc conflict, possible restart after a longer time period*/
171} lpp_otdoa_req_stop_enum;
172
173typedef enum {
174 UE_POS_TECH_AGNSS = 0,
175 UE_POS_TECH_OTDOA = 1
176} ue_pos_tech_enum;
177
178
179typedef enum {
180 NRRC_ABORT_CAUSE_IRAT = 0, /* NRRC mobility from NR to others RAT, NRRC MAIN */
181 NRRC_ABORT_CAUSE_CONN_REL, /* NRRC connection release (CONN -> IDLE), NRRC MAIN */
182 NRRC_ABORT_CAUSE_CONN_RE_EST, /* NRRC re-establishment (CONN -> CONN), NRRC NCONN */
183 NRRC_ABORT_CAUSE_GEMINI_SUS, /* NRRC Gemini suspend, NRRC MAIN */
184 NRRC_ABORT_CAUSE_VC_START, /* NRRC virtual connected start, NRRC MAIN */
185} lpp_nrrc_abort_cause_enum;
186
187
188//#endif /* #if defined(__LPP_CP_SUPPORT__) || defined(__LPP_UP_SUPPORT__) || defined(__L1EDPS_ENABLE__) */
189
190#endif /* _LPP_MSG_ENUM_H */