blob: a40228c1bdfff810a38e024cff67e4c42816c9e7 [file] [log] [blame]
yu.dongc33b3072024-08-21 23:14:49 -07001/*!
2 * @file ndpc_struct.h
3 * @author Roger Huang <chaomin.haung@mediatek.com>
4 * @version 1.0
5 * @section LICENSE
6 *
7 * This software is protected by Copyright and the information contained
8 * herein is confidential. The software may not be copied and the information
9 * contained herein may not be used or disclosed except with the written
10 * permission of MediaTek Inc. (C) 2005
11 *
12 * BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
13 * THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
14 * RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
15 * AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
16 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
17 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
18 * NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
19 * SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
20 * SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
21 * THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
22 * NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
23 * SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
24 *
25 * BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
26 * LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
27 * AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
28 * OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
29 * MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
30 *
31 * THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
32 * WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
33 * LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
34 * RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
35 * THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
36 *
37 * @section DESCRIPTION
38 * This file provides structure definition of ndpc ( NDP Client )
39 */
40
41#ifndef _NDPC_STRUCT_H
42#define _NDPC_STRUCT_H
43
44/*!
45 * @brief ndpc_cause_e enumerate possible cause of NDP Client
46 * @param NDPC_CAUSE_MIN pseudo state
47 * @param NDPC_CAUSE_SUCCESS success
48 * @param NDPC_CAUSE_NO_INSTANCE no instance available
49 * @param NDPC_CAUSE_INVALID_PARAMETER parameter is invalid
50 * @param NDPC_CAUSE_MAX pseudo state
51 */
52typedef enum _ndpc_cause {
53 NDPC_CAUSE_MIN = 0,
54 NDPC_CAUSE_SUCCESS = 1,
55 NDPC_CAUSE_NO_INSTANCE = 2,
56 NDPC_CAUSE_INVALID_PARAMETER = 3,
57 NDPC_CAUSE_INVALID_STATE = 4,
58 NDPC_CAUSE_MAX = 5,
59} ndpc_cause_e;
60
61
62/*!
63 * @brief ndpc_link_layer_type_e enumerate possible link layer type of
64 * NDP Client
65 * @param NDPC_LINK_MIN pseudo state
66 * @param NDPC_LINK_ETHERNET ethernet type
67 * @param NDPC_LINK_MAX pseudo state
68 */
69typedef enum _ndpc_link_layer_type {
70 NDPC_LINK_MIN = 0,
71 NDPC_LINK_ETHERNET = 1,
72 NDPC_LINK_MAX = 2,
73} ndpc_link_layer_type_e;
74
75
76#define NDPC_MAX_LINK_ADDRESS_SIZE 8
77/*!
78 * @brief ndpc_activagte_req_struct describe activate request information
79 * of NDP Client
80 */
81typedef struct _ndpc_activate_req_struct {
82 /*!
83 * @brief ILM local parameter header
84 */
85 LOCAL_PARA_HDR
86 /*!
87 * @brief ip instance identifier
88 */
89 kal_uint8 ip_id;
90 /*!
91 * @brief link layer type
92 */
93 ndpc_link_layer_type_e link_layer_type;
94 /*!
95 * @brief link layer address
96 */
97 kal_uint8 link_layer_address[NDPC_MAX_LINK_ADDRESS_SIZE];
98} ndpc_activate_req_struct;
99
100
101/*!
102 * @brief ndpc_activate_rsp_struct describe activate response information
103 * of NDP Client
104 */
105typedef struct _ndpc_activate_rsp_struct {
106 /*!
107 * @brief ILM local parameter header
108 */
109 LOCAL_PARA_HDR
110 /*!
111 * @brief ip instance identifier
112 */
113 kal_uint8 ip_id;
114 /*!
115 * @brief NDP Client instance identifier
116 */
117 kal_uint8 ndp_id;
118 /*!
119 * @brief response cause
120 */
121 ndpc_cause_e cause;
122} ndpc_activate_rsp_struct;
123
124
125/*!
126 * @brief ndpc_deactivate_req_struct describe deactivate request information
127 * of NDP Client
128 */
129typedef struct _ndpc_deactivate_req_struct {
130 /*!
131 * @brief ILM local parameter header
132 */
133 LOCAL_PARA_HDR
134 /*!
135 * @brief ip instance identifier
136 */
137 kal_uint8 ip_id;
138 /*!
139 * @brief NDP Client instance identifier
140 */
141 kal_uint8 ndp_id;
142} ndpc_deactivate_req_struct;
143
144
145/*!
146 * @brief ndpc_deactivate_rsp_struct describe deactivate response information
147 * of NDP Client
148 */
149typedef struct _ndpc_deactivate_rsp_struct {
150 /*!
151 * @brief ILM local parameter header
152 */
153 LOCAL_PARA_HDR
154 /*!
155 * @brief ip instance identifier
156 */
157 kal_uint8 ip_id;
158 /*!
159 * @brief NDP Client instance identifier
160 */
161 kal_uint8 ndp_id;
162 /*!
163 * @brief response cause
164 */
165 ndpc_cause_e cause;
166} ndpc_deactivate_rsp_struct;
167
168
169/*!
170 * @brief ndpc_packet_req_struct describe packet request information
171 * of NDP Client
172 */
173typedef struct _ndpc_packet_req_struct {
174 /*!
175 * @brief ILM local parameter header
176 */
177 LOCAL_PARA_HDR
178 /*!
179 * @brief ip instance identifier
180 */
181 kal_uint8 ip_id;
182 /*!
183 * @brief NDP Client instance identifier
184 */
185 kal_uint8 ndp_id;
186 /*!
187 * @brief request gpd packet buffer
188 */
189 void* gpd;
190} ndpc_packet_req_struct;
191
192
193/*!
194 * @brief ndpc_packet_ind_struct describe packet indicate information
195 * of NDP Client
196 */
197typedef struct _ndpc_packet_ind_struct {
198 /*!
199 * @brief ILM local parameter header
200 */
201 LOCAL_PARA_HDR
202 /*!
203 * @brief ip instance identifier
204 */
205 kal_uint8 ip_id;
206 /*!
207 * @brief NDP Client instance identifier
208 */
209 kal_uint8 ndp_id;
210 /*!
211 * @brief indicate gpd packet buffer
212 */
213 void* gpd;
214} ndpc_packet_ind_struct;
215
216
217/*!
218 * @brief ndpc_ip_up_ind_struct describe ip up indicate information
219 * of NDP Client
220 */
221typedef struct _ndpc_ip_up_ind_struct {
222 /*!
223 * @brief ILM local parameter header
224 */
225 LOCAL_PARA_HDR
226 /*!
227 * @brief ip instance identifier
228 */
229 kal_uint8 ip_id;
230 /*!
231 * @brief NDP Client instance identifier
232 */
233 kal_uint8 ndp_id;
234} ndpc_ip_up_ind_struct;
235
236
237/*!
238 * @brief ndpc_ip_down_ind_struct describe ip down indicate information
239 * of NDP Client
240 */
241typedef struct _ndpc_ip_down_ind_struct {
242 /*!
243 * @brief ILM local parameter header
244 */
245 LOCAL_PARA_HDR
246 /*!
247 * @brief ip instance identifier
248 */
249 kal_uint8 ip_id;
250 /*!
251 * @brief NDP Client instance identifier
252 */
253 kal_uint8 ndp_id;
254} ndpc_ip_down_ind_struct;
255
256
257#endif // _NDPC_STRUCT_H
258