blob: 2f71b9c3d3e9714345cdc9740f8aeae744e7ab91 [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) 2005
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 * l4b_vdm_struct.h
40 *
41 * Description:
42 * ------------
43 * This file is intends for L4B/VDM interface
44 *
45 * Author:
46 * -------
47 * -------
48 *
49 *==============================================================================
50 * HISTORY
51 * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
52 *------------------------------------------------------------------------------
53 * removed!
54 *
55 * removed!
56 * removed!
57 * removed!
58 *
59 * removed!
60 * removed!
61 * removed!
62 *
63 * removed!
64 * removed!
65 * removed!
66 * removed!
67 *
68 * removed!
69 * removed!
70 * removed!
71 *
72 * removed!
73 * removed!
74 * removed!
75 * removed!
76 *
77 * removed!
78 * removed!
79 * removed!
80 * removed!
81 *
82 * removed!
83 * removed!
84 * removed!
85 * removed!
86 *
87 * removed!
88 * removed!
89 * removed!
90 *
91 * removed!
92 * removed!
93 * removed!
94 *
95 * removed!
96 * removed!
97 * removed!
98 *
99 * removed!
100 * removed!
101 * removed!
102 *
103 * removed!
104 * removed!
105 *
106 * removed!
107 * removed!
108 * removed!
109 * removed!
110 *
111 * removed!
112 * removed!
113 * removed!
114 * removed!
115 *
116 * removed!
117 * removed!
118 * removed!
119 * removed!
120 * removed!
121 *
122 * removed!
123 * removed!
124 * removed!
125 * removed!
126 *
127 * removed!
128 * removed!
129 * removed!
130 *
131 * removed!
132 * removed!
133 * removed!
134 * removed!
135 *
136 * removed!
137 * removed!
138 * removed!
139 *
140 * removed!
141 * removed!
142 * removed!
143 * removed!
144 *
145 * removed!
146 * removed!
147 * removed!
148 *
149 * removed!
150 * removed!
151 * removed!
152 * removed!
153 *
154 * removed!
155 * removed!
156 * removed!
157 * removed!
158 *
159 * removed!
160 * removed!
161 * removed!
162 *
163 * removed!
164 * removed!
165 * removed!
166 *
167 * removed!
168 * removed!
169 *
170 * removed!
171 *
172 *------------------------------------------------------------------------------
173 * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
174 *==============================================================================
175 *******************************************************************************/
176
177#ifndef _L4B_VDM_STRUCT_H
178#define _L4B_VDM_STRUCT_H
179
180#include "kal_public_defs.h"
181#include "ps_public_enum.h"
182#include "l4_vdm_enum.h"
183#include "sim_public_enum.h"
184
185
186#if defined(__ECALL_SUPPORT__) || defined(__NG_ECALL_SUPPORT__)
187/***********************************/
188/* VDM -> L4B (REQ) */
189/***********************************/
190typedef struct
191{
192 LOCAL_PARA_HDR
193 ecall_type_enum ecall_type;
194 ecall_format_enum ecall_format;
195 kal_uint8 msd_data_len;
196 kal_uint8 msd_data[MAX_MSD_LENGTH];
197} vdm_l4b_cs_cc_ecall_req_struct;
198#endif
199
200typedef struct
201{
202 LOCAL_PARA_HDR
203 kal_uint8 dial_num[MAX_CC_ADDR_LEN];
204 kal_bool is_video_call;
205 kal_bool is_redial_from_volte;
206 kal_uint8 call_id;
207 kal_uint8 so;
208} vdm_l4b_c2k_cc_mo_call_req_struct;
209
210
211typedef struct
212{
213 LOCAL_PARA_HDR
214 kal_uint8 dial_num[MAX_CC_ADDR_LEN];
215 kal_uint8 call_id;
216} vdm_l4b_c2k_cc_emerg_call_req_struct;
217
218
219typedef struct
220{
221 LOCAL_PARA_HDR
222 sat_terminal_res_enum tr; // o or 4
223 kal_uint8 call_id;
224} vdm_l4b_c2k_cc_stk_call_req_struct;
225
226
227typedef struct
228{
229 LOCAL_PARA_HDR
230 kal_uint8 call_id;
231 l4_call_related_ss_type_enum opcode;
232} vdm_l4b_c2k_cc_call_related_ss_req_struct;
233
234
235typedef struct
236{
237 LOCAL_PARA_HDR
238 kal_uint8 call_id;
239 kal_uint8 seq_no;
240 l4_cc_eaic_result_enum eaic_result;
241} vdm_l4b_c2k_cc_mt_call_present_rsp_struct;
242
243
244typedef struct
245{
246 LOCAL_PARA_HDR
247} vdm_l4b_c2k_cc_mt_call_accept_req_struct;
248
249
250typedef struct
251{
252 LOCAL_PARA_HDR
253}vdm_l4b_c2k_cc_list_current_calls_req_struct;
254
255
256typedef struct
257{
258 LOCAL_PARA_HDR
259 kal_uint8 digit;
260} vdm_l4b_c2k_cc_send_digit_req_struct;
261
262
263typedef struct
264{
265 LOCAL_PARA_HDR
266 kal_uint8 digit;
267} vdm_l4b_c2k_cc_start_send_digit_req_struct;
268
269
270typedef struct
271{
272 LOCAL_PARA_HDR
273} vdm_l4b_c2k_cc_stop_send_digit_req_struct;
274
275
276/***********************************/
277/* L4B -> VDM (CNF) */
278/***********************************/
279
280
281/* Common response from L4B to VDM */
282typedef struct
283{
284 LOCAL_PARA_HDR
285 l4_result_code_enum result;
286 l4_err_id_enum error_cause;
287} vdm_l4b_common_response_struct;
288
289#if defined(__ECALL_SUPPORT__) || defined(__NG_ECALL_SUPPORT__)
290/* MSG_ID_VDM_L4B_CS_CC_ECALL_CNF */
291typedef vdm_l4b_common_response_struct vdm_l4b_cs_cc_ecall_cnf_struct;
292#endif
293
294typedef vdm_l4b_common_response_struct vdm_l4b_c2k_cc_mo_call_cnf_struct;
295
296typedef vdm_l4b_common_response_struct vdm_l4b_c2k_cc_emerg_call_cnf_struct;
297
298typedef vdm_l4b_common_response_struct vdm_l4b_c2k_cc_stk_call_cnf_struct;
299
300typedef vdm_l4b_common_response_struct vdm_l4b_c2k_cc_hangup_all_cnf_struct;
301
302typedef vdm_l4b_common_response_struct vdm_l4b_c2k_cc_call_related_ss_cnf_struct;
303
304
305typedef struct
306{
307 LOCAL_PARA_HDR
308 l4_ext_error_report_enum ceer_cause;
309 l4_result_code_enum result;
310 l4_err_id_enum err_id;
311 kal_uint16 ecc_category;
312} vdm_l4b_c2k_cc_ext_error_report_cnf_struct;
313
314
315typedef struct {
316 kal_uint8 call_id;
317 l4_call_dir_enum dir;
318 l4_call_state_enum call_state;
319 l4_call_mode_enum call_mode;
320 kal_bool mpty; // FALSE: is NOT conference call, TRUE: is conference call
321 l4_call_type_enum call_type;
322 kal_uint8 number[MAX_CC_ADDR_LEN];
323 kal_uint8 cli_validity;
324} vdm_l4b_call_list_struct;
325
326
327typedef struct {
328 kal_uint8 call_id;
329 l4_call_dir_enum dir;
330 l4_clccs_call_mode_enum clccs_cs_mode;
331 l4_call_ccstatus_enum ccstatus;
332 kal_bool mpty; // FALSE: is NOT conference call, TRUE: is conference call
333 l4_call_number_type_enum number_type;
334 l4_call_type_enum call_type;
335 kal_uint8 number[MAX_SIP_URI_LEN];
336 kal_bool cli_present;
337 kal_uint8 cli_validity;
338} vdm_l4b_call_list_ext_struct;
339
340typedef struct {
341 LOCAL_PARA_HDR
342 sat_terminal_res_enum tr;
343 kal_uint8 additional_info;
344} vdm_l4b_snd_stk_call_tr_req_struct;
345
346typedef struct
347{
348 LOCAL_PARA_HDR
349 l4_result_code_enum result;
350} vdm_l4b_snd_stk_call_tr_cnf_struct;
351
352typedef struct
353{
354 LOCAL_PARA_HDR
355 kal_uint8 total_call;
356 vdm_l4b_call_list_struct call_list[L4CC_MAX_CALL_NUM];
357} vdm_l4b_c2k_cc_list_current_calls_cnf_struct;
358
359
360typedef vdm_l4b_common_response_struct vdm_l4b_c2k_cc_mt_call_accept_cnf_struct;
361
362typedef vdm_l4b_common_response_struct vdm_l4b_c2k_cc_send_digit_cnf_struct;
363
364typedef vdm_l4b_common_response_struct vdm_l4b_c2k_cc_start_send_digit_cnf_struct;
365
366typedef vdm_l4b_common_response_struct vdm_l4b_c2k_cc_stop_send_digit_cnf_struct;
367/***********************************/
368/* L4B -> VDM (URC) */
369/***********************************/
370
371typedef struct
372{
373 /* +ECPI:<call_id>,<msg_type>,<is_ibt>,<is_tch>,<dir>,
374 * <call_mode>,[<number>,<type>],[<disc_cause>],[<pau>]
375 */
376 kal_bool is_ibt;
377 kal_bool is_tch;
378 l4_call_dir_enum call_dir;
379 l4_call_mode_enum call_mode;
380 kal_bool is_number_call_type_present;
381 kal_uint8 number[MAX_CC_ADDR_LEN];
382 l4_call_type_enum call_type;
383 kal_bool is_disc_cause_present;
384 kal_uint16 disc_cause;
385} l4b_ecpi_info_struct;
386
387
388typedef struct {
389 LOCAL_PARA_HDR
390 kal_uint8 call_id;
391 kal_uint8 ecpi_type;
392 l4b_ecpi_info_struct ecpi_info;
393} vdm_l4b_common_cs_cc_ecpi_ind_struct;
394
395
396typedef struct {
397 kal_uint8 number[MAX_CC_ADDR_LEN];
398 l4_call_type_enum call_type;
399 l4_call_mode_enum call_mode;
400 kal_uint8 redirect_num[MAX_CC_ADDR_LEN];
401} l4b_cc_eaic_info_struct;
402
403
404typedef struct
405{
406 /* +EAIC
407 */
408
409 LOCAL_PARA_HDR
410 kal_uint8 call_id;
411 l4b_cc_eaic_info_struct eaic_info;
412 kal_uint8 seq_no;
413} vdm_l4b_c2k_cc_mt_call_present_ind_struct;
414
415/* MSG_ID_VDM_L4BNW_ATTACHED_RAT_IND */
416typedef struct
417{
418 LOCAL_PARA_HDR
419 rat_enum currently_attached_rat;
420 rat_enum last_attached_rat;
421} vdm_l4bnw_attached_rat_ind_struct;
422
423/******************************************************************************
424 * +ESTKCNUM: <call_number>, <call_type>, <domain>
425 *****************************************************************************/
426typedef struct
427{
428 LOCAL_PARA_HDR
429 kal_uint8 stk_call_num[MAX_CC_ADDR_LEN];
430 l4_call_type_enum stk_call_type;
431 l4_stk_call_domain_enum stk_call_domain;
432 l4_stk_redial_setting_enum stk_redial_setting;
433 l4_stk_media_type_enum stk_media_type;
434} vdm_l4b_stk_call_num_ind_struct;
435
436typedef vdm_l4b_common_cs_cc_ecpi_ind_struct vdm_l4b_c2k_cc_ecpi_translate_ind_struct;
437
438typedef vdm_l4b_common_cs_cc_ecpi_ind_struct vdm_l4b_c2k_cc_mt_call_setup_ind_struct;
439
440typedef vdm_l4b_common_cs_cc_ecpi_ind_struct vdm_l4b_c2k_cc_call_disconnect_ind_struct;
441
442typedef vdm_l4b_common_cs_cc_ecpi_ind_struct vdm_l4b_c2k_cc_mo_call_id_ind_struct;
443
444#endif /* _L4B_VDM_STRUCT_H */
445
446