blob: 56af80edd528c5fb8160a6e05a9d18201a890cb9 [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) 2012
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#ifndef _D2RM_DDM_STRUCT_H
37#define _D2RM_DDM_STRUCT_H
38
39#include "kal_general_types.h"
40#include "kal_public_defs.h"
41#include "atcmd_struct.h"
42#include "atcmd_enum.h"
43#include "ps_public_enum.h"
44#include "ddm_common_struct.h"
45#include "d2pm_ddm_struct.h"
46#include "d2pm_d2rm_struct.h"
47
48// Implementation
49/*******************************************************************************
50* D2RM to DDM REQ *
51*******************************************************************************/
52typedef ddm_ip_info_struct d2rm_ddm_ip_info_struct;
53typedef ddm_net_info_struct d2rm_ddm_net_info_struct;
54typedef ddm_retry_info_struct d2rm_ddm_retry_info_struct;
55typedef ddm_ims_info_struct d2rm_ddm_ims_info_struct;
56
57typedef enum
58{
59 D2RM_DDM_DEACT_MODE_NORMAL = 0x0,
60 D2RM_DDM_DEACT_MODE_GRT = 0x1,
61}d2rm_ddm_deact_mode_enum;
62
63typedef enum
64{
65 D2RM_DDM_PCO_FF03H_VALUE_0 = 0x0,
66 D2RM_DDM_PCO_FF03H_VALUE_1 = 0x1,
67 D2RM_DDM_PCO_FF03H_VALUE_MAX = 0x7FFFFFFF,
68}d2rm_ddm_pco_ff03h_enum;
69
70typedef struct
71{
72 d2rm_ddm_deact_mode_enum mode;
73}d2rm_ddm_deact_data_call_req_prv_struct;
74
75// MSG_ID_D2RM_DDM_ACT_DATA_CALL_REQ
76typedef struct
77{
78 ddm_pdp_type_enum pdp_type;
79}d2rm_ddm_param_roam_struct;
80
81typedef struct
82{
83 ddm_pdp_type_enum pdp_type;
84}d2rm_ddm_param_5g_roam_struct;
85
86typedef struct
87{
88 kal_bool qos_param_present;
89 kal_uint32 qos_reliability;
90 kal_uint32 qos_precedence_class;
91 kal_uint32 qos_delay_class;
92 kal_uint32 qos_peak_throughput_class;
93 kal_uint32 qos_mean_throughput_class;
94}d2rm_ddm_param_qos_struct;
95
96typedef struct
97{
98 LOCAL_PARA_HDR
99
100 /* common part */
101 kal_int32 cid;
102 kal_char apn[APN_STRING_LEN];
103 kal_int32 apn_idx;
104 kal_uint32 src_id;
105
106 atcmd_request_type_enum req_type;
107 atcmd_rat_enum cell_rat;
108
109 apn_type_info_struct apn_type_info; // ddm_common_struct.h
110 cid_info_struct cid_info;
111
112 /* conditional part */
113 struct
114 {
115 struct
116 {
117 pdp_addr_type_enum pdx_type; // by default NULL_PDP_ADDR_TYPE
118 }roam;
119
120 struct
121 {
122 kal_char dnn[APN_STRING_LEN]; // by default a NULL string
123 pdp_addr_type_enum pdx_type; // by default NULL_PDP_ADDR_TYPE in ps_public_enum_public.h
124 atcmd_SSC_mode_enum ssc_mode; // by default ATCMD_SSC_MODE_MAX
125 at_s_nssai_struct s_nssai; // by default is_sst_present, is_sd_present, is_mapped_configured_sst_present, is_mapped_configured_sd_present) = (KAL_FALSE, KAL_FALSE, KAL_FALSE, KAL_FALSE)
126 atcmd_Access_type_enum access_type; // by default ATCMD_ACCESS_TYPE_MAX
127 }vg;
128
129 struct
130 {
131 pdp_addr_type_enum pdx_type; // by default NULL_PDP_ADDR_TYPE
132 }vg_roam;
133
134 /* operator part */
135 struct
136 {
137 kal_uint32 wapn; // by default 0 to disable VzW
138 kal_uint32 apncl;
139 kal_uint32 apned;
140 kal_uint32 max_conn;
141 kal_uint32 max_conn_t;
142 kal_uint32 wait_time;
143 }vzw;
144
145 struct
146 {
147 kal_uint32 inact_time; // by default 0
148 }sprint;
149 }cond;
150
151 /* ---- 234G HPLMN ---- */
152 kal_bool fb_ipv4_first;
153 kal_uint32 auth_type;
154 pdp_addr_type_enum pdp_type;
155 kal_uint8 username[USERID_STRING_LEN];
156 kal_uint8 passwd[PASSWORD_STRING_LEN];
157 // kal_bool carrier_enabled; // renamed to cond.vzw.apned
158 // kal_uint32 max_conn;
159 // kal_uint32 max_conn_time;
160 // kal_uint32 wait_time;
161 // kal_uint32 inact_time;
162 kal_bool pcscf_restore;
163 /* ++++ 234G HPLMN ++++ */
164
165 kal_bool is_dangling;
166 kal_bool is_acttest;
167
168 d2rm_ddm_param_qos_struct param_qos;
169 d2rm_ddm_pco_ff03h_enum pco_ff03h;
170 //d2rm_ddm_param_roam_struct param_roam;
171 //d2rm_ddm_param_5g_roam_struct param_5g_roam;
172 d2_legacy_at_struct param_legacy_at;
173}d2rm_ddm_act_data_call_req_struct;
174
175// MSG_ID_D2RM_DDM_DEACT_DATA_CALL_REQ
176
177typedef struct
178{
179 LOCAL_PARA_HDR
180
181 /* common part */
182 kal_uint32 cid;
183
184 /* private part */
185 d2pm_ddm_deact_data_call_req_prv_struct d2pm_ddm_prv;
186 d2am_ddm_deact_data_call_req_prv_struct d2am_ddm_prv;
187 d2rm_ddm_deact_data_call_req_prv_struct d2rm_ddm_prv;
188}d2rm_ddm_deact_data_call_req_struct;
189
190// MSG_ID_D2RM_DDM_ABORT_DATA_CALL_REQ
191typedef d2rm_ddm_deact_data_call_req_struct d2rm_ddm_abort_data_call_req_struct;
192
193// MSG_ID_D2RM_DDM_GET_DATA_CALL_LIST_REQ
194typedef struct
195{
196 LOCAL_PARA_HDR
197
198 at_cgact_req_struct cmd;
199 d2pm_ddm_comm_req_prv_struct d2pm_ddm_prv;
200}d2rm_ddm_get_data_call_list_req_struct;
201
202// MSG_ID_D2RM_DDM_GET_DYNAMIC_PARAM_REQ
203typedef struct
204{
205 LOCAL_PARA_HDR
206
207 at_cgcontrdp_req_struct cmd;
208 d2pm_ddm_comm_req_prv_struct d2pm_ddm_prv;
209}d2rm_ddm_get_dynamic_param_req_struct;
210
211// MSG_ID_D2RM_DDM_GET_PDP_ADDRESS_REQ
212typedef struct
213{
214 LOCAL_PARA_HDR
215
216 at_cgpaddr_req_struct cmd;
217 d2pm_ddm_comm_req_prv_struct d2pm_ddm_prv;
218}d2rm_ddm_get_pdp_address_req_struct;
219
220//MSG_ID_D2RM_DDM_GET_SECONDARY_DYNAMIC_PARAM_REQ
221typedef struct
222{
223 LOCAL_PARA_HDR
224
225 at_cgscontrdp_req_struct cmd;
226 d2pm_ddm_comm_req_prv_struct d2pm_ddm_prv;
227}d2rm_ddm_get_secondary_dynamic_param_req_struct;
228
229// MSG_ID_D2RM_DDM_GET_QOS_REQ
230typedef struct
231{
232 LOCAL_PARA_HDR
233
234 at_cgeqosrdp_req_struct cmd;
235 d2pm_ddm_comm_req_prv_struct d2pm_ddm_prv;
236}d2rm_ddm_get_qos_req_struct;
237
238// MSG_ID_D2RM_DDM_GET_5GQOS_REQ
239typedef struct
240{
241 LOCAL_PARA_HDR
242
243 at_c5gqosrdp_req_struct cmd;
244 d2pm_ddm_comm_req_prv_struct d2pm_ddm_prv;
245}d2rm_ddm_get_5gqos_req_struct;
246
247// MSG_ID_D2RM_DDM_GET_TFT_REQ
248typedef struct
249{
250 LOCAL_PARA_HDR
251
252 at_cgtftrdp_req_struct cmd;
253 d2pm_ddm_comm_req_prv_struct d2pm_ddm_prv;
254}d2rm_ddm_get_tft_req_struct;
255
256// MSG_ID_D2RM_DDM_SET_PACKET_FILTER_REQ
257typedef struct
258{
259 LOCAL_PARA_HDR
260
261 at_eglnkpf_req_struct cmd;
262 d2pm_ddm_comm_req_prv_struct d2pm_ddm_prv;
263}d2rm_ddm_set_packet_filter_req_struct;
264
265//MSG_ID_D2RM_DDM_GET_PACKET_FILTER_REQ
266/*atp_cmd_mode_enum: ATP_READ_MODE, cid_parse_result: AT_TOKEN_PARSE_RESULT_NOT_FOUND*/
267typedef d2rm_ddm_set_packet_filter_req_struct d2rm_ddm_get_packet_filter_req_struct;
268
269// MSG_ID_D2RM_DDM_MODIFY_DATA_CALL_REQ
270typedef struct
271{
272 LOCAL_PARA_HDR
273
274 at_cgcmod_req_struct cmd;
275 d2pm_ddm_comm_req_prv_struct d2pm_ddm_prv;
276}d2rm_ddm_modify_data_call_req_struct;
277
278// MSG_ID_D2RM_DDM_GET_RETRYTMR_REQ
279typedef struct
280{
281 LOCAL_PARA_HDR
282
283 /* common part */
284 kal_char apn[APN_STRING_LEN];
285
286 /* private part */
287 d2pm_ddm_comm_req_prv_struct d2pm_ddm_prv;
288}d2rm_ddm_get_retrytmr_req_struct;
289
290// MSG_ID_D2RM_DDM_SET_RETRYTMR_REQ
291typedef struct
292{
293 LOCAL_PARA_HDR
294
295 /* common part */
296 kal_char apn[APN_STRING_LEN];
297 kal_uint8 cmd;
298
299 /* private part */
300 d2pm_ddm_comm_req_prv_struct d2pm_ddm_prv;
301}d2rm_ddm_set_retrytmr_req_struct;
302
303// MSG_ID_D2RM_DDM_GET_EPDG_INFO_REQ
304typedef struct
305{
306 LOCAL_PARA_HDR
307 kal_uint32 cid;
308} d2rm_ddm_get_epdg_info_req_struct;
309
310// MSG_ID_D2RM_DDM_VZWAPNE_REQ
311typedef struct
312{
313 LOCAL_PARA_HDR
314
315 /* common part */
316 kal_uint32 txid, num_of_apn;
317 struct
318 {
319 kal_char apn[APN_STRING_LEN];
320 kal_int32 apn_idx;
321 }apn_list[DDM_MAX_NUM_OF_APN];
322
323 /* private part */
324 // N/A
325}d2rm_ddm_vzwapne_req_struct;
326
327// MSG_ID_D2RM_DDM_VZWAPNETMR_REQ
328typedef struct
329{
330 LOCAL_PARA_HDR
331
332 /* common part */
333 kal_uint32 txid, num_of_apn;
334 struct
335 {
336 kal_char apn[APN_STRING_LEN];
337 kal_int32 apn_idx;
338 }apn_list[DDM_MAX_NUM_OF_APN];
339
340 /* private part */
341 // N/A
342}d2rm_ddm_vzwapnetmr_req_struct;
343
344/*******************************************************************************
345* DDM TO D2RM CNF *
346*******************************************************************************/
347
348
349// MSG_ID_D2RM_DDM_ACT_DATA_CALL_CNF
350typedef struct
351{
352 kal_bool errcause_present;
353 kal_int32 errcause;
354 kal_bool retrytime_present;
355 kal_int32 retrytime;
356}d2rm_ddm_act_data_call_cnf_prv_struct;
357
358typedef struct
359{
360 LOCAL_PARA_HDR
361
362 /*common part*/
363 kal_uint32 cid;
364 kal_uint8 apn[APN_STRING_LEN];
365 kal_uint8 req_apn[APN_STRING_LEN];
366#if 0
367/* under construction !*/
368/* under construction !*/
369#endif
370 d2rm_ddm_ip_info_struct ip_info; // for IP address
371 d2rm_ddm_net_info_struct net_info; // for Internet information
372
373 // ddm_res_enum res_code;
374 kal_uint32 res_code;
375 /* private part */
376 d2rm_ddm_act_data_call_cnf_prv_struct d2rm_ddm_prv;
377 d2pm_ddm_act_data_call_cnf_prv_struct d2pm_ddm_prv;
378
379 d2rm_ddm_retry_info_struct retry_info;
380 d2rm_ddm_pco_ff03h_enum pco_ff03h;
381}d2rm_ddm_act_data_call_cnf_struct;
382
383// MSG_ID_D2RM_DDM_DEACT_DATA_CALL_CNF
384typedef struct
385{
386 LOCAL_PARA_HDR
387
388 /* common part */
389 kal_uint32 cid;
390 ddm_res_enum res_code;
391 /* private part */
392 d2pm_ddm_deact_data_call_cnf_prv_struct d2pm_ddm_prv;
393}d2rm_ddm_deact_data_call_cnf_struct;
394
395// MSG_ID_D2RM_DDM_ABORT_DATA_CALL_CNF
396typedef d2rm_ddm_deact_data_call_cnf_struct d2rm_ddm_abort_data_call_cnf_struct;
397
398// MSG_ID_D2RM_DDM_GET_DATA_CALL_LIST_CNF
399typedef struct
400{
401 LOCAL_PARA_HDR
402
403 ddm_res_enum res_code;
404 d2pm_ddm_comm_cnf_prv_struct d2pm_ddm_prv;
405}d2rm_ddm_get_data_call_list_cnf_struct;
406
407// MSG_ID_D2RM_DDM_GET_DYNAMIC_PARAM_CNF
408typedef struct
409{
410 LOCAL_PARA_HDR
411
412 ddm_res_enum res_code;
413 d2pm_ddm_comm_cnf_prv_struct d2pm_ddm_prv;
414}d2rm_ddm_get_dynamic_param_cnf_struct;
415
416// MSG_ID_D2RM_DDM_GET_PDP_ADDRESS_CNF
417typedef struct
418{
419 LOCAL_PARA_HDR
420
421 ddm_res_enum res_code;
422 d2pm_ddm_comm_cnf_prv_struct d2pm_ddm_prv;
423}d2rm_ddm_get_pdp_address_cnf_struct;
424
425//MSG_ID_D2RM_DDM_GET_SECONDARY_DYNAMIC_PARAM_CNF
426typedef struct
427{
428 LOCAL_PARA_HDR
429
430 ddm_res_enum res_code;
431 d2pm_ddm_comm_cnf_prv_struct d2pm_ddm_prv;
432}d2rm_ddm_get_secondary_dynamic_param_cnf_struct;
433
434// MSG_ID_D2RM_DDM_GET_QOS_CNF
435typedef struct
436{
437 LOCAL_PARA_HDR
438
439 ddm_res_enum res_code;
440 d2pm_ddm_comm_cnf_prv_struct d2pm_ddm_prv;
441}d2rm_ddm_get_qos_cnf_struct;
442
443// MSG_ID_D2RM_DDM_GET_TFT_CNF
444typedef struct
445{
446 LOCAL_PARA_HDR
447
448 ddm_res_enum res_code;
449 d2pm_ddm_comm_cnf_prv_struct d2pm_ddm_prv;
450}d2rm_ddm_get_tft_cnf_struct;
451
452//MSG_ID_D2RM_DDM_SET_PACKET_FILTER_CNF
453typedef struct
454{
455 LOCAL_PARA_HDR
456
457 ddm_res_enum res_code;
458 d2pm_ddm_comm_cnf_prv_struct d2pm_ddm_prv;
459}d2rm_ddm_set_packet_filter_cnf_struct;
460//MSG_ID_D2RM_DDM_GET_PACKET_FILTER_CNF
461typedef struct
462{
463 LOCAL_PARA_HDR
464
465 ddm_res_enum res_code;
466 d2pm_ddm_comm_cnf_prv_struct d2pm_ddm_prv;
467}d2rm_ddm_get_packet_filter_cnf_struct;
468//MSG_ID_D2RM_DDM_MODIFY_DATA_CALL_CNF
469typedef struct
470{
471 LOCAL_PARA_HDR
472
473 ddm_res_enum res_code;
474 d2pm_ddm_comm_cnf_prv_struct d2pm_ddm_prv;
475}d2rm_ddm_modify_data_call_cnf_struct;
476
477// MSG_ID_D2RM_DDM_GET_RETRYTMR_CNF
478typedef struct
479{
480 LOCAL_PARA_HDR
481
482 /* common part */
483 kal_char apn[APN_STRING_LEN];
484 d2rm_ddm_retry_info_struct retry_info;
485
486 /* private part */
487 d2pm_ddm_comm_cnf_prv_struct d2pm_ddm_prv;
488}d2rm_ddm_get_retrytmr_cnf_struct;
489
490// MSG_ID_D2RM_DDM_SET_RETRYTMR_CNF
491typedef struct
492{
493 LOCAL_PARA_HDR
494
495 /* common part */
496 kal_char apn[APN_STRING_LEN];
497 kal_bool is_succ;
498
499 /* private part */
500 d2pm_ddm_comm_cnf_prv_struct d2pm_ddm_prv;
501}d2rm_ddm_set_retrytmr_cnf_struct;
502
503// MSG_ID_D2RM_DDM_GET_EPDG_INFO_CNF
504typedef struct
505{
506 LOCAL_PARA_HDR
507
508 kal_int32 cid;
509 kal_bool is_success;
510}d2rm_ddm_get_epdg_info_cnf_struct;
511
512
513/*******************************************************************************
514* DDM TO D2RM IND *
515*******************************************************************************/
516
517
518// MSG_ID_D2RM_DDM_ACT_DATA_CALL_IND
519typedef d2rm_ddm_act_data_call_cnf_prv_struct d2rm_ddm_act_data_call_ind_prv_struct;
520typedef struct
521{
522 LOCAL_PARA_HDR
523
524 /*common part*/
525 kal_uint32 cid;
526 kal_uint8 apn[APN_STRING_LEN];
527 kal_uint8 req_apn[APN_STRING_LEN];
528#if 0
529/* under construction !*/
530/* under construction !*/
531#endif
532 d2rm_ddm_ip_info_struct ip_info;
533 d2rm_ddm_net_info_struct net_info;
534 ddm_res_enum res_code;
535 /* private part */
536 d2rm_ddm_act_data_call_ind_prv_struct d2rm_ddm_prv;
537 d2pm_ddm_act_data_call_ind_prv_struct d2pm_ddm_prv;
538}d2rm_ddm_act_data_call_ind_struct;
539
540typedef struct
541{
542 LOCAL_PARA_HDR
543
544 /* common part */
545 kal_bool apn_present;
546 kal_uint8 apn[APN_STRING_LEN];
547 kal_bool req_apn_present;
548 kal_uint8 req_apn[APN_STRING_LEN];
549#if 0
550/* under construction !*/
551/* under construction !*/
552/* under construction !*/
553/* under construction !*/
554#endif
555 kal_bool ip_info_present;
556 d2rm_ddm_ip_info_struct ip_info;
557 kal_bool net_info_present;
558 d2rm_ddm_net_info_struct net_info;
559 at_cgev_ind_struct cgev_cmd;
560 kal_uint32 cid;
561 ps_cause_enum deact_cause;
562 d2pm_ddm_res_enum res;
563 kal_uint32 pdx_attr;
564 /*private part */
565 d2pm_ddm_urc_cgev_ind_prv_struct d2pm_ddm_prv;
566}d2rm_ddm_urc_cgev_ind_struct;
567
568// MSG_ID_D2RM_DDM_GET_DATA_CALL_LIST_IND
569typedef struct
570{
571 LOCAL_PARA_HDR
572
573 at_cgact_ind_struct cmd;
574 d2pm_ddm_comm_ind_prv_struct d2pm_ddm_prv;
575}d2rm_ddm_get_data_call_list_ind_struct;
576
577// MSG_ID_D2RM_DDM_GET_DYNAMIC_PARAM_IND
578typedef struct
579{
580 LOCAL_PARA_HDR
581
582 kal_uint32 cid;
583
584 d2pm_ddm_get_dynamic_param_ind_prv_struct d2pm_ddm_prv;
585}d2rm_ddm_get_dynamic_param_ind_struct;
586
587// MSG_ID_D2RM_DDM_GET_PDP_ADDRESS_IND
588typedef struct
589{
590 LOCAL_PARA_HDR
591
592 at_cgpaddr_ind_struct cmd;
593 d2pm_ddm_comm_ind_prv_struct d2pm_ddm_prv;
594}d2rm_ddm_get_pdp_address_ind_struct;
595
596//MSG_ID_D2RM_DDM_GET_SECONDARY_DYNAMIC_PARAM_IND
597typedef struct
598{
599 LOCAL_PARA_HDR
600
601 at_cgscontrdp_ind_struct cmd;
602 d2pm_ddm_comm_ind_prv_struct d2pm_ddm_prv;
603}d2rm_ddm_get_secondary_dynamic_param_ind_struct;
604
605// MSG_ID_D2RM_DDM_GET_QOS_IND
606typedef struct
607{
608 LOCAL_PARA_HDR
609
610 at_cgeqosrdp_ind_struct cmd;
611 d2pm_ddm_comm_ind_prv_struct d2pm_ddm_prv;
612}d2rm_ddm_get_qos_ind_struct;
613
614// MSG_ID_D2RM_DDM_GET_5GQOS_IND
615typedef struct
616{
617 LOCAL_PARA_HDR
618
619 at_c5gqosrdp_ind_struct cmd;
620 d2pm_ddm_comm_ind_prv_struct d2pm_ddm_prv;
621}d2rm_ddm_get_5gqos_ind_struct;
622
623// MSG_ID_D2RM_DDM_GET_TFT_IND
624typedef struct
625{
626 LOCAL_PARA_HDR
627
628 at_cgtftrdp_ind_struct cmd;
629 d2pm_ddm_comm_ind_prv_struct d2pm_ddm_prv;
630}d2rm_ddm_get_tft_ind_struct;
631
632//MSG_ID_D2RM_DDM_GET_PACKET_FILTER_IND
633typedef struct
634{
635 LOCAL_PARA_HDR
636
637 at_eglnkpf_ind_struct cmd;
638 d2pm_ddm_comm_ind_prv_struct d2pm_ddm_prv;
639}d2rm_ddm_get_packet_filter_ind_struct;
640
641// MSG_ID_D2RM_DDM_URC_EGEV_IND
642typedef struct
643{
644 LOCAL_PARA_HDR
645 kal_uint32 cid;
646 kal_uint8 apn[APN_STRING_LEN];
647 d2rm_ddm_ip_info_struct ip_info;
648 d2rm_ddm_net_info_struct net_info;
649 d2rm_ddm_ims_info_struct ims_info;
650 /* private part */
651 d2pm_ddm_mod_data_call_ind_prv_struct d2pm_ddm_prv;
652}d2rm_ddm_mod_data_call_ind_struct;
653
654// MSG_ID_D2RM_DDM_RST_RETRYTMR_IND
655typedef struct{
656 LOCAL_PARA_HDR
657
658 /* common part */
659 kal_bool apn_present;
660 kal_char apn[APN_STRING_LEN];
661 kal_uint32 cause; //TBD: if needed
662
663 /* private part */
664 d2pm_ddm_comm_ind_prv_struct d2pm_ddm_prv;
665}d2rm_ddm_rst_retrytmr_ind_struct;
666
667// MSG_ID_D2RM_DDM_GET_EPDG_INFO_IND
668typedef struct
669{
670 LOCAL_PARA_HDR
671
672 kal_int32 cid;
673 d2rm_ddm_ip_info_struct ip_info;
674}d2rm_ddm_get_epdg_info_ind_struct;
675/*******************************************************************************
676* D2RM TO DDM RSP *
677*******************************************************************************/
678
679typedef struct {
680 LOCAL_PARA_HDR
681 kal_uint8 rat_src;
682 kal_uint8 rat_dst;
683 kal_uint32 context_id;
684 kal_uint32 network_interface_id;
685 char cmd[128];
686} d2rm_db_test_req_struct;
687
688typedef struct d2rm_db_test_cnf_struct{
689 LOCAL_PARA_HDR
690 kal_bool is_successful;
691 ps_cause_enum error_result;
692 kal_uint8 ps_id;
693 kal_uint32 action;
694 kal_uint32 rat;
695 kal_uint32 cid;
696 kal_uint32 network_interface_id;
697 void *user_data;
698} d2rm_db_test_cnf_struct;
699
700//MSG_ID_D2RM_DB_DUMP_IND
701
702typedef enum {
703 RMDB_STATE_UNBIND = 0,
704 RMDB_STATE_UNBINDING = 1,
705 RMDB_STATE_BIND = 2,
706 RMDB_STATE_BINDING = 3,
707} rmdb_state_e;
708
709typedef enum {
710 RMDB_RAT_INVALID = ERR,
711 RMDB_RAT_CELLULAR = CELL,
712 RMDB_RAT_WIFI = WLAN,
713
714 RMDB_RAT_DATA_1 = DATA_1,
715 RMDB_RAT_DATA_2 = DATA_2,
716 RMDB_RAT_DATA_3 = DATA_3,
717 RMDB_RAT_DATA_4 = DATA_4
718} rmdb_rat_e;
719
720/* action */
721typedef enum {
722 RMDB_ACTION_NONE = 0,
723 RMDB_ACTION_NOTIFY_ONLY,
724 RMDB_ACTION_BIND,
725 RMDB_ACTION_UNBIND,
726 RMDB_ACTION_REBIND,
727
728 RMDB_ACTION_REBIND_BIND,
729 RMDB_ACTION_REBIND_UNBIND,
730} rmdb_action_e;
731
732typedef struct {
733 rmdb_action_e action;
734 rmdb_rat_e rat_src;
735 rmdb_rat_e rat_dst;
736 kal_uint32 cid;
737 kal_uint32 network_interface_id;
738} rmdb_action_info_t;
739
740typedef struct {
741 kal_uint32 cid;
742 rmdb_state_e state;
743 rmdb_rat_e rat;
744 kal_uint32 network_interface_id;
745} rmdb_cid_info_t;
746
747
748#define D2RM_DB_MAX_ACTION_INFO_NUM (16)
749#define D2RM_DB_MAX_CID_INFO_NUM (32)
750typedef struct {
751 LOCAL_PARA_HDR
752 char event[32];
753 kal_uint32 act_todo_num;
754 rmdb_action_info_t act_todo[D2RM_DB_MAX_ACTION_INFO_NUM];
755 kal_uint32 act_going_num;
756 rmdb_action_info_t act_going[D2RM_DB_MAX_ACTION_INFO_NUM];
757 kal_uint32 cid_num;
758 rmdb_cid_info_t cid[D2RM_DB_MAX_CID_INFO_NUM];
759} d2rm_db_dump_all_ind_struct;
760
761typedef struct {
762 LOCAL_PARA_HDR
763 char event[32];
764 rmdb_action_info_t act_info;
765 rmdb_cid_info_t cid_info;
766} d2rm_db_dump_info_ind_struct;
767
768typedef struct {
769 LOCAL_PARA_HDR
770#if 0
771/* under construction !*/
772/* under construction !*/
773/* under construction !*/
774#else
775 at_cgdata_req_struct cmd;
776 network_interface_id_info_struct selected_network_interface_id_info;
777 apn_type_info_struct apn_type_info;
778#endif
779} d2rm_ddm_pdn_bind_req_struct;
780
781typedef struct {
782 LOCAL_PARA_HDR
783 kal_uint32 context_id;
784 kal_bool is_successful;
785 ps_cause_enum error_result;
786} d2rm_ddm_pdn_bind_cnf_struct;
787
788typedef struct {
789 LOCAL_PARA_HDR
790#if 0
791/* under construction !*/
792#else
793 at_egld_req_struct cmd;
794#endif
795} d2rm_ddm_pdn_unbind_req_struct;
796
797typedef struct {
798 LOCAL_PARA_HDR
799 kal_uint32 context_id;
800 kal_bool is_successful;
801 ps_cause_enum error_result;
802} d2rm_ddm_pdn_unbind_cnf_struct;
803
804
805#endif
806