blob: 1473592abe828f08cc6c406bf645865f916fc99c [file] [log] [blame]
yu.dongc33b3072024-08-21 23:14:49 -07001/*****************************************************************************
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 * Copyright Statement:
37 * --------------------
38 * This software is protected by Copyright and the information contained
39 * herein is confidential. The software may not be copied and the information
40 * contained herein may not be used or disclosed except with the written
41 * permission of MediaTek Inc. (C) 2001
42 *
43 *******************************************************************************/
44
45 /*******************************************************************************
46 * Filename:
47 * ---------
48 * global_def.h
49 *
50 * Project:
51 * --------
52 * MAUI
53 *
54 * Description:
55 * ------------
56 * global parameters definition
57 *
58 * Author:
59 * -------
60 *
61 *
62 *==============================================================================
63 * HISTORY
64 * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
65 *------------------------------------------------------------------------------
66 * removed!
67 *
68 * removed!
69 * removed!
70 * removed!
71 * removed!
72 *
73 * removed!
74 * removed!
75 * removed!
76 *
77 * removed!
78 * removed!
79 * removed!
80 *
81 * removed!
82 * removed!
83 *
84 * removed!
85 * removed!
86 * removed!
87 *
88 * removed!
89 * removed!
90 * removed!
91 * removed!
92 *
93 * removed!
94 * removed!
95 *
96 * removed!
97 * removed!
98 *
99 * removed!
100 * removed!
101 *
102 * removed!
103 * removed!
104 * removed!
105 * removed!
106 *
107 * removed!
108 * removed!
109 * removed!
110 *
111 * removed!
112 * removed!
113 * removed!
114 *
115 * removed!
116 * removed!
117 * removed!
118 *
119 * removed!
120 * removed!
121 * removed!
122 *
123 * removed!
124 * removed!
125 * removed!
126 *
127 * removed!
128 * removed!
129 * removed!
130 *
131 * removed!
132 * removed!
133 * removed!
134 *
135 * removed!
136 * removed!
137 * removed!
138 *
139 * removed!
140 * removed!
141 * removed!
142 *
143 * removed!
144 * removed!
145 * removed!
146 *
147 * removed!
148 * removed!
149 *
150 * removed!
151 * removed!
152 * removed!
153 *
154 * removed!
155 * removed!
156 * removed!
157 *
158 * removed!
159 * removed!
160 * removed!
161 *
162 * removed!
163 * removed!
164 * removed!
165 *
166 *------------------------------------------------------------------------------
167 * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
168 *==============================================================================
169 *******************************************************************************/
170
171#ifndef _GLBOAL_DEF_H
172#define _GLBOAL_DEF_H
173
174#include "kal_public_defs.h"
175
176/***** global constant *****/
177
178/* MAX_SIM_NUM */
179#ifdef __GEMINI__
180#ifdef GEMINI_PLUS
181#define MAX_SIM_NUM (GEMINI_PLUS)
182#else
183#define MAX_SIM_NUM (2)
184#endif /* GEMINI_PLUS */
185#else
186#define MAX_SIM_NUM (1)
187#endif /* __GEMINI__ */
188
189/* MAX_GSM_NUM */
190#ifdef __GEMINI__
191#ifdef GEMINI_PLUS_GSM
192#define MAX_GSM_NUM (GEMINI_PLUS_GSM)
193#else
194#define MAX_GSM_NUM (2)
195#endif /* GEMINI_PLUS_GSM */
196#else
197#define MAX_GSM_NUM (1)
198#endif /* __GEMINI__ */
199
200/* MAX_UMTS_NUM */
201#ifdef __GEMINI_WCDMA__
202#ifdef GEMINI_PLUS_WCDMA
203#define MAX_UMTS_NUM (GEMINI_PLUS_WCDMA)
204#else
205#define MAX_UMTS_NUM (2)
206#endif /* GEMINI_PLUS_WCDMA */
207#else
208#define MAX_UMTS_NUM (1)
209#endif /* __GEMINI_WCDMA__ */
210
211/* MAX_LTE_NUM */
212#ifdef __LTE_RAT__
213#ifdef __GEMINI_LTE__
214#ifdef GEMINI_PLUS_LTE
215#define MAX_LTE_NUM (GEMINI_PLUS_LTE)
216#else
217#define MAX_LTE_NUM (2)
218#endif /* GEMINI_PLUS_LTE */
219#else
220#define MAX_LTE_NUM (1)
221#endif /* __GEMINI_LTE__ */
222#else
223#define MAX_LTE_NUM (1)
224#endif /* __LTE_RAT__ */
225
226/* MAX_NR_NUM */
227// defined in makefile
228
229// TDD only support max 3 GSM
230#if MAX_GSM_NUM > 3
231#define MAX_GSM_TDD_NUM 3
232#else
233#define MAX_GSM_TDD_NUM (MAX_GSM_NUM)
234#endif
235
236// TDD only support max 1 UMTS
237#ifdef __UMTS_RAT__
238#define MAX_UMTS_TDD_NUM 1
239#endif
240
241// The following macros are for general handling of tdd/fdd module count in compile time
242// TDD only support max 2 GSM
243#define get_max_gsm_num(is_fdd_mode) ((KAL_TRUE == is_fdd_mode)? (MAX_GSM_NUM):(MAX_GSM_TDD_NUM))
244
245// TDD only support max 1 UMTS
246#ifdef __UMTS_RAT__
247#define get_max_umts_num(is_fdd_mode) ((KAL_TRUE == is_fdd_mode)? (MAX_UMTS_NUM):(MAX_UMTS_TDD_NUM))
248#endif
249
250#ifdef __LTE_RAT
251#define get_max_lte_num MAX_LTE_NUM
252#endif
253
254/* T+W mode switch code */
255typedef enum {
256 /* Pcore GAS */
257#if !(defined(DUMMY_PROTOCOL) && defined(__GSM_RAT__))
258 MOD_RRM_DEST,
259 MOD_RLC_DEST,
260 MOD_MPAL_DEST,
261 MOD_MAC_DEST,
262 MOD_LAPDM_DEST,
263 MOD_AS_DEST,
264 MOD_GAS_DEST,
265 MOD_RMPC_DEST,
266 MOD_REASM_DEST,
267#endif
268
269 /* Pcore UAS */
270#ifdef __UMTS_RAT__
271 MOD_DUMMY_UL2_DEST,
272 MOD_URLC_DEST,
273 MOD_UMAC_DEST,
274 MOD_UL2_DEST,
275 MOD_DUMMY_UL2D_DEST,
276 MOD_DRLC_DEST,
277 MOD_BMC_DEST,
278 MOD_UL2D_DEST,
279 MOD_PDCP_DEST,
280 MOD_RABM_DEST,
281 MOD_CSR_DEST,
282 MOD_DUMMY_URR_DEST,
283 MOD_MEME_DEST,
284 MOD_CSE_DEST,
285 MOD_CSCE_DEST,
286 MOD_SIBE_DEST,
287 MOD_USIME_DEST,
288 MOD_RRCE_DEST,
289 MOD_SLCE_DEST,
290 MOD_ADR_DEST,
291 MOD_URR_DEST,
292 MOD_DB_DEST,
293#endif
294
295 /* LAS part */
296#ifdef __GSM_RAT__
297 MOD_GISE_DEST,
298#endif
299#ifdef __UMTS_RAT__
300 MOD_LMEME_DEST,
301 MOD_LCSCE_DEST,
302 MOD_LURR_DEST,
303 MOD_LRRCE_DEST,
304 MOD_LURLC_DEST,
305 MOD_LUMAC_DEST,
306#endif
307
308 MAX_MODE_DUPLEX_MOD_NUM
309} mode_duplex_mod_id;
310
311typedef enum {
312 GL_SIM1,
313#if defined(__GEMINI__)
314 GL_SIM2,
315#if (GEMINI_PLUS >= 3)
316 GL_SIM3,
317#if (GEMINI_PLUS >= 4)
318 GL_SIM4,
319#endif /* GEMINI_PLUS >= 4 */
320#endif /* GEMINI_PLUS >= 3 */
321#endif
322 MAX_GL_SIM_NUM
323} GL_SIM_INDEX;
324
325extern void set_AS_to_FDD(GL_SIM_INDEX sim_index);
326extern void set_AS_to_TDD(GL_SIM_INDEX sim_index);
327extern void set_AS_to_activated(GL_SIM_INDEX sim_index);
328
329extern module_type query_real_module(mode_duplex_mod_id dest_module, GL_SIM_INDEX sim_index);
330
331/* T+W mode switch code */
332
333/*weitang:only for SIM editor requested by moja*/
334
335/***** global structure *****/
336
337
338#endif
339