blob: 0dd8bd0ea61a9ae3841e20691ea17707030f5957 [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) 2016
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* This Software is the property of VIA Telecom, Inc. and may only be used pursuant to a license from VIA Telecom, Inc.
38*
39* Any unauthorized use inconsistent with the terms of such license is strictly prohibited.
40*
41* Copyright (c) 1999-2010 VIA Telecom, Inc. All rights reserved.
42*
43*************************************************************/
44/****************************************************************************
45 *
46 * Module: wbios.h
47 *
48 * Purpose: WBIOS definitions and prototypes.
49 *
50 ****************************************************************************
51 *
52 * PVCS Header Information
53 *
54 *
55 * $Log: wbios.h $
56 *
57 * 11 03 2019 yanfeng.xu
58 * [MOLY00455977] [MT6885][Petrus][Q0][MP1][SI2][SQC][China][Guangzhou][4GMM][FT][MDST][CAT][FTAA][CT+CMCC][GZ-HOTEL][ASSERT]file:mcu/l1/mml1/mml1_tx/md97/src/mml1_tx_txsys_glb.c line:385
59 *
60 * 08 14 2019 tina.ma
61 * [MOLY00430774] [VMOLY]code merge from UMOLYE--MIPI feature for C2K PSW
62 *
63 * .
64 *
65 * 12 18 2018 danny.dai
66 * [MOLY00370973] [MT6779][Lafite][P0][BSP+][MP2][CTC FT][SH][om_c2k6m][Benchmark][FT_SQC_CS Performace_08]DUT MTC failure 12 times however REF-MI 8 se failure 1 times
67 *
68 * VMOLY.EVB.SEPT.DEV: opt for PCH resync denied issue
69 *
70 * 09 07 2018 yanfeng.xu
71 * [MOLY00342318] [MoDIS on Linux] MoDIS built by Clang toolchain on Linux
72 *
73 * 05 15 2018 tina.ma
74 * [MOLY00326014] [Gen95][MSPM] SW changes check in UMOLYE
75 *
76 * MSPM feature merge to UMOLYE
77 *
78 * 07 21 2017 jiayong.zhang
79 * [MOLY00265972] [Gen93]Merge code from R1 to TRUNK
80 *
81 * .
82 *
83 * 07 18 2017 adel.liao
84 * [MOLY00243822] [6293][C2K][HLP]code modify according to UT on UMOLYA TRUNK.
85 *
86 * UT stub and remove unused code in HLP
87 *
88 * 07 06 2017 sue.zhong
89 * [MOLY00259241] [6293][C2K]Replace with KAL data type
90 * Correct copyright file header
91 *
92 * 07 04 2017 yanfeng.xu
93 * [MOLY00261290] [BIANCO][MT6763][RDIT][L+L][BringUp]md1:(MCU_core0.vpe1.tc1(VPE1)) [ASSERT] file:mcu/l1core/modem/el1/el1d/src/tx/ltxerrorcheck.c line:132
94 *
95 * 07 04 2017 sue.zhong
96 * [MOLY00259241] [6293][C2K]Replace with KAL data type
97 * ::KAL type - L3, folder ps
98 *
99 * 05 19 2017 gavin.zhang
100 * [MOLY00247455] [6293][C2K][PS]Change KAL timer API to event scheduler API
101 *
102 * .
103 *
104 * 05 17 2017 peijun.zheng
105 * [MOLY00249027] [BIACNO][MT6763][New feature]C2K code release code modification
106 *
107 * C2k code release.
108 *
109 * 02 24 2017 yanfeng.xu
110 * [MOLY00231771] SIXTH00016527 merge to UMOLYA TRUNK
111 *
112 * 02 15 2017 danny.dai
113 * [MOLY00229716] [new feature]C2K EM Develop: 1xL3 and EvL3 module codes
114 *
115 * L3 EM: 1xrtt and evdo code for EM
116 *
117 * 02 14 2017 peijun.zheng
118 * [MOLY00226757] [Bianco Bring-up][C2K]Fix the problem of L3 UIM notify msg
119 *
120 * PSW UIM enhance
121 *
122 * 01 22 2017 lily.ruan
123 * [MOLY00225859] [6293][C2K]Merge CL from T0 branch to Trunk branch.
124 *
125 * merge access delay feature
126 *
127 * 01 12 2017 peijun.zheng
128 * [MOLY00221576] [6293][C2K] Fix the problem of bit 64 msg process, UIM enhance bug, Nvram register enhance
129 *
130 * 12 01 2016 sue.zhong
131 * [MOLY00213777] [6293][C2K]Sync C2K code to UMOLYA TRUNK(W1648)
132 * Update C2K source
133 *
134 * 11 09 2016 sue.zhong
135 * [MOLY00208435] [6293][C2K]Sync C2K code to UMOLYA TRUNK
136 * Update C2K PS code (1/2)
137 * Revision 1.14 2006/01/24 12:39:16 wavis
138 * Fix GetNam to always get active NAM.
139 * Revision 1.13 2005/12/21 11:32:26 hans
140 * Updated qpch algorithm and new L1 interface.
141 * Revision 1.12 2005/10/28 10:46:58 blee
142 * Add MMI event for packet data call status
143 * Revision 1.11 2005/10/27 11:59:21 vsethuraman
144 * CR 7079 :- OOSA event defined
145 * Revision 1.10 2005/10/26 13:09:25 hans
146 * cr7085 - Create new MMI Orig User Cancel event indication
147 * Revision 1.9 2005/08/17 14:11:05 hans
148 * CR6900 - Enhanced qpch indicator detection algorithm [DSPM/L1D/PSW]. CR6902 - Immediate PSW-L1D wake message for PCH/FCCCH
149 * Revision 1.8 2005/08/02 16:28:43 wfu
150 * - Add wbiosRschPowerSet prototype.
151 * - Delete wbiosSetTAdd prototype.
152 * Revision 1.7 2005/05/09 17:46:58 wfu
153 * Add #define EV_CONN_COMPLETE 85
154 * Revision 1.6 2005/03/18 11:46:03 hans
155 * Merged code changes from CBP4.05 revision 2.02 to CBP4.05 revision 4.21.
156 * Revision 1.5 2004/09/28 16:55:55 hans
157 * Changes from CBP6.0 merged.
158 * Revision 1.4 2004/04/23 10:51:18 asharma
159 * CBP6.1 (Phase-1) DV Data and Voice Call Setup changes.
160 * Revision 1.3.1.2 2004/04/14 15:21:03 asharma
161 * Revision 1.3 2004/04/06 14:02:27 dstecker
162 * CBP6.1 release 1
163 * Revision 1.2 2004/03/25 12:09:49 fpeng
164 * Updated from 6.0 CP 2.5.0
165 * Revision 1.3 2004/02/10 12:50:57 bcolford
166 * Merged CBP4.0 Release 8.05.0 changes.
167 * Revision 1.70 2003/12/02 18:07:55 akayvan
168 * Added the prototype for wbiosSrchResultsComplete().
169 * Revision 1.69 2003/11/06 11:19:41 ameya
170 * Changed STORED_SID_NID to STORED_POS_SID_NID.
171 * Revision 1.68 2003/08/13 15:09:09 mclee
172 * Remove arguement from sccCPServiceOptionValidation()
173 * Revision 1.67 2003/08/01 13:34:03 mclee
174 * Fix CR2506 by removing all instances of CBP3 compile flag and dead code
175 * Revision 1.66 2003/05/05 14:23:29 ameya
176 * Deleted the cpIS95NAMParms structure that is now merged into IS95NAMParms structure.
177 * Revision 1.65 2003/04/30 09:34:18 mclee
178 * Deleted prototype wbiosSrReorigCall(). Added prototype wbiosReorigCall().
179 * Revision 1.64 2003/04/28 10:49:51 byang
180 * CR#2165: Add data structure definition for R-SCH Config. Update
181 * and function prototype for wbiosRevSchConfigUpdate().
182 * Revision 1.63 2003/03/13 16:36:54 byang
183 * CR#1821: Add definition for data structure
184 * cpForSchL1dConfigUpdate and function prototype declaration
185 * for wbiosForSchConfigUpdate().
186 * Revision 1.62 2002/12/30 19:09:26 akayvan
187 * Per CR570, Cosmetic changes for replacement of
188 * IS2000A with either IS2000_REV_A or IS2000_REV_0.
189 * Revision 1.61 2002/12/26 15:07:56 dstecker
190 * Conditional compile flag IS2000A replaced with IS_2000_REV_A and IS_2000_REV_0
191 * Revision 1.60 2002/12/26 12:08:41 hans
192 * Conditional compile flag IS2000A replaced with IS_2000_REV_A and IS_2000_REV_0 for rev A and Rev 0 specific code.
193 * Revision 1.59 2002/11/21 12:29:07 bcolford
194 * Add prototype to support new RSSI reset callout.
195 * Revision 1.58.1.2 2002/11/12 15:52:00 bcolford
196 * Add prototype for a callout to reset the L1A Rssi state machines
197 * and queues prior to scanning a set of AMPS channels.
198 * Revision 1.58.1.1 2002/10/31 18:24:09 bcolford
199 * Duplicate revision
200 * Revision 1.58 2002/10/31 18:24:09 amala
201 * Changed RMS Error Phase parameter type to kal_uint8.
202 * Revision 1.57 2002/10/18 15:26:10 snreddy
203 * Modified wbiosForSch() and wbiosRevSch() to conform to the
204 * multiple SCh assignment design.
205 * Revision 1.56 2002/09/30 15:15:42 mshaver
206 * Changes to support the single NAM data structure type
207 * definition PswIs95NamT, of type packed.
208 * Revision 1.55 2002/09/10 16:50:35 bcolford
209 * Update the prototype for GetRSSI() function.
210 * Revision 1.54 2002/08/27 17:11:09 byang
211 * Update API for wbiosRsrAlloc(), wbiosRsrDealloc(), and
212 * wbiosResourceUpdate().
213 * Revision 1.53 2002/08/26 16:25:00 ameya
214 * Added events EV_CDMA_INSVC and EV_AMPS_INSVC to the set of events in PE.
215 * Revision 1.52 2002/08/22 11:08:10 agontar
216 * Change some static data to be declared constant - CR 1070
217 * Revision 1.51 2002/08/21 14:47:24 chinh
218 * Modified wbiosAccessMessageAbort() function prototype (CR917).
219 * Revision 1.50 2002/08/19 10:46:26 dstecker
220 * CBP4 candidate frequency implimentation
221 * Revision 1.49 2002/08/09 10:25:42 bcolford
222 * Add prototype to support Amps Focc Idle Mode (or power saving)
223 * control.
224 * Revision 1.48 2002/07/26 14:13:29 ameya
225 * Added negative sids/nids and stored negative sid/nid parameter to cpIS95NAMParms structure.
226 * Revision 1.47.3.2 2002/07/26 09:21:32 bcolford
227 * Add new prototype and macros for controlling Focc Idle Mode
228 * operation
229 * Revision 1.47.3.1 2002/07/16 10:30:39 bcolford
230 * Duplicate revision
231 * Revision 1.47 2002/07/16 10:30:39 dstecker
232 * Work around for TA timer expiration on access probes
233 * Revision 1.46 2002/07/15 13:16:03 chinh
234 * Removed compile switch CBP3_MERGE (CR598).
235 * Revision 1.45 2002/07/11 18:22:33 byang
236 * CR #421: Add EV_RETRY_TIMER_ACTIVE &
237 * EV_RETRY_TIMER_INACTIVE event to notify MMI when
238 * a retry order from the network is in forced.
239 * CR #952: Update function prototype for wbiosReportBurstDTMF().
240 * Revision 1.44 2002/06/13 13:59:58 hans
241 * Statistics functions already disabled with ifdef removed.
242 * Revision 1.43 2002/06/07 14:15:54 chinh
243 * Modified wbiosAccessMessageAbort function prototype to take
244 * the sendTime and preamble size as parameters (CR702).
245 * Revision 1.42 2002/06/06 13:16:07 chinh
246 * Changed and Added Copyright
247 * Revision 1.41 2002/05/31 20:10:21 akayvan
248 * QPCH/PI mods.
249 * Revision 1.40 2002/05/29 15:21:42 ameya
250 * Added prototype for wbiosCssValidateSyncMsg().
251 * Revision 1.39 2002/05/14 20:42:25 hans
252 * CR ID636 bug fix for retrievable and settable parameters.
253 * Revision 1.38 2002/05/10 14:07:27 ameya
254 * Added prototype for wbiosL1dSyncMsgRecvd().
255 * Revision 1.37 2002/05/07 16:29:01 byang
256 * Add function prototype declaration for
257 * wbiosSccGetDefaultServiceConfiguration().
258 * Revision 1.36 2002/03/28 18:26:10 hans
259 * is2000 rev 0 add 2, retrievable and settable parameters implemented.
260 * Revision 1.35 2002/03/01 16:30:06 AMALA
261 * Added Location Services AFLT functionality.
262 * Revision 1.34 2002/02/19 14:06:22 akayvan
263 * Prototype for wbiosReversePowerSet() was modified, also the
264 * declaration for wbiosTrafficChannelPowerStep() was commented
265 * out since it's now merged with wbiosReversePowerSet().
266 * Revision 1.33 2002/02/14 16:24:39 byang
267 * CR373: Add function prototype declaration for
268 * wbiosSccIsServOptionAttributeAvailable().
269 * Revision 1.32 2002/02/13 13:25:42 mshaver
270 * Revision description clean up.
271 * Revision 1.31 2002/02/12 17:21:12 bcolford
272 * Add the abbreviated alert, reorder and intercept processing on the
273 * voice channel as requested by a customer
274 * Revision 1.30 2002/02/06 11:49:56 mclee
275 * Add prototype wbiosAMPSGetkal_uint16Counts
276 * Revision 1.29 2002/01/31 13:52:41 bcolford
277 * Add the hooks for Idle Mode processing.
278 * Revision 1.28 2002/01/17 17:32:20 akayvan
279 * Implemented Slotted Mode mods.
280 * Revision 1.27 2002/01/10 17:12:24 AMALA
281 * Added emergency mode processing for new system selection.
282 * Revision 1.26 2002/01/02 10:13:21 AMALA
283 * Added new system selection changes.
284 * Added system re-scan functionality.
285 * Revision 1.25 2001/12/19 15:10:54 bcolford
286 * Make FrameIndex a 32 bit value so message cracking will work
287 * better.
288 * Revision 1.24 2001/12/14 17:13:14 mclee
289 * prototype wbiosPSInfoRsp()
290 * Revision 1.23 2001/11/20 12:34:32 mclee
291 * Add prototype wbiosReportNamInfo and struct cpModNamparms.
292 * Revision 1.22 2001/11/13 17:51:57 byang
293 * Added support for FSCH, RSCH, control hold and active for FCH.
294 * Revision 1.21 2001/11/08 12:31:59 AMALA
295 * Deleted unused function prototypes:
296 * wbiosGetActivePilotStrengthDbQ()
297 * wbiosGetMeanInputPower()
298 * Revision 1.20 2001/10/31 11:07:34 akayvan
299 * Modified wbiosReversePowerSet() parameter declaration type from
300 * kal_uint8 to kal_int8.
301 * Revision 1.19 2001/10/17 16:58:12 bcolford
302 * Add FOCC Duty Cycling Power Saving feature
303 * Revision 1.18 2001/10/08 14:48:07 mclee
304 * prototype wbiosReportPrlInfo()
305 * Revision 1.17 2001/09/17 14:11:51 AMALA
306 * CBP3 System Selection port
307 * Revision 1.16 2001/09/07 18:11:49 akayvan
308 * Added declaration for the new function
309 * wbiosForPowerControlParams() per FPC.
310 * Revision 1.15 2001/08/30 15:04:37 byang
311 * Modified wbiosSCServiceConfigurationValidation() to accept
312 * an enumeration instead of a Boolean.
313 * Revision 1.14 2001/08/03 15:15:48 dstecker
314 * Modifications for IS2000 handoffs
315 * Revision 1.13 2001/07/18 15:16:42 chinh
316 * cbp3 porting for Idle and Access
317 * Revision 1.12 2001/06/19 10:33:06 byang
318 * Changed the first parameter, pilotSeq, of wbiosPilotSet() from
319 * kal_int8 to kal_int16 for compatibility.
320 * Revision 1.11 2001/06/13 18:00:55 byang
321 * Changed the first parameter, pilotSeq, of wbiosPilotSet() from
322 * kal_uint8 to kal_int8 for compatibility.
323 * Revision 1.10 2001/06/12 15:46:07 byang
324 * Changed the first input parameter, pilotSeq, for
325 * engRelayPilotMeasureReport() from kal_uint8 to kal_int16.
326 * Revision 1.9 2001/05/29 14:19:27 akayvan
327 * Commented out the declaration for wbiosReportPwrRepFrames()
328 * per CR#17.
329 * Revision 1.8 2001/04/03 18:21:02 akayvan
330 * Added wbiosFDSCHAcqInd().
331 * Revision 1.7 2001/03/28 16:09:20 akayvan
332 * Removed declaration for wbiosFcschMonitorStop() per L1D
333 * request. Reduced the number of arguments for the function
334 * declaration of wbiosTrafficChannelSendMessage().
335 * Revision 1.6 2001/03/16 11:36:36 akayvan
336 * Traffic code phase1 added.
337 * Revision 1.5 2001/02/14 10:06:30 dstecker
338 * fixed a vanishing prototype
339 * Revision 1.3 2001/02/09 17:01:56 dstecker
340 * fix compile warnings (none where bugs)
341 * Revision 1.2 2001/01/29 18:20:53 dstecker
342 * new access probe architecture
343 * Revision 1.1 2001/01/17 10:59:55 plabarbe
344 * Initial revision
345 * Revision 1.3 2000/12/05 17:45:38 byang
346 * Idle mode - IS2000A Addendum modifications.
347 * Revision 1.2 2000/11/13 14:27:26 byang
348 * IS-2000A Idle Mode and LAC integration - Initial Release.
349 * Revision 1.1 2000/10/24 21:11:38Z fpeng
350 * Initial revision
351 * Revision 1.12 2000/09/23 02:37:48Z rnookala
352 * removed function protoype wbiosGetPrl
353 * Revision 1.11 2000/09/09 00:07:08Z RSATTARI
354 * Added function proto for wbiosReportFull SystemTime().
355 * Revision 1.10 2000/08/31 23:42:01Z bcolford
356 * Replaced AMPS_SUPPORTED with SYS_OPTION_AMPS.
357 * Revision 1.9 2000/08/23 22:24:32Z rnookala
358 * Isotel release 2.8
359 * Revision 1.8 2000/07/27 01:31:20Z hhong
360 * To add prototye for wbiosAccesptLongCodeChangeReq to get rid of
361 * compiler warning.
362 * Revision 1.7 2000/06/01 15:23:38Z bcolford
363 * Removed prototype to wbiosAMPSL1dStartup() function.
364 * Revision 1.6 2000/05/19 01:19:19Z hhong
365 * To add wbiosReportCPDisconnect
366 * Revision 1.5 2000/03/31 16:58:09Z cmastro
367 * fixed merge misshap
368 * Duplicate revision
369 * Revision 1.2 2000/03/01 18:18:44Z rsattari
370 * Isotel release 2.3 updates.
371 * Revision 1.66 2000/01/25 16:41:18 gfrye
372 * Missed name change in function prototype.
373 *
374 * Revision 1.65 2000/01/25 14:38:32 gfrye
375 * Changed PRL list structure name to Is683PrlList to avoid name
376 * conflict with OTA and removed unused elements.
377 *
378 * Revision 1.64 2000/01/24 16:33:20 gfrye
379 * Changed "wbiosOtaGet" to wbiosGet" to avoid name conflict with OTASP.
380 *
381 * Revision 1.63 2000/01/21 22:14:17 gfrye
382 * Added new functions to get new values for NAM parameters.
383 *
384 * Revision 1.62 2000/01/17 22:27:19 scotvold
385 * TC Backward Compatibility changes.
386 *
387 * Revision 1.61 1999/12/23 18:54:23 gfrye
388 * Added wbiosSetTAdd to inform the SFM of the current value for T_ADD.
389 *
390 * Revision 1.60 1999/12/09 23:04:35 gfrye
391 * New functions for OTASP and PRL support.
392 *
393 * Revision 1.59 1999/09/11 00:20:19 scotvold
394 * Removed repeat flag from wbiosTrafficChannelSendMessage().
395 *
396 * Revision 1.58 1999/09/02 20:18:12 gfrye
397 * Added wbiosSCServiceOptionIsHSPD to determine if a particular
398 * rev 3+ page response or origination is for a HSPD service.
399 *
400 * Revision 1.57 1999/08/27 19:42:19 gfrye
401 * Expanded dynamic range of sleep times for wbiosOutOfServiceAreaSleep.
402 *
403 * Revision 1.56 1999/07/28 19:29:09 gfrye
404 * Added new prototype wbiosOosaWakeup to wake up L1 if an origination is
405 * received during OOSA sleep.
406 *
407 * Revision 1.55 1999/07/23 18:00:22 scotvold
408 * Changes to wbiosReportHandoff API call to indicate
409 * type of Hard Handoff.
410 *
411 * Revision 1.54 1999/06/20 04:28:09 scotvold
412 * Removed redundant declarations.
413 *
414 * Revision 1.53 1999/06/19 02:02:15 dfischer
415 * Added EV_TC_RELEASE_LOCK
416 *
417 * Revision 1.52 1999/06/11 02:11:13 mhayduk
418 * Added new CP response value for data burst sent indication
419 * from L3.
420 *
421 * Revision 1.51 1999/06/11 01:05:03 mhayduk
422 * Added reporting of packet zone ID and P_REVr.
423 *
424 * Revision 1.50 1999/06/04 23:27:26 scotvold
425 * New Message Transmitter.
426 *
427 * Revision 1.49 1999/05/19 20:21:30 mhayduk
428 * Removed wbiosSCHSPDEnabled().
429 * Added wbiosReportPacketZoneID().
430 *
431 * Revision 1.48 1999/05/18 17:37:14 dfischer
432 * Added wait for event EV_ANALOG_PAGE_RECEIVED when a page is received
433 *
434 * Revision 1.47 1999/05/04 21:29:20 mhayduk
435 * Added support to request voice privacy indication for indication
436 * in Page Response.
437 *
438 * Revision 1.46 1999/04/16 00:54:23 mhayduk
439 * Modified parameters passed in AMPS dtmf calls.
440 *
441 * Revision 1.45 1999/04/15 01:38:11 mhayduk
442 * Added reporting of pwr_rep_frames.
443 *
444 * Revision 1.44 1999/04/14 16:45:36 scotvold
445 * EV_TC_RELEASE_XX API changes.
446 * Conversation Quality Alarm API change.
447 *
448 * Revision 1.43 1999/04/12 13:31:46 scotvold
449 * Added T53 HSPD support.
450 * Added 95B SCAM support.
451 * Added 95B GHDM support and consolidated with EHDM.
452 *
453 * Revision 1.42 1999/03/18 19:55:25 mhayduk
454 * Added support for Searching Out of Service Area operation.
455 *
456 * Revision 1.41 1999/03/03 00:30:45 mhayduk
457 * Added support for reporting of PSIST failure.
458 *
459 * Revision 1.40 1999/02/24 04:10:38 scotvold
460 * Added Service Configuration Reject reason.
461 *
462 * Revision 1.39 1999/02/08 22:58:03 scotvold
463 * Changed Feature/Alert/Flash interfaces.
464 * Changed wbiosSCServiceOptionControl interfaces.
465 *
466 * Revision 1.38 1999/02/04 21:54:13 scotvold
467 * Added missing R1.2 changes.
468 *
469 * Revision 1.37 1999/01/26 18:52:17 scotvold
470 * R1.2 API changes.
471 *
472 * Revision 1.36 1999/01/21 17:21:55 lchhailo
473 * fixed syntax
474 *
475 * Revision 1.35 1999/01/20 23:39:20 mhayduk
476 * Added broadcast parameter to wbiosReportDataBurst.
477 *
478 * Revision 1.34 1999/01/20 23:23:12 scotvold
479 * R1.20 API CP Event changes.
480 *
481 * Revision 1.33 1999/01/09 00:41:07 scotvold
482 * R1.20 API changes.
483 *
484 * Revision 1.32 1999/01/07 18:45:27 dfischer
485 * Added wbiosReportMessageWaiting
486 *
487 * Revision 1.31 1999/01/07 16:32:10 mhayduk
488 * Added new wrapper calls: wbiosSystemSelection and
489 * wbiosReportAccessMaxCapsuleSize.
490 *
491 * Revision 1.30 1999/01/06 19:02:35 dfischer
492 * Added EV_MAINTENANCE
493 *
494 * Revision 1.29 1998/12/02 16:25:27 mhayduk
495 * Updated to remove non-T53 structures and calls.
496 *
497 * Revision 1.28 1998/12/02 01:51:30 scotvold
498 * Added T53 guards for #include.
499 *
500 * Revision 1.27 1998/12/02 00:12:51 scotvold
501 * Added statistics.
502 *
503 * Revision 1.26 1998/11/27 17:44:42 mhayduk
504 * Cleaned up event names.
505 *
506 * Revision 1.25 1998/11/27 00:34:25 dfischer
507 * Added EV_DIALING_COMPLETE and EV_DIALING_CONTINUE
508 *
509 * Revision 1.24 1998/11/26 23:35:26 mhayduk
510 * Removed wbiosReportCallPageResponse().
511 *
512 * Revision 1.23 1998/11/26 23:09:59 mhayduk
513 * Remove wbiosReportSystemInfo().
514 *
515 * Revision 1.22 1998/11/26 22:07:27 mhayduk
516 * Added nwe API definitions for API doc rev. 1.12.
517 *
518 * Revision 1.21 1998/11/03 01:15:00 guterman
519 * Fixed typo in wbios function
520 *
521 * Revision 1.20 1998/11/02 22:15:25 scotvold
522 * Added Service Option/Multiplex Option record support.
523 *
524 * Revision 1.19 1998/10/20 23:58:23 mhayduk
525 * Added T53 support.
526 *
527 * Revision 1.18 1998/09/22 18:44:57 tdaly
528 * Added IS-95 analog mode support.
529 *
530 * Revision 1.17 1998/09/11 16:22:48 scotvold
531 * Handoff API changes.
532 *
533 * Revision 1.16 1998/09/11 02:42:30 scotvold
534 * Added return to Service Option Control API calls.
535 *
536 * Revision 1.15 1998/08/17 23:06:26 scotvold
537 * Added wbiosAcceptLongCodeChangeReq() call.
538 *
539 * Revision 1.14 1998/08/14 23:50:28 scotvold
540 * Added Data Burst support.
541 *
542 * Revision 1.13 1998/08/13 00:15:20 scotvold
543 * Added DTMF support.
544 *
545 * Revision 1.12 1998/07/31 16:11:29 scotvold
546 * wbiosSetCallHistParameter() change.
547 *
548 * Revision 1.11 1998/07/27 17:19:55 scotvold
549 * API change for wbiosServiceConfigurationValidation() and wbiosServiceOptionValidation().
550 *
551 * Revision 1.10 1998/07/14 17:26:44 scotvold
552 * Service Configuration Initiation, Transmitter Control, and RTC Traffic Type calls added.
553 *
554 * Revision 1.9 1998/07/03 16:57:30 dfischer
555 * New load
556 *
557 * Revision 1.8 1998/06/12 14:50:38 scotvold
558 * Updated for Release 0.07.
559 *
560 * Revision 1.7 1998/06/10 22:58:04 scotvold
561 * Traffic Channel API updates
562 *
563 * Revision 1.6 1998/06/08 21:48:25 scotvold
564 * Updated for Release 0.06.
565 *
566 * Revision 1.5 1998/05/27 17:16:28 scotvold
567 * Updated for Release 0.05.
568 *
569 * Revision 1.4 1998/05/01 18:13:54 scotvold
570 * Update for release 0.04
571 *
572 * Revision 1.3 1998/03/30 23:26:03 mhayduk
573 * Release 0.03.
574 *
575 * Revision 1.1 1997/11/06 17:49:24 mhayduk
576 * Initial revision
577 *
578 *
579 ****************************************************************************
580 ****************************************************************************/
581
582#ifndef _WBIOS_H_
583
584 #define _WBIOS_H_ 1
585
586/*****************************************************************************
587 * Includes
588 ****************************************************************************/
589#include "systime.h"
590#include "longcode.h"
591#include "channel.h"
592#include "pilots.h"
593#include "Serv_cfg.h"
594#include "status.h"
595#include "layer2.h"
596#include "srbp_access.h"
597#include "register.h"
598#include "Msg_defn.h"
599#include "pch_msg.h"
600#include "stats.h"
601#include "ho_cf.h"
602#include "pswnam.h"
603#include "lmdapi.h"
604#include "valapi.h"
605#include "eng_idle.h"
606#include "psw_msgid.h"
607#include "css_msgid.h"
608#include "hlp_msgid.h"
609#include "uim_msgid.h"
610#include "lec_msgid.h"
611
612#ifdef MTK_CBP_SYNC_OPTIMIZE
613#include "hscapi.h"
614#endif /* MTK_CBP_SYNC_OPTIMIZE */
615
616#ifdef MTK_CBP_REL_OPTIMIZE
617#include "valpswapi.h"
618#endif
619
620#include "xl3_em.h"
621#include "Msg_defn.h"
622#include "psw_dhl_trace.h"
623
624#ifdef MTK_DEV_C2K_IRAT
625#include "mspm_public_api.h"
626#endif /* MTK_DEV_C2K_IRAT */
627
628/*****************************************************************************
629 * Defines
630 ****************************************************************************/
631
632
633/* Call Processing Response Types */
634#define CP_RSP_BURST_DTMF 1
635#define CP_RSP_CONT_DTMF_ON 2
636#define CP_RSP_CONT_DTMF_OFF 3
637#define CP_RSP_DATA_BURST 4
638#define CP_RSP_DATA_BURST_SENT 5
639#define CP_RSP_FLASH 6
640#define CP_RSP_VP 7
641#define CP_REJ_INVALID_STATE 8
642#define CP_REJ_TC_TXQ_FULL 9
643#define CP_REJ_FC_ERROR 10
644#define CP_REJ_ORDER_ERROR 11
645#define CP_REJ_FMT_OVERFLOW 12
646
647/* Handoff Types */
648#define HO_IDLE_SAME_SYSTEM 1
649#define HO_IDLE_NEW_SYSTEM 2
650#define HO_SOFT 3
651#define HO_HARD 4
652#define HO_TC_TO_AVC 5
653
654/* Service Configuration Request */
655#define SC_REQ_SERV_CFG 1
656#define SC_REQ_SERV_OPT 2
657#define SC_REQ_SERV_CTL 3
658
659/* Service Configuration Response */
660#define SC_RSP_SERV_CFG_REQ 1
661#define SC_RSP_SERV_OPT_REQ 2
662#define SC_RSP_SERV_CTL_REQ 3
663#define SC_IND_SERV_CFG_COMPLETE 4
664#define SC_REJ_BS_REJECT 5
665#define SC_REJ_INVALID_STATE 6
666#define SC_REJ_TC_TXQ_FULL 7
667#define SC_REJ_FC_ERROR 8
668#define SC_REJ_SNM_ERROR 9
669#define SC_REJ_NO_CONN 10
670#define SC_REJ_FMT_OVERFLOW 11
671
672/* These macros specify the operation of AMPS Idle Mode Processing */
673#define FOCC_IDLE_MODE_DISABLE 0
674#define FOCC_IDLE_MODE_ENABLE 1
675
676/* These macros are used to control the AMPS RSSI mechanism */
677#define RSSI_FOR_DISPLAY_ONLY 0
678#define RSSI_FOR_NORMAL_SCANNING 1
679
680#define MAX_SID_NID_PAIRS 20
681#define MAX_IMSI_T_S_SIZE 5
682
683#define NO_SERVICE_TIMEOUT 60000L
684/* Traffic channel message transmission priority levels */
685typedef enum
686{
687 PRIORITY_LOW = 0,
688 PRIORITY_MEDIUM,
689 PRIORITY_HIGH
690} Priority;
691
692/*
693 * IS-95B Authentication Data
694 */
695typedef struct {
696 kal_uint32 A_KEY[2];
697 kal_uint8 SSDa[8];
698 kal_uint8 SSDb[8];
699} cpIS95AuthParms;
700
701/* NAM values requiring.
702 * Parameter Change Registration
703 */
704typedef struct {
705 kal_uint8 slotCycleIndex;
706 kal_uint8 scm;
707 kal_bool mobTermHome;
708 kal_bool mobTermForSid;
709 kal_bool mobTermForNid;
710} cpPcrParms;
711
712/* Forward SCH Assignments */
713typedef struct
714{
715 kal_uint16 pilotPn;
716 kal_uint16 forSchCcIndex;
717 kal_uint8 qofMaskIdSch;
718} cpSupShoRec;
719
720typedef struct
721{
722 kal_uint8 forSchId;
723 SchRateIndex forSchRate;
724 kal_uint8 forSchDuration;
725 WbiosSystime forSchActionTime;
726 kal_uint8 numSupSho;
727 cpSupShoRec supSho[ CP_MAX_SUP_SHO ];
728} cpForSchRec;
729
730typedef struct
731{
732 kal_uint8 schId;
733 kal_uint8 fer;
734 kal_int16 initSetpt;
735 kal_uint8 minSetpt;
736 kal_uint8 maxSetpt;
737} cpFpcParams;
738
739typedef struct
740{
741 kal_bool fpcPriChansIncl;
742 kal_uint8 fpcPriChans;
743 kal_uint8 pilotGatingUseRate;
744 kal_bool forSchFerRep;
745 kal_uint8 numForSch;
746 cpForSchRec forSch[ CP_MAX_FOR_SCH ];
747 kal_bool fpcSchIncl;
748 kal_uint8 fpcModeSch;
749 kal_uint8 fpcSecChan;
750 kal_uint8 fpcSchInitSetptOp;
751 kal_bool fpcThreshSchIncl;
752 kal_uint8 fpcSetptThreshSch;
753 kal_uint8 numSup;
754 kal_bool fpcSchInitSetptIncl;
755 cpFpcParams fpcSchSetpt[ CP_MAX_FOR_SCH ];
756} cpForSchL1dAssign;
757
758
759typedef struct
760{
761 kal_bool droppingFchSchPilot;
762 kal_uint8 numForSch;
763 kal_uint8 numSupSho[ CP_MAX_FOR_SCH ];
764 cpSupShoRec supSho[ CP_MAX_FOR_SCH ][ CP_MAX_SUP_SHO ];
765} cpForSchL1dConfigUpdate;
766
767
768/* Reverse SCH Assignments */
769typedef struct
770{
771 kal_uint8 revSchId;
772 kal_uint8 revSchDuration;
773 WbiosSystime revSchActionTime;
774 SchRateIndex revSchRate;
775 kal_uint8 revWalshId;
776 kal_int16 pilotRefLevel;
777 kal_int16 rschPower;
778} cpRevSchL1dRec;
779
780
781typedef struct
782{
783 kal_uint8 revSchDtxDuration;
784 kal_uint8 numRevSch;
785 cpRevSchL1dRec revSchRec[ CP_MAX_REV_SCH ];
786} cpRevSchL1dAssign;
787
788typedef struct {
789 kal_uint16 FIRSTCHP;
790 kal_uint16 HOME_SID;
791 kal_uint8 EX;
792 kal_uint8 COUNT;
793 kal_uint8 SLOTTED_MODE;
794 kal_uint8 IMSI_M_CLASS;
795 kal_uint8 IMSI_M_ADDR_NUM;
796 kal_uint16 MCC_M;
797 kal_uint8 IMSI_M_11_12;
798 kal_uint8 IMSI_M_S[5];
799 kal_uint8 ACCOLC;
800 kal_uint8 LOCAL_CONTROL;
801 kal_uint8 MOB_TERM_HOME;
802 kal_uint8 MOB_TERM_FOR_SID;
803 kal_uint8 MOB_TERM_FOR_NID;
804 kal_uint8 MAX_SID_NID;
805 kal_uint8 STORED_POS_SID_NID;
806 kal_uint16 SID[MAX_SID_NID_PAIRS];
807 kal_uint16 NID[MAX_SID_NID_PAIRS];
808 kal_bool Updated;
809} IS95NAMParms;
810
811typedef struct {
812 kal_uint8 IMSI_T_CLASS;
813 kal_uint8 IMSI_T_ADDR_NUM;
814 kal_uint16 MCC_T;
815 kal_uint8 IMSI_T_11_12;
816 kal_uint8 IMSI_T_S[MAX_IMSI_T_S_SIZE];
817 kal_bool Updated;
818} IS95IMSI_TParms;
819
820typedef struct
821{
822 kal_uint8 revSchId;
823 kal_uint8 revSchRate;
824 kal_uint8 revWalshId;
825} cpRevSchConfigRec;
826
827typedef struct
828{
829 kal_uint8 numRevSch;
830 cpRevSchConfigRec revSchConfigRec[ CP_MAX_REV_SCH ];
831} cpRevSchConfigUpdate;
832
833
834/* R-CQICH Gain level */
835typedef enum
836{
837 RCQICH_GAIN_LOW = 0,
838 RCQICH_GAIN_HIGH
839} RCqichGainLevel;
840
841
842/*****************************************************************************
843 * WBIOS prototypes
844 ****************************************************************************/
845
846 /* Distance Based registration */
847 kal_bool wbiosDistanceBasedReg(kal_int32 baseLat,kal_int32 baseLatRg,kal_int32 baseLong,
848 kal_int32 baseLongReg,kal_uint16 distance);
849 /* ESN & NVM Interface function prototypes */
850 void wbiosRetrieveChannel (SysBandChannelT *channel, kal_uint8 index);
851 void wbiosSaveChannel(SysBandChannelT *channel);
852 void wbiosSetReturnChannel (SysBandChannelT *channel, kal_bool withSyncCh);
853 void wbiosSetSSDA(kal_uint8 *ssda);
854 void wbiosSetSSDB(kal_uint8 *ssdb);
855 kal_bool wbiosInitializeAkey(kal_uint32 *a_key);
856 void wbiosSetCallHistParameter(kal_uint8 count);
857 void wbiosSetRand(kal_uint32 rand);
858 kal_uint8* wbiosGetPtrToPRL(void);
859 void wbiosSetSIDNIDList(SidNidList *entry);
860 void wbiosSetTMSIAssignment(kal_uint8 len,kal_uint8 *zone,kal_uint32 code,kal_uint32 expTime);
861 void wbiosSetZoneList(ZoneList *entry);
862 void wbiosDeleteZoneList(void);
863 void wbiosDeleteSIDNIDList(void);
864 void wbiosSetBaseDistanceRegInfo(kal_int32 baseLat,kal_int32 baseLong, kal_uint16 distance);
865
866 /* Call Progression Interface function prototypes */
867 void wbiosReportAlert(FORInfoData *alertData);
868 void wbiosReportMessageWaiting(kal_uint8 numMsgs);
869 void wbiosReportBurstDTMF( const kal_uint8 numOfDigits,
870 const kal_uint8 dtmfOnLength,
871 const kal_uint8 dtmfOffLength,
872 const char* digits );
873 void wbiosReportCPEvent(kal_uint8 event, kal_bool inclSO, PswServiceOptionT SO);
874 void wbiosReportCPResponse(kal_uint8 response, kal_uint8 request);
875 void wbiosReportCPStatus(ValRptCpStatusMsgT *status);
876 void wbiosReportDataBurst(kal_uint8 msgNumber, kal_uint8 burstType,kal_uint8 numMsgs,
877 kal_uint8 numFields,kal_uint8* data);
878 void wbiosReportBroadcastDataBurst(kal_uint8 addrLen, kal_uint8 *addr, kal_uint8 msgNumber,
879 kal_uint8 burstType, kal_uint8 numMsgs, kal_uint8 numFields,
880 kal_uint8* data);
881 kal_bool wbiosSccBcastConfigured(void);
882 kal_bool wbiosSccBcastExpected(kal_uint8 burstType, kal_uint8 addrLen, kal_uint8 *addr);
883 void wbiosReportFeatureNotification(FORInfoData *featureData);
884 void wbiosReportFlash(FORInfoData *ftcFlashData);
885 void wbiosReportHandoff(kal_uint8 type, HOTCReport* hoTCReport);
886 void wbiosReportLock(kal_uint8 reason);
887 void wbiosReportMaintenanceRequired(kal_uint8 reason);
888 void wbiosReportPacketZoneID(kal_uint8 zone);
889 void wbiosReportNetworkPRev(kal_uint8 pRev);
890 void wbiosReportNetworkPRevAndPRevInUse(kal_uint8 pRev, kal_uint8 pRevInUse);
891 void wbiosReportRegistrationAccept(kal_bool roamIndPresent, kal_uint8 roamInd);
892 void wbiosReportRegistrationReject(void);
893 void wbiosReportStartContinuousDTMF(char digit);
894 void wbiosReportStopContinuousDTMF(void);
895 void wbiosReportSystemTime(kal_uint8 *sysTime,kal_uint8 lpSec,kal_uint8 ltmOff,kal_uint8 dayLt);
896 void wbiosReportUnlock(void);
897 void wbiosSystemError(kal_uint16 error);
898 kal_bool wbiosSccIsServOptionAttributeAvailable( const kal_uint16 servOption );
899 ServiceConfiguration* wbiosSccGetDefaultServiceConfiguration( const kal_uint16 servOption );
900 ServiceConfiguration* wbiosSccGetPrefServiceConfiguration( kal_uint16 servOption );
901
902
903 /* Slotted Sleep Mode */
904 void wbiosSlottedModeEnable(kal_uint16 pgslot,
905 kal_uint8 slotCycleIndex,
906 kal_bool qpchEnabled,
907 kal_uint8 QPAGECHs,
908 kal_bool QPCH_RATEs/*,
909 kal_uint8 QPCH_POWER_LEVEL_PAGEs*/);
910
911 void wbiosSleep(WbiosSystime sysTime, kal_uint16 PIPosition, SleepType SleepType,
912 QpchTransPwr QpchRatioIdx, kal_uint16 TargetPN);
913 void wbiosSlottedModeDisable(void);
914 void wbiosSrchResultsComplete(void);
915 void wbiosWakeup(WakeModeT wakeMode);
916 void wbiosOosaWakeup(void);
917
918 /* Timer control */
919 kal_int16 wbiosSetTimer(kal_uint32 duration);
920 void wbiosSetTATimer(kal_uint32 duration);
921 void wbiosSetUimTimer(kal_uint32 duration);
922 void wbiosKillTimer(kal_int16 timerId);
923 void wbiosKillTATimer(void);
924 void wbiosKillUimTimer(void);
925
926 /* Channel Acquisition */
927 void wbiosPilotAcquireAbort(void);
928 void wbiosPilotAcquireStart(SysBandChannelT *channel);
929 void wbiosL1dPswRfReleaseReq(void);
930 void wbiosOutOfServiceAreaSleep(kal_uint16 tenthsOfSeconds);
931 void wbiosOosaContSleepReq(kal_uint32 sleepDuration);
932 void wbiosSyncToSystemTime(kal_uint16 frame, kal_uint16 pilotPN, Longcode *lcState,
933 SyncMsgSysTimeType* sysTime);
934 void wbiosSyncAcquireStart(void);
935 void wbiosSyncAcquireAbort(void);
936 void wbiosL1dSyncMsgRecvd(void);
937
938 /* Pilot monitoring */
939 void wbiosCDMACandFreqSearchParm(CFSet* set, CFSearchParms* parms);
940 void wbiosCDMACandFreqSearchStart( WbiosSystime* actionTime, kal_uint8 SearchOffset,
941 kal_uint8 totalOffTimeFwd, kal_uint8 totalOffTimeRev );
942 void wbiosSCNNServiceConfiguration(NNServiceConfiguration* servCfg,
943 WbiosSystime* actionTime);
944
945 void wbiosIdlePilotSet(kal_int16 pilotSeq, IdlePilotSet *set, kal_uint16 pilotInc);
946 void wbiosIdleChangePilotSet (IdleChangePilotSet*set);
947 void wbiosPilotSearchWindow(PilotSearchWindow *window);
948 void wbiosPilotSet(kal_int16 pilotSeq, PilotSet *set, kal_uint16 pilotInc);
949 void wbiosAfltPilotSet(kal_uint16 seqNum, kal_uint16 refPN, kal_int16 refTimeCrrct,
950 kal_uint8 numPilots, AfltPilotSetList *afltSet);
951 void wbiosAfltAbortPilotSet(kal_uint16 seqNum);
952
953 /* Paging Channel */
954 void wbiosPageMonitorStart(SysBandChannelT *channel, PageChRate rate,
955 kal_uint8 pagech, kal_uint16 pilotPN, Longcode *lcMask);
956 void wbiosPageMonitorStop(void);
957
958 /* Create wbios interface for BCCH */
959 void wbiosBCCHMonitorStart( const SysBandChannelT *pChannel,
960 const kal_uint16 pilotPn,
961 const kal_uint8 walshCode,
962 const BcchRate brat,
963 const kal_bool tdSupported,
964 const Sr1TdModes tdMode,
965 const Sr1TdPowerLevel tdPwrLevel,
966 const kal_uint8 crat,
967 const Longcode *pLcMask );
968
969 void wbiosBCCHMonitorStop( void );
970
971 /* Create wbios interface for FCCCH */
972 void wbiosFCCCHMonitorStart( const kal_uint16 pilotPn,
973 const kal_uint8 walshCode,
974 const kal_uint8 crat,
975 const FccchRate dataRate,
976 const Longcode *pLcMask );
977
978 void wbiosFcschMonitorStop( void );
979
980 /* Access Channel Message */
981 void wbiosAccessMessageSend(AccessMsgInfo *info, kal_bool firstProbe, WbiosSystime delayTime);
982 void wbiosAccessMessageAbort(WbiosSystime sendTime, WbiosSystime L1dAccessCompleteTime, kal_uint8 pamSize);
983 void wbiosReportAccessMaxCapsuleSize(kal_uint8 size);
984 kal_bool wbiosRequestVoicePrivacyIndication(kal_uint16 serviceOption);
985
986 /* Traffic Channel */
987 void wbiosLongCodeChange(Longcode* mask, WbiosSystime* actionTime);
988 kal_bool wbiosAcceptLongCodeChangeReq(kal_bool lcPrivate);
989 void wbiosPUFProbeAbort(void);
990 void wbiosPUFProbeSend(SysBandChannelT* channel, kal_uint8 setupSize, kal_uint8 pulseSize,
991 WbiosSystime* actionTime, kal_uint8 PUFPowerOffset);
992 void wbiosReverseMultiplexParametersGet (void);
993 void wbiosMultiplexParametersGet(StatCounterT statCounter);
994 void wbiosResetLmdMuxStatCounts(void);
995
996 void wbiosMultiplexParametersSet(LmdSetStatCntMsgT *msgPtr);
997 MultiplexOptionInfo* wbiosSCGetMultiplexOptionInfo(void);
998 ServiceConfiguration* wbiosSCGetServCfgNoConnections(kal_uint16 serviceOption);
999 const ServiceOptionInfo* wbiosSCGetServiceOptionInfo(void);
1000
1001 void wbiosSCReportServiceNegotiationMode(kal_bool mode);
1002 void wbiosSCServiceConfiguration(ServiceConfiguration* servCfg,
1003 WbiosSystime* actionTime);
1004
1005 ServiceConfiguration* wbiosSCServiceConfigurationInitiation (void);
1006 void wbiosSCServiceConfigurationResponse(kal_uint8 reason, kal_uint8 response);
1007
1008 SCResponse wbiosSCServiceConfigurationValidation(
1009 SCValidationAction validationAction,
1010 ServiceConfiguration* servCfg);
1011
1012 RejectReason wbiosSCServiceOptionControlMessage(kal_uint8 conRef,
1013 kal_uint16 serviceOption, kal_uint8 length,
1014 kal_uint8* ctlRec, WbiosSystime* actionTime);
1015
1016 RejectReason wbiosSCServiceOptionControlOrder(kal_uint8 ordq,
1017 WbiosSystime* actionTime);
1018
1019 SCResponse wbiosSCServiceOptionValidation(SysServiceOptionT* serviceOption);
1020
1021 kal_bool wbiosSCValidateNumSup (kal_bool direction, kal_uint8 numSup);
1022
1023 void wbiosTrafficChannelStart(PhyInitCfg* phyInitCfg,
1024 WbiosSystime* actionTime);
1025
1026
1027 void wbiosPDCHParams
1028 (
1029 const WbiosSystime* pActionTime,
1030 kal_bool trafficInitSetup,
1031 kal_bool forPdchParamsIncl
1032 );
1033 void wbiosReversePowerSet(PhyInitCfg* phyInitCfg, kal_bool rpcIncl, kal_bool onTCH);
1034
1035
1036 void wbiosPreambleOn(void);
1037
1038 void wbiosSendPwrCtlParms( PCNPMData* PCNPMDataPtr );
1039
1040 void wbiosResourceReq( kal_bool ContinuousPilot,
1041 kal_uint8 PilotGatingRate );
1042
1043 void wbiosTrafficChannelSoftHandoff(PhySHOCfg* phySHOCfg,
1044 WbiosSystime* actionTime);
1045 void wbiosTrafficChannelHardHandoff(PhyHHOCfg* phyHHOCfg,
1046 WbiosSystime* actionTime);
1047
1048 void wbiosTrafficChannelStop(void);
1049 void wbiosTrafficChannelSendMessage(kal_uint8* data, kal_uint8 length,kal_uint8 retryCount);
1050 /*void wbiosTrafficChannelPowerStep(kal_uint8 pwrCntlStep);
1051 */
1052 void wbiosForPowerControlParams(PCNMData* pcnmData);
1053 void wbiosRadioConfigurationParams(void);
1054 kal_uint8 wbiosforFchBlankingDutyCycle(void);
1055
1056 void wbiosSupplementalChannelAssignment(SupCodeCfg* supCodeCfg,
1057 ForSupCodeList* forSupList,
1058 WbiosSystime* forStartTime,
1059 WbiosSystime* revStartTime);
1060 void wbiosTransmitterControl(TXControl txControl);
1061 void wbiosPreambleOff(void);
1062 void wbiosFDSCHAcqInd(void);
1063 void wbiosReportCQA (kal_bool alarm);
1064 void wbiosRschPowerSet(kal_int16 pilotRefLevel, kal_int16 rschPower);
1065
1066 void wbiosE911Mode(kal_bool mode);
1067 void wbiosOrigFinished(void);
1068
1069 void wbiosReorigCall(void);
1070#ifndef MTK_CBP_REL_OPTIMIZE
1071 void wbiosReorigPktCall(void);
1072#else
1073 void wbiosVsCntdIndMsg(void);
1074 void wbiosVsRelIndMsg(kal_bool isMoCall, ValPswCallEndReasonT eReason);
1075 void wbiosReleaseCall(kal_uint8 reason, kal_bool mtc);
1076#endif
1077 void wbiosReportBSCoOrd(kal_uint16 baseID, kal_int32 baseLAT, kal_int32 baseLONG);
1078 void wbiosReportPrlInfo(NamNumber namNumber, PRL_HEADER* ptrToPrl);
1079
1080 void wbiosSetAkey(kal_uint32 *akey);
1081 void wbiosGetIS95Auth(cpIS95AuthParms* out);
1082 void wbiosGetIS95NAMParms(IS95NAMParms* namParms);
1083 void wbiosGetIS95IMSIParms(IS95IMSI_TParms* imsiParms);
1084 void wbiosDumpPchMsg(kal_uint8 length, kal_uint8 *msg);
1085 void wbiosDumpSyncMsg(kal_uint8 length, kal_uint8 *msg);
1086 void wbiosDumpFtcMsg(kal_uint8 length, kal_uint8 *msg);
1087 void wbiosReportNamInfo(PswIs95NamT* ptrToNam);
1088 void wbiosPSInfoRsp(kal_uint8 SCC, kal_uint8 type, kal_uint8 State);
1089
1090 /* High Speed Packet Data Service Calls */
1091 void wbiosResourceUpdate( const WbiosSystime* pActionTime,
1092 const kal_uint8 chInd,
1093 const kal_bool srvcConfigNonNegInc
1094 );
1095
1096 void wbiosRsrDealloc( const WbiosSystime* pActionTime,
1097 const kal_uint16 channels,
1098 const kal_uint8 pilotType,
1099 const kal_uint8 pilotGatingRate,
1100 const kal_bool switchParamsInc,
1101 const kal_uint8 numSoftSwitchingFramesChm,
1102 const kal_uint8 numSofterSwitchingFramesChm
1103 );
1104
1105 void wbiosRsrAlloc( const WbiosSystime*,
1106 const kal_uint16 channelType,
1107 const kal_uint8 fpcPriChan );
1108
1109 void wbiosForSch( const cpForSchL1dAssign* );
1110 void wbiosRevSch( const cpRevSchL1dAssign* );
1111 void wbiosForSchConfigUpdate( const cpForSchL1dConfigUpdate* );
1112 void wbiosRevSchConfigUpdate( const cpRevSchConfigUpdate* );
1113 void wbiosAccessInProg(kal_bool access
1114#ifdef MTK_DEV_C2K_IRAT
1115 , kal_bool relRfRes
1116#endif
1117 );
1118 void wbiosSetPaModeChanged(kal_bool Changed);
1119 void wbiosRptDataPrearrMode(kal_uint8 paMode);
1120 void wbiosSetOrigAbortReason(kal_uint8 reason);
1121 void wbiosL1dAlternatePilot(kal_uint16 AltPhase, kal_uint16 PN);
1122 void wbiosEnterFlyMode(kal_uint16 tenthsOfSeconds);
1123 void WbiosReportMccMnc(kal_uint16 MCC, kal_uint8 IMSI_11_12
1124#ifdef MTK_CBP
1125 , kal_uint16 AIMCC
1126#endif
1127 );
1128
1129 /* PDCH */
1130 void wbiosRateChange ( const WbiosSystime* pActionTime,
1131 const RATCHGMData* pRATCHGMData );
1132 void wbiosCdmaBandSupportedQuery(void);
1133
1134#if defined(MTK_DEV_SLT)
1135 void wbiosReportSltVerifyResult(kal_bool result);
1136#endif
1137
1138#endif /* _WBIOS_H_ */
1139
1140
1141 void wbiosCssSelectReq(kal_uint8 indication);
1142 void wbiosCssValidateReq(kal_uint16 sid, kal_uint16 nid, SysBandChannelT* bandCh, kal_uint16 pilotStrength, kal_int16 rxPower);
1143 void wbiosCssMccMncValidateReq(kal_uint16 mcc, kal_uint16 imsi_11_12, SysBandChannelT* bandCh, kal_uint16 pilotStrength, kal_int16 rxPower);
1144 void wbiosCssUpdateLastSavedEcIoRxPwr(kal_uint16 pilotStrength, kal_int16 rxPower);
1145 void wbiosCssUpdateActiveNam(kal_uint8 ActiveNam);
1146 void wbiosCssIndicateInService(void);
1147 void wbiosCssSetCallPending(kal_bool CallPending, kal_bool IsVoice);
1148 void wbiosCssSysParmsUpdate(kal_uint16 sid, kal_uint16 nid);
1149 void wbiosCssOosaWakeupInd(void);
1150 void wbiosCssE911ModeInd(kal_bool e911);
1151 void wbiosCssEventReport(Css1xRptCpEventT event);
1152 void wbiosCssRedirInd(kal_bool Redir);
1153 void wbiosCssOosaSleepCnf(void);
1154 void wbiosCssPrlUpdate(void);
1155 void wbiosCss1xSaveLastSysInMru(void);
1156 void wbiosCssClearMru(void);
1157 void wbiosCss1xDoOverlapInd(kal_uint8 overLap);
1158#ifdef LGT_EXTENSIONS
1159 void wbiosCss1xRegStatusInd(kal_uint8 regStatus);
1160#endif
1161 void wbiosReportDialComplete(OrigParms *origP);
1162 void wbiosReportOverheadCurrent(void);
1163 void wbiosReportCPEventToVal (kal_uint8 event);
1164 void wbiosReportServiceConfig(void);
1165 void wbiosTransmitInfo(void);
1166 void wbiosL1dInit(void);
1167 void wbiosL1dReset(void);
1168 void wbiosReportExistenceInfo(kal_bool existence);
1169 void wbiosReportCurrServOption (kal_bool inCallState, kal_uint16 serviceOption);
1170
1171#ifdef MTK_CBP_ENCRYPT_VOICE
1172 void wbiosReportEncryptVoiceRsp(kal_bool result, EncryptRspTypeT reason);
1173#endif
1174
1175#ifdef MTK_DEV_C2K_IRAT
1176 void wbiosReportIratMcc(void);
1177 void wbiosReportIratMccChange(kal_uint16 MCC,kal_bool enable);
1178 void wbiosReportIratPilotInfo(HOTCPilot *rec);
1179 void wbiosReportIratWeakSysInd(HOTCPilot *rec);
1180 void wbiosReportIratEUtranNghbrInfo(kal_bool EUTranAvail, PchATIM *msg);
1181 void wbiosReportCellIdInd(kal_uint16 mcc, kal_uint16 mnc);
1182
1183#if defined(MTK_CBP_SYNC_OPTIMIZE)
1184void wbiosSib8TimingSyncReq(void);
1185#endif /* MTK_CBP_SYNC_OPTIMIZE */
1186
1187 void wbiosSetHscProtectAntennaStatus(kal_bool protectStatus);
1188 void wbiosL1dProtectAntennaStart(ProtectProcT protectProc);
1189 void wbiosL1dProtectAntennaStop(void);
1190 void wbiosL1dSetRatStatus(kal_bool active);
1191 void wbiosCssRsvasSuspendReq(void);
1192 void wbiosCssRsvasDoVrtlSuspReq(void);
1193 void wbiosCssRsvasDoResumeReq(void);
1194 void wbiosCssRsvasVrtlResumeReq(void);
1195 void wbiosCssRsvasResumeReq(void);
1196 void wbiosCssRsvasEventReport(CssRsvasEventT cssRsvasEvent);
1197 void wbiosHlpRsvasAbortReq(kal_bool TriggeredByCs);
1198 void wbiosIdpRsvasServiceOccupyInd(void);
1199 void wbiosIdpRsvasServiceOccupyCnf(kal_bool result);
1200 void wbiosTrafficChannelStopForRsvas(kal_bool isSuspend);
1201 void c2kLteCsfbReq(c2k_lte_csfb_req_type_enum csfb_req_type);
1202 void c2kLteCsfbStopReq(c2k_lte_csfb_stop_req_type_enum csfb_stop_req_type);
1203 void rsvasCasProtectCsServiceReq(kal_bool is_protect);
1204 void wbiosValReportC2kRsvasEvent(ValRsvasEventT event);
1205 void wbiosErrc1xPsConnStatusInd(kal_bool psConnectionStatus);
1206 void wbiosL1dEsrProtect(kal_bool protect);
1207 void wbiosL1dRakeDdlReq(void);
1208 void wbiosPswCssSysAcqReq(CssForceInitReasonT reason);
1209 void wbiosRsvasAsSessionStartReq(mspm_sim_index_enum simIndex, mspm_procedure_enum procedure, kal_uint32 ackId);
1210 void wbiosRsvasAsSessionEndNtf(mspm_sim_index_enum simIndex, mspm_procedure_enum procedure);
1211#endif /* MTK_DEV_C2K_IRAT */
1212
1213void wbiosL1dDeactiveReq(void);
1214void wbiosIdpPsw1xrttPagePositionChangeInd(void);
1215
1216void wbiosRsvasOccupyIndMsg(void);
1217void wbiosRsvasResumeReqMsg(void);
1218void wbiosRsvasVirtualSuspendReqMsg(void);
1219void wbiosPswLocalReleaseMsg(void);
1220void wbiosInternalPowerMsg(kal_bool powerUp);
1221
1222void PswSendEltMsg(msg_type msg_id, local_para_struct *log_msg_ptr);
1223void PswSendIRatMsg(msg_type MsgId, void* MsgBufferP, kal_uint32 MsgSize);
1224void wbiosHsc1XPriorityBoot(kal_bool Control);
1225
1226void PswProcessNvRamReadCnf(local_para_struct *local_para_ptr, peer_buff_struct *peer_buff_ptr);
1227
1228void cpSetRedirectionRec(ServiceRedirData *rec);
1229ServiceRedirData* cpGetRedirectionRec(void);
1230
1231#ifdef __C2K_RF_HOPPING_SUPPORT__
1232void cpReportNoActiveFreq(void);
1233void cpReportActiveFreq(SysCdmaBandT activeBand, kal_uint16 activeFreq);
1234void cpReportActiveNghborInIdle(HONghbrIdleHandoffList* idleHORec);
1235void cpReportActiveNghborInTraffic( SysCdmaBandT neighBand, kal_uint16 neighFreq);
1236void RttRfHoppingNotify(kal_uint32 ReportMask);
1237#endif
1238
1239#ifdef SLT_PAGING_PRIOR_OPT
1240void wbiosL1dPagingPriorOpt(kal_bool enable);
1241#endif
1242
1243/**Log information: \main\CBP80\cbp80_cshen_scbp10098\1 2012-07-26 06:28:03 GMT cshen
1244** cbp80_cshen_scbp10098**/
1245/**Log information: \main\Trophy_SO73\1 2013-07-10 06:59:45 GMT gdeng
1246** HREF#0000 SCBP#11784**/
1247/**Log information: \main\Trophy\1 2013-07-17 08:12:49 GMT cshen
1248** href#2222**/
1249/**Log information: \main\Trophy\Trophy_yanliu_handroid2028\1 2013-08-30 07:03:36 GMT yanliu
1250** HANDROID#2028: check in SD's MT slotted optimization**/
1251/**Log information: \main\Trophy\2 2013-08-30 07:07:35 GMT yanliu
1252** HANDROID#2028 merged: check in SD's MT slotted optimization**/
1253/**Log information: \main\Trophy\Trophy_xding_href22331\1 2013-12-10 07:26:48 GMT xding
1254** HREF#22331, ºÏ²¢MMCÏà¹Ø¹¦Äܵ½Trophy baselineÉÏ**/
1255/**Log information: \main\Trophy\3 2013-12-10 08:35:23 GMT jzwang
1256** href#22331:Merge MMC latest implementation from Qilian branch.**/
1257