blob: 911d989d1630b404b9cbcf414b2fe550089cf7fd [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 *
38 * Filename:
39 * ---------
40 * PPP2L4C_STRUCT.H
41 *
42 * Project:
43 * --------
44 * MAUI
45 *
46 * Description:
47 * ------------
48 * This file describes the common struct of TCM and L4C.
49 *
50 * Author:
51 * -------
52 * -------
53 *
54 *============================================================================
55 * HISTORY
56 * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
57 *------------------------------------------------------------------------------
58 * removed!
59 *
60 * removed!
61 * removed!
62 * removed!
63 *
64 * removed!
65 * removed!
66 * removed!
67 *
68 * removed!
69 * removed!
70 * removed!
71 *
72 * removed!
73 * removed!
74 * removed!
75 *
76 * removed!
77 * removed!
78 * removed!
79 *
80 * removed!
81 * removed!
82 * removed!
83 *
84 * removed!
85 * removed!
86 * removed!
87 *
88 * removed!
89 * removed!
90 * removed!
91 *
92 * removed!
93 * removed!
94 * removed!
95 *
96 * removed!
97 * removed!
98 * removed!
99 *
100 *------------------------------------------------------------------------------
101 * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
102 *============================================================================
103 ****************************************************************************/
104
105/********************************************************************************
106* Copyright Statement:
107* --------------------
108*
109* This product has been developed using a protocol stack
110* developed by Sasken Communication Technologies Limited.
111*
112********************************************************************************/
113
114#ifndef _PPP2L4C_STRUCT_H
115#define _PPP2L4C_STRUCT_H
116
117#include "kal_general_types.h"
118//#include "kal_non_specific_general_types.h"
119#include "kal_public_defs.h"
120
121typedef struct {
122 /* Warning::
123 * If result is PPPE_RESULT_FAILED, then only port and cause are valid in this struct
124 * else if the result is success, then src_id,context_id, pdp_type, port, and cause are all valid value in this struct
125 */
126 LOCAL_PARA_HDR
127 kal_uint8 src_id;
128 kal_uint8 context_id; // PH 20050223 MPDP
129 kal_uint8 result; /* success or failed*/
130 kal_uint8 pdp_type;
131 kal_uint8 port;
132 kal_uint8 cause; /* abnormal case */
133 kal_uint8 context_id2; //L4CPPP_FB_2, if it does not exist, fill with INVALID_PDP_CONTEXT_ID
134 kal_uint8 pdp_type2; //L4CPPP_FB_2, if it does not exist, fill with NULL PDP type
135} l4cppp_activate_cnf_struct;
136
137typedef struct {
138 LOCAL_PARA_HDR
139 kal_uint8 src_id;
140 kal_uint8 context_id; // PH 20050223 MPDP
141 kal_uint8 port;
142 kal_uint8 result;
143 kal_uint8 cause; /* abnormal case */
144 kal_uint8 context_id2; //L4CPPP_FB_2, if it does not exist, fill with INVALID_PDP_CONTEXT_ID
145} l4cppp_deactivate_cnf_struct;
146
147typedef struct {
148 LOCAL_PARA_HDR
149 kal_uint8 src_id;
150 kal_uint8 context_id; // PH 20050223 MPDP
151 kal_uint8 port;
152 kal_uint8 cause; /* abnormal case */
153 kal_uint8 context_id2; //L4CPPP_FB_2, if it does not exist, fill with INVALID_PDP_CONTEXT_ID
154} l4cppp_deactivate_ind_struct;
155
156typedef struct {
157 LOCAL_PARA_HDR
158 kal_uint8 src_id;
159 kal_uint8 result; /* success or failed*/
160 kal_uint8 port;
161} l4cppp_resume_cnf_struct;
162
163typedef struct {
164 LOCAL_PARA_HDR
165 kal_uint8 result; /* success or failed*/
166 kal_uint8 err_cause;
167 kal_uint8 ip_addr[4];
168 kal_uint8 pri_dns_addr[4];
169 kal_uint8 sec_dns_addr[4];
170 kal_uint16 mtu;
171} l4cppp_csd_activate_cnf_struct;
172
173typedef struct {
174 LOCAL_PARA_HDR
175 kal_uint8 result; /* success or failed*/
176 kal_uint8 err_cause;
177} l4cppp_csd_deactivate_cnf_struct;
178
179typedef struct {
180 LOCAL_PARA_HDR
181 kal_uint8 src_id;
182 kal_uint8 port;
183} l4cppp_escape_ind_struct;
184
185typedef struct {
186 kal_uint16 id;
187 kal_uint32 time_stamp;
188 kal_uint32 time_100us;
189 kal_uint16 frame_size;
190 kal_uint16 data_size;
191} frame_statistic_struct;
192
193typedef struct {
194 LOCAL_PARA_HDR
195 kal_uint8 direction;
196 frame_statistic_struct statistic[10];
197 kal_uint32 time_in_ms;
198} ppp_status_report_ind_struct;
199
200// PPP Type PDP Dialup Feature
201typedef struct {
202 LOCAL_PARA_HDR
203 kal_uint8 src_id;
204 kal_uint8 context_id;
205 kal_uint8 port;
206 kal_uint8 result; // success or fail
207} l4cppp_ppptypepdp_activated_ind_struct;
208
209//__IPV4V6__
210typedef struct {
211 LOCAL_PARA_HDR
212 kal_bool pdp_activate_rsp_accept; // accept or reject
213 kal_uint8 pdp_activate_rsp_pdp_type; // IPV4V6, IPV4, IPV6 --> only need when accept
214 kal_uint8 pdp_activate_rsp_cid; // 1, 2, 3
215 kal_uint16 pdp_activate_cause; // only for reject
216 kal_bool pdp_activate_cause2_present; // only for accept
217 kal_uint16 pdp_activate_cause2; // only for accept
218} l4cppp_ipv4v6_fallback_ind_struct;
219
220typedef struct {
221 LOCAL_PARA_HDR
222 kal_uint8 src_id;
223 kal_uint8 context_id;
224 kal_uint8 pdp_type;
225} l4cppp_initial_ip_type_ind_struct; //L4CPPP_FB
226#endif
227
228