blob: 0dd8bd0ea61a9ae3841e20691ea17707030f5957 [file] [log] [blame]
/*****************************************************************************
* Copyright Statement:
* --------------------
* This software is protected by Copyright and the information contained
* herein is confidential. The software may not be copied and the information
* contained herein may not be used or disclosed except with the written
* permission of MediaTek Inc. (C) 2016
*
* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS (""MEDIATEK SOFTWARE"")
* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
* AN ""AS-IS"" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
*
* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
*
* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
*
*****************************************************************************/
/*************************************************************
*
* This Software is the property of VIA Telecom, Inc. and may only be used pursuant to a license from VIA Telecom, Inc.
*
* Any unauthorized use inconsistent with the terms of such license is strictly prohibited.
*
* Copyright (c) 1999-2010 VIA Telecom, Inc. All rights reserved.
*
*************************************************************/
/****************************************************************************
*
* Module: wbios.h
*
* Purpose: WBIOS definitions and prototypes.
*
****************************************************************************
*
* PVCS Header Information
*
*
* $Log: wbios.h $
*
* 11 03 2019 yanfeng.xu
* [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
*
* 08 14 2019 tina.ma
* [MOLY00430774] [VMOLY]code merge from UMOLYE--MIPI feature for C2K PSW
*
* .
*
* 12 18 2018 danny.dai
* [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
*
* VMOLY.EVB.SEPT.DEV: opt for PCH resync denied issue
*
* 09 07 2018 yanfeng.xu
* [MOLY00342318] [MoDIS on Linux] MoDIS built by Clang toolchain on Linux
*
* 05 15 2018 tina.ma
* [MOLY00326014] [Gen95][MSPM] SW changes check in UMOLYE
*
* MSPM feature merge to UMOLYE
*
* 07 21 2017 jiayong.zhang
* [MOLY00265972] [Gen93]Merge code from R1 to TRUNK
*
* .
*
* 07 18 2017 adel.liao
* [MOLY00243822] [6293][C2K][HLP]code modify according to UT on UMOLYA TRUNK.
*
* UT stub and remove unused code in HLP
*
* 07 06 2017 sue.zhong
* [MOLY00259241] [6293][C2K]Replace with KAL data type
* Correct copyright file header
*
* 07 04 2017 yanfeng.xu
* [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
*
* 07 04 2017 sue.zhong
* [MOLY00259241] [6293][C2K]Replace with KAL data type
* ::KAL type - L3, folder ps
*
* 05 19 2017 gavin.zhang
* [MOLY00247455] [6293][C2K][PS]Change KAL timer API to event scheduler API
*
* .
*
* 05 17 2017 peijun.zheng
* [MOLY00249027] [BIACNO][MT6763][New feature]C2K code release code modification
*
* C2k code release.
*
* 02 24 2017 yanfeng.xu
* [MOLY00231771] SIXTH00016527 merge to UMOLYA TRUNK
*
* 02 15 2017 danny.dai
* [MOLY00229716] [new feature]C2K EM Develop: 1xL3 and EvL3 module codes
*
* L3 EM: 1xrtt and evdo code for EM
*
* 02 14 2017 peijun.zheng
* [MOLY00226757] [Bianco Bring-up][C2K]Fix the problem of L3 UIM notify msg
*
* PSW UIM enhance
*
* 01 22 2017 lily.ruan
* [MOLY00225859] [6293][C2K]Merge CL from T0 branch to Trunk branch.
*
* merge access delay feature
*
* 01 12 2017 peijun.zheng
* [MOLY00221576] [6293][C2K] Fix the problem of bit 64 msg process, UIM enhance bug, Nvram register enhance
*
* 12 01 2016 sue.zhong
* [MOLY00213777] [6293][C2K]Sync C2K code to UMOLYA TRUNK(W1648)
* Update C2K source
*
* 11 09 2016 sue.zhong
* [MOLY00208435] [6293][C2K]Sync C2K code to UMOLYA TRUNK
* Update C2K PS code (1/2)
* Revision 1.14 2006/01/24 12:39:16 wavis
* Fix GetNam to always get active NAM.
* Revision 1.13 2005/12/21 11:32:26 hans
* Updated qpch algorithm and new L1 interface.
* Revision 1.12 2005/10/28 10:46:58 blee
* Add MMI event for packet data call status
* Revision 1.11 2005/10/27 11:59:21 vsethuraman
* CR 7079 :- OOSA event defined
* Revision 1.10 2005/10/26 13:09:25 hans
* cr7085 - Create new MMI Orig User Cancel event indication
* Revision 1.9 2005/08/17 14:11:05 hans
* CR6900 - Enhanced qpch indicator detection algorithm [DSPM/L1D/PSW]. CR6902 - Immediate PSW-L1D wake message for PCH/FCCCH
* Revision 1.8 2005/08/02 16:28:43 wfu
* - Add wbiosRschPowerSet prototype.
* - Delete wbiosSetTAdd prototype.
* Revision 1.7 2005/05/09 17:46:58 wfu
* Add #define EV_CONN_COMPLETE 85
* Revision 1.6 2005/03/18 11:46:03 hans
* Merged code changes from CBP4.05 revision 2.02 to CBP4.05 revision 4.21.
* Revision 1.5 2004/09/28 16:55:55 hans
* Changes from CBP6.0 merged.
* Revision 1.4 2004/04/23 10:51:18 asharma
* CBP6.1 (Phase-1) DV Data and Voice Call Setup changes.
* Revision 1.3.1.2 2004/04/14 15:21:03 asharma
* Revision 1.3 2004/04/06 14:02:27 dstecker
* CBP6.1 release 1
* Revision 1.2 2004/03/25 12:09:49 fpeng
* Updated from 6.0 CP 2.5.0
* Revision 1.3 2004/02/10 12:50:57 bcolford
* Merged CBP4.0 Release 8.05.0 changes.
* Revision 1.70 2003/12/02 18:07:55 akayvan
* Added the prototype for wbiosSrchResultsComplete().
* Revision 1.69 2003/11/06 11:19:41 ameya
* Changed STORED_SID_NID to STORED_POS_SID_NID.
* Revision 1.68 2003/08/13 15:09:09 mclee
* Remove arguement from sccCPServiceOptionValidation()
* Revision 1.67 2003/08/01 13:34:03 mclee
* Fix CR2506 by removing all instances of CBP3 compile flag and dead code
* Revision 1.66 2003/05/05 14:23:29 ameya
* Deleted the cpIS95NAMParms structure that is now merged into IS95NAMParms structure.
* Revision 1.65 2003/04/30 09:34:18 mclee
* Deleted prototype wbiosSrReorigCall(). Added prototype wbiosReorigCall().
* Revision 1.64 2003/04/28 10:49:51 byang
* CR#2165: Add data structure definition for R-SCH Config. Update
* and function prototype for wbiosRevSchConfigUpdate().
* Revision 1.63 2003/03/13 16:36:54 byang
* CR#1821: Add definition for data structure
* cpForSchL1dConfigUpdate and function prototype declaration
* for wbiosForSchConfigUpdate().
* Revision 1.62 2002/12/30 19:09:26 akayvan
* Per CR570, Cosmetic changes for replacement of
* IS2000A with either IS2000_REV_A or IS2000_REV_0.
* Revision 1.61 2002/12/26 15:07:56 dstecker
* Conditional compile flag IS2000A replaced with IS_2000_REV_A and IS_2000_REV_0
* Revision 1.60 2002/12/26 12:08:41 hans
* Conditional compile flag IS2000A replaced with IS_2000_REV_A and IS_2000_REV_0 for rev A and Rev 0 specific code.
* Revision 1.59 2002/11/21 12:29:07 bcolford
* Add prototype to support new RSSI reset callout.
* Revision 1.58.1.2 2002/11/12 15:52:00 bcolford
* Add prototype for a callout to reset the L1A Rssi state machines
* and queues prior to scanning a set of AMPS channels.
* Revision 1.58.1.1 2002/10/31 18:24:09 bcolford
* Duplicate revision
* Revision 1.58 2002/10/31 18:24:09 amala
* Changed RMS Error Phase parameter type to kal_uint8.
* Revision 1.57 2002/10/18 15:26:10 snreddy
* Modified wbiosForSch() and wbiosRevSch() to conform to the
* multiple SCh assignment design.
* Revision 1.56 2002/09/30 15:15:42 mshaver
* Changes to support the single NAM data structure type
* definition PswIs95NamT, of type packed.
* Revision 1.55 2002/09/10 16:50:35 bcolford
* Update the prototype for GetRSSI() function.
* Revision 1.54 2002/08/27 17:11:09 byang
* Update API for wbiosRsrAlloc(), wbiosRsrDealloc(), and
* wbiosResourceUpdate().
* Revision 1.53 2002/08/26 16:25:00 ameya
* Added events EV_CDMA_INSVC and EV_AMPS_INSVC to the set of events in PE.
* Revision 1.52 2002/08/22 11:08:10 agontar
* Change some static data to be declared constant - CR 1070
* Revision 1.51 2002/08/21 14:47:24 chinh
* Modified wbiosAccessMessageAbort() function prototype (CR917).
* Revision 1.50 2002/08/19 10:46:26 dstecker
* CBP4 candidate frequency implimentation
* Revision 1.49 2002/08/09 10:25:42 bcolford
* Add prototype to support Amps Focc Idle Mode (or power saving)
* control.
* Revision 1.48 2002/07/26 14:13:29 ameya
* Added negative sids/nids and stored negative sid/nid parameter to cpIS95NAMParms structure.
* Revision 1.47.3.2 2002/07/26 09:21:32 bcolford
* Add new prototype and macros for controlling Focc Idle Mode
* operation
* Revision 1.47.3.1 2002/07/16 10:30:39 bcolford
* Duplicate revision
* Revision 1.47 2002/07/16 10:30:39 dstecker
* Work around for TA timer expiration on access probes
* Revision 1.46 2002/07/15 13:16:03 chinh
* Removed compile switch CBP3_MERGE (CR598).
* Revision 1.45 2002/07/11 18:22:33 byang
* CR #421: Add EV_RETRY_TIMER_ACTIVE &
* EV_RETRY_TIMER_INACTIVE event to notify MMI when
* a retry order from the network is in forced.
* CR #952: Update function prototype for wbiosReportBurstDTMF().
* Revision 1.44 2002/06/13 13:59:58 hans
* Statistics functions already disabled with ifdef removed.
* Revision 1.43 2002/06/07 14:15:54 chinh
* Modified wbiosAccessMessageAbort function prototype to take
* the sendTime and preamble size as parameters (CR702).
* Revision 1.42 2002/06/06 13:16:07 chinh
* Changed and Added Copyright
* Revision 1.41 2002/05/31 20:10:21 akayvan
* QPCH/PI mods.
* Revision 1.40 2002/05/29 15:21:42 ameya
* Added prototype for wbiosCssValidateSyncMsg().
* Revision 1.39 2002/05/14 20:42:25 hans
* CR ID636 bug fix for retrievable and settable parameters.
* Revision 1.38 2002/05/10 14:07:27 ameya
* Added prototype for wbiosL1dSyncMsgRecvd().
* Revision 1.37 2002/05/07 16:29:01 byang
* Add function prototype declaration for
* wbiosSccGetDefaultServiceConfiguration().
* Revision 1.36 2002/03/28 18:26:10 hans
* is2000 rev 0 add 2, retrievable and settable parameters implemented.
* Revision 1.35 2002/03/01 16:30:06 AMALA
* Added Location Services AFLT functionality.
* Revision 1.34 2002/02/19 14:06:22 akayvan
* Prototype for wbiosReversePowerSet() was modified, also the
* declaration for wbiosTrafficChannelPowerStep() was commented
* out since it's now merged with wbiosReversePowerSet().
* Revision 1.33 2002/02/14 16:24:39 byang
* CR373: Add function prototype declaration for
* wbiosSccIsServOptionAttributeAvailable().
* Revision 1.32 2002/02/13 13:25:42 mshaver
* Revision description clean up.
* Revision 1.31 2002/02/12 17:21:12 bcolford
* Add the abbreviated alert, reorder and intercept processing on the
* voice channel as requested by a customer
* Revision 1.30 2002/02/06 11:49:56 mclee
* Add prototype wbiosAMPSGetkal_uint16Counts
* Revision 1.29 2002/01/31 13:52:41 bcolford
* Add the hooks for Idle Mode processing.
* Revision 1.28 2002/01/17 17:32:20 akayvan
* Implemented Slotted Mode mods.
* Revision 1.27 2002/01/10 17:12:24 AMALA
* Added emergency mode processing for new system selection.
* Revision 1.26 2002/01/02 10:13:21 AMALA
* Added new system selection changes.
* Added system re-scan functionality.
* Revision 1.25 2001/12/19 15:10:54 bcolford
* Make FrameIndex a 32 bit value so message cracking will work
* better.
* Revision 1.24 2001/12/14 17:13:14 mclee
* prototype wbiosPSInfoRsp()
* Revision 1.23 2001/11/20 12:34:32 mclee
* Add prototype wbiosReportNamInfo and struct cpModNamparms.
* Revision 1.22 2001/11/13 17:51:57 byang
* Added support for FSCH, RSCH, control hold and active for FCH.
* Revision 1.21 2001/11/08 12:31:59 AMALA
* Deleted unused function prototypes:
* wbiosGetActivePilotStrengthDbQ()
* wbiosGetMeanInputPower()
* Revision 1.20 2001/10/31 11:07:34 akayvan
* Modified wbiosReversePowerSet() parameter declaration type from
* kal_uint8 to kal_int8.
* Revision 1.19 2001/10/17 16:58:12 bcolford
* Add FOCC Duty Cycling Power Saving feature
* Revision 1.18 2001/10/08 14:48:07 mclee
* prototype wbiosReportPrlInfo()
* Revision 1.17 2001/09/17 14:11:51 AMALA
* CBP3 System Selection port
* Revision 1.16 2001/09/07 18:11:49 akayvan
* Added declaration for the new function
* wbiosForPowerControlParams() per FPC.
* Revision 1.15 2001/08/30 15:04:37 byang
* Modified wbiosSCServiceConfigurationValidation() to accept
* an enumeration instead of a Boolean.
* Revision 1.14 2001/08/03 15:15:48 dstecker
* Modifications for IS2000 handoffs
* Revision 1.13 2001/07/18 15:16:42 chinh
* cbp3 porting for Idle and Access
* Revision 1.12 2001/06/19 10:33:06 byang
* Changed the first parameter, pilotSeq, of wbiosPilotSet() from
* kal_int8 to kal_int16 for compatibility.
* Revision 1.11 2001/06/13 18:00:55 byang
* Changed the first parameter, pilotSeq, of wbiosPilotSet() from
* kal_uint8 to kal_int8 for compatibility.
* Revision 1.10 2001/06/12 15:46:07 byang
* Changed the first input parameter, pilotSeq, for
* engRelayPilotMeasureReport() from kal_uint8 to kal_int16.
* Revision 1.9 2001/05/29 14:19:27 akayvan
* Commented out the declaration for wbiosReportPwrRepFrames()
* per CR#17.
* Revision 1.8 2001/04/03 18:21:02 akayvan
* Added wbiosFDSCHAcqInd().
* Revision 1.7 2001/03/28 16:09:20 akayvan
* Removed declaration for wbiosFcschMonitorStop() per L1D
* request. Reduced the number of arguments for the function
* declaration of wbiosTrafficChannelSendMessage().
* Revision 1.6 2001/03/16 11:36:36 akayvan
* Traffic code phase1 added.
* Revision 1.5 2001/02/14 10:06:30 dstecker
* fixed a vanishing prototype
* Revision 1.3 2001/02/09 17:01:56 dstecker
* fix compile warnings (none where bugs)
* Revision 1.2 2001/01/29 18:20:53 dstecker
* new access probe architecture
* Revision 1.1 2001/01/17 10:59:55 plabarbe
* Initial revision
* Revision 1.3 2000/12/05 17:45:38 byang
* Idle mode - IS2000A Addendum modifications.
* Revision 1.2 2000/11/13 14:27:26 byang
* IS-2000A Idle Mode and LAC integration - Initial Release.
* Revision 1.1 2000/10/24 21:11:38Z fpeng
* Initial revision
* Revision 1.12 2000/09/23 02:37:48Z rnookala
* removed function protoype wbiosGetPrl
* Revision 1.11 2000/09/09 00:07:08Z RSATTARI
* Added function proto for wbiosReportFull SystemTime().
* Revision 1.10 2000/08/31 23:42:01Z bcolford
* Replaced AMPS_SUPPORTED with SYS_OPTION_AMPS.
* Revision 1.9 2000/08/23 22:24:32Z rnookala
* Isotel release 2.8
* Revision 1.8 2000/07/27 01:31:20Z hhong
* To add prototye for wbiosAccesptLongCodeChangeReq to get rid of
* compiler warning.
* Revision 1.7 2000/06/01 15:23:38Z bcolford
* Removed prototype to wbiosAMPSL1dStartup() function.
* Revision 1.6 2000/05/19 01:19:19Z hhong
* To add wbiosReportCPDisconnect
* Revision 1.5 2000/03/31 16:58:09Z cmastro
* fixed merge misshap
* Duplicate revision
* Revision 1.2 2000/03/01 18:18:44Z rsattari
* Isotel release 2.3 updates.
* Revision 1.66 2000/01/25 16:41:18 gfrye
* Missed name change in function prototype.
*
* Revision 1.65 2000/01/25 14:38:32 gfrye
* Changed PRL list structure name to Is683PrlList to avoid name
* conflict with OTA and removed unused elements.
*
* Revision 1.64 2000/01/24 16:33:20 gfrye
* Changed "wbiosOtaGet" to wbiosGet" to avoid name conflict with OTASP.
*
* Revision 1.63 2000/01/21 22:14:17 gfrye
* Added new functions to get new values for NAM parameters.
*
* Revision 1.62 2000/01/17 22:27:19 scotvold
* TC Backward Compatibility changes.
*
* Revision 1.61 1999/12/23 18:54:23 gfrye
* Added wbiosSetTAdd to inform the SFM of the current value for T_ADD.
*
* Revision 1.60 1999/12/09 23:04:35 gfrye
* New functions for OTASP and PRL support.
*
* Revision 1.59 1999/09/11 00:20:19 scotvold
* Removed repeat flag from wbiosTrafficChannelSendMessage().
*
* Revision 1.58 1999/09/02 20:18:12 gfrye
* Added wbiosSCServiceOptionIsHSPD to determine if a particular
* rev 3+ page response or origination is for a HSPD service.
*
* Revision 1.57 1999/08/27 19:42:19 gfrye
* Expanded dynamic range of sleep times for wbiosOutOfServiceAreaSleep.
*
* Revision 1.56 1999/07/28 19:29:09 gfrye
* Added new prototype wbiosOosaWakeup to wake up L1 if an origination is
* received during OOSA sleep.
*
* Revision 1.55 1999/07/23 18:00:22 scotvold
* Changes to wbiosReportHandoff API call to indicate
* type of Hard Handoff.
*
* Revision 1.54 1999/06/20 04:28:09 scotvold
* Removed redundant declarations.
*
* Revision 1.53 1999/06/19 02:02:15 dfischer
* Added EV_TC_RELEASE_LOCK
*
* Revision 1.52 1999/06/11 02:11:13 mhayduk
* Added new CP response value for data burst sent indication
* from L3.
*
* Revision 1.51 1999/06/11 01:05:03 mhayduk
* Added reporting of packet zone ID and P_REVr.
*
* Revision 1.50 1999/06/04 23:27:26 scotvold
* New Message Transmitter.
*
* Revision 1.49 1999/05/19 20:21:30 mhayduk
* Removed wbiosSCHSPDEnabled().
* Added wbiosReportPacketZoneID().
*
* Revision 1.48 1999/05/18 17:37:14 dfischer
* Added wait for event EV_ANALOG_PAGE_RECEIVED when a page is received
*
* Revision 1.47 1999/05/04 21:29:20 mhayduk
* Added support to request voice privacy indication for indication
* in Page Response.
*
* Revision 1.46 1999/04/16 00:54:23 mhayduk
* Modified parameters passed in AMPS dtmf calls.
*
* Revision 1.45 1999/04/15 01:38:11 mhayduk
* Added reporting of pwr_rep_frames.
*
* Revision 1.44 1999/04/14 16:45:36 scotvold
* EV_TC_RELEASE_XX API changes.
* Conversation Quality Alarm API change.
*
* Revision 1.43 1999/04/12 13:31:46 scotvold
* Added T53 HSPD support.
* Added 95B SCAM support.
* Added 95B GHDM support and consolidated with EHDM.
*
* Revision 1.42 1999/03/18 19:55:25 mhayduk
* Added support for Searching Out of Service Area operation.
*
* Revision 1.41 1999/03/03 00:30:45 mhayduk
* Added support for reporting of PSIST failure.
*
* Revision 1.40 1999/02/24 04:10:38 scotvold
* Added Service Configuration Reject reason.
*
* Revision 1.39 1999/02/08 22:58:03 scotvold
* Changed Feature/Alert/Flash interfaces.
* Changed wbiosSCServiceOptionControl interfaces.
*
* Revision 1.38 1999/02/04 21:54:13 scotvold
* Added missing R1.2 changes.
*
* Revision 1.37 1999/01/26 18:52:17 scotvold
* R1.2 API changes.
*
* Revision 1.36 1999/01/21 17:21:55 lchhailo
* fixed syntax
*
* Revision 1.35 1999/01/20 23:39:20 mhayduk
* Added broadcast parameter to wbiosReportDataBurst.
*
* Revision 1.34 1999/01/20 23:23:12 scotvold
* R1.20 API CP Event changes.
*
* Revision 1.33 1999/01/09 00:41:07 scotvold
* R1.20 API changes.
*
* Revision 1.32 1999/01/07 18:45:27 dfischer
* Added wbiosReportMessageWaiting
*
* Revision 1.31 1999/01/07 16:32:10 mhayduk
* Added new wrapper calls: wbiosSystemSelection and
* wbiosReportAccessMaxCapsuleSize.
*
* Revision 1.30 1999/01/06 19:02:35 dfischer
* Added EV_MAINTENANCE
*
* Revision 1.29 1998/12/02 16:25:27 mhayduk
* Updated to remove non-T53 structures and calls.
*
* Revision 1.28 1998/12/02 01:51:30 scotvold
* Added T53 guards for #include.
*
* Revision 1.27 1998/12/02 00:12:51 scotvold
* Added statistics.
*
* Revision 1.26 1998/11/27 17:44:42 mhayduk
* Cleaned up event names.
*
* Revision 1.25 1998/11/27 00:34:25 dfischer
* Added EV_DIALING_COMPLETE and EV_DIALING_CONTINUE
*
* Revision 1.24 1998/11/26 23:35:26 mhayduk
* Removed wbiosReportCallPageResponse().
*
* Revision 1.23 1998/11/26 23:09:59 mhayduk
* Remove wbiosReportSystemInfo().
*
* Revision 1.22 1998/11/26 22:07:27 mhayduk
* Added nwe API definitions for API doc rev. 1.12.
*
* Revision 1.21 1998/11/03 01:15:00 guterman
* Fixed typo in wbios function
*
* Revision 1.20 1998/11/02 22:15:25 scotvold
* Added Service Option/Multiplex Option record support.
*
* Revision 1.19 1998/10/20 23:58:23 mhayduk
* Added T53 support.
*
* Revision 1.18 1998/09/22 18:44:57 tdaly
* Added IS-95 analog mode support.
*
* Revision 1.17 1998/09/11 16:22:48 scotvold
* Handoff API changes.
*
* Revision 1.16 1998/09/11 02:42:30 scotvold
* Added return to Service Option Control API calls.
*
* Revision 1.15 1998/08/17 23:06:26 scotvold
* Added wbiosAcceptLongCodeChangeReq() call.
*
* Revision 1.14 1998/08/14 23:50:28 scotvold
* Added Data Burst support.
*
* Revision 1.13 1998/08/13 00:15:20 scotvold
* Added DTMF support.
*
* Revision 1.12 1998/07/31 16:11:29 scotvold
* wbiosSetCallHistParameter() change.
*
* Revision 1.11 1998/07/27 17:19:55 scotvold
* API change for wbiosServiceConfigurationValidation() and wbiosServiceOptionValidation().
*
* Revision 1.10 1998/07/14 17:26:44 scotvold
* Service Configuration Initiation, Transmitter Control, and RTC Traffic Type calls added.
*
* Revision 1.9 1998/07/03 16:57:30 dfischer
* New load
*
* Revision 1.8 1998/06/12 14:50:38 scotvold
* Updated for Release 0.07.
*
* Revision 1.7 1998/06/10 22:58:04 scotvold
* Traffic Channel API updates
*
* Revision 1.6 1998/06/08 21:48:25 scotvold
* Updated for Release 0.06.
*
* Revision 1.5 1998/05/27 17:16:28 scotvold
* Updated for Release 0.05.
*
* Revision 1.4 1998/05/01 18:13:54 scotvold
* Update for release 0.04
*
* Revision 1.3 1998/03/30 23:26:03 mhayduk
* Release 0.03.
*
* Revision 1.1 1997/11/06 17:49:24 mhayduk
* Initial revision
*
*
****************************************************************************
****************************************************************************/
#ifndef _WBIOS_H_
#define _WBIOS_H_ 1
/*****************************************************************************
* Includes
****************************************************************************/
#include "systime.h"
#include "longcode.h"
#include "channel.h"
#include "pilots.h"
#include "Serv_cfg.h"
#include "status.h"
#include "layer2.h"
#include "srbp_access.h"
#include "register.h"
#include "Msg_defn.h"
#include "pch_msg.h"
#include "stats.h"
#include "ho_cf.h"
#include "pswnam.h"
#include "lmdapi.h"
#include "valapi.h"
#include "eng_idle.h"
#include "psw_msgid.h"
#include "css_msgid.h"
#include "hlp_msgid.h"
#include "uim_msgid.h"
#include "lec_msgid.h"
#ifdef MTK_CBP_SYNC_OPTIMIZE
#include "hscapi.h"
#endif /* MTK_CBP_SYNC_OPTIMIZE */
#ifdef MTK_CBP_REL_OPTIMIZE
#include "valpswapi.h"
#endif
#include "xl3_em.h"
#include "Msg_defn.h"
#include "psw_dhl_trace.h"
#ifdef MTK_DEV_C2K_IRAT
#include "mspm_public_api.h"
#endif /* MTK_DEV_C2K_IRAT */
/*****************************************************************************
* Defines
****************************************************************************/
/* Call Processing Response Types */
#define CP_RSP_BURST_DTMF 1
#define CP_RSP_CONT_DTMF_ON 2
#define CP_RSP_CONT_DTMF_OFF 3
#define CP_RSP_DATA_BURST 4
#define CP_RSP_DATA_BURST_SENT 5
#define CP_RSP_FLASH 6
#define CP_RSP_VP 7
#define CP_REJ_INVALID_STATE 8
#define CP_REJ_TC_TXQ_FULL 9
#define CP_REJ_FC_ERROR 10
#define CP_REJ_ORDER_ERROR 11
#define CP_REJ_FMT_OVERFLOW 12
/* Handoff Types */
#define HO_IDLE_SAME_SYSTEM 1
#define HO_IDLE_NEW_SYSTEM 2
#define HO_SOFT 3
#define HO_HARD 4
#define HO_TC_TO_AVC 5
/* Service Configuration Request */
#define SC_REQ_SERV_CFG 1
#define SC_REQ_SERV_OPT 2
#define SC_REQ_SERV_CTL 3
/* Service Configuration Response */
#define SC_RSP_SERV_CFG_REQ 1
#define SC_RSP_SERV_OPT_REQ 2
#define SC_RSP_SERV_CTL_REQ 3
#define SC_IND_SERV_CFG_COMPLETE 4
#define SC_REJ_BS_REJECT 5
#define SC_REJ_INVALID_STATE 6
#define SC_REJ_TC_TXQ_FULL 7
#define SC_REJ_FC_ERROR 8
#define SC_REJ_SNM_ERROR 9
#define SC_REJ_NO_CONN 10
#define SC_REJ_FMT_OVERFLOW 11
/* These macros specify the operation of AMPS Idle Mode Processing */
#define FOCC_IDLE_MODE_DISABLE 0
#define FOCC_IDLE_MODE_ENABLE 1
/* These macros are used to control the AMPS RSSI mechanism */
#define RSSI_FOR_DISPLAY_ONLY 0
#define RSSI_FOR_NORMAL_SCANNING 1
#define MAX_SID_NID_PAIRS 20
#define MAX_IMSI_T_S_SIZE 5
#define NO_SERVICE_TIMEOUT 60000L
/* Traffic channel message transmission priority levels */
typedef enum
{
PRIORITY_LOW = 0,
PRIORITY_MEDIUM,
PRIORITY_HIGH
} Priority;
/*
* IS-95B Authentication Data
*/
typedef struct {
kal_uint32 A_KEY[2];
kal_uint8 SSDa[8];
kal_uint8 SSDb[8];
} cpIS95AuthParms;
/* NAM values requiring.
* Parameter Change Registration
*/
typedef struct {
kal_uint8 slotCycleIndex;
kal_uint8 scm;
kal_bool mobTermHome;
kal_bool mobTermForSid;
kal_bool mobTermForNid;
} cpPcrParms;
/* Forward SCH Assignments */
typedef struct
{
kal_uint16 pilotPn;
kal_uint16 forSchCcIndex;
kal_uint8 qofMaskIdSch;
} cpSupShoRec;
typedef struct
{
kal_uint8 forSchId;
SchRateIndex forSchRate;
kal_uint8 forSchDuration;
WbiosSystime forSchActionTime;
kal_uint8 numSupSho;
cpSupShoRec supSho[ CP_MAX_SUP_SHO ];
} cpForSchRec;
typedef struct
{
kal_uint8 schId;
kal_uint8 fer;
kal_int16 initSetpt;
kal_uint8 minSetpt;
kal_uint8 maxSetpt;
} cpFpcParams;
typedef struct
{
kal_bool fpcPriChansIncl;
kal_uint8 fpcPriChans;
kal_uint8 pilotGatingUseRate;
kal_bool forSchFerRep;
kal_uint8 numForSch;
cpForSchRec forSch[ CP_MAX_FOR_SCH ];
kal_bool fpcSchIncl;
kal_uint8 fpcModeSch;
kal_uint8 fpcSecChan;
kal_uint8 fpcSchInitSetptOp;
kal_bool fpcThreshSchIncl;
kal_uint8 fpcSetptThreshSch;
kal_uint8 numSup;
kal_bool fpcSchInitSetptIncl;
cpFpcParams fpcSchSetpt[ CP_MAX_FOR_SCH ];
} cpForSchL1dAssign;
typedef struct
{
kal_bool droppingFchSchPilot;
kal_uint8 numForSch;
kal_uint8 numSupSho[ CP_MAX_FOR_SCH ];
cpSupShoRec supSho[ CP_MAX_FOR_SCH ][ CP_MAX_SUP_SHO ];
} cpForSchL1dConfigUpdate;
/* Reverse SCH Assignments */
typedef struct
{
kal_uint8 revSchId;
kal_uint8 revSchDuration;
WbiosSystime revSchActionTime;
SchRateIndex revSchRate;
kal_uint8 revWalshId;
kal_int16 pilotRefLevel;
kal_int16 rschPower;
} cpRevSchL1dRec;
typedef struct
{
kal_uint8 revSchDtxDuration;
kal_uint8 numRevSch;
cpRevSchL1dRec revSchRec[ CP_MAX_REV_SCH ];
} cpRevSchL1dAssign;
typedef struct {
kal_uint16 FIRSTCHP;
kal_uint16 HOME_SID;
kal_uint8 EX;
kal_uint8 COUNT;
kal_uint8 SLOTTED_MODE;
kal_uint8 IMSI_M_CLASS;
kal_uint8 IMSI_M_ADDR_NUM;
kal_uint16 MCC_M;
kal_uint8 IMSI_M_11_12;
kal_uint8 IMSI_M_S[5];
kal_uint8 ACCOLC;
kal_uint8 LOCAL_CONTROL;
kal_uint8 MOB_TERM_HOME;
kal_uint8 MOB_TERM_FOR_SID;
kal_uint8 MOB_TERM_FOR_NID;
kal_uint8 MAX_SID_NID;
kal_uint8 STORED_POS_SID_NID;
kal_uint16 SID[MAX_SID_NID_PAIRS];
kal_uint16 NID[MAX_SID_NID_PAIRS];
kal_bool Updated;
} IS95NAMParms;
typedef struct {
kal_uint8 IMSI_T_CLASS;
kal_uint8 IMSI_T_ADDR_NUM;
kal_uint16 MCC_T;
kal_uint8 IMSI_T_11_12;
kal_uint8 IMSI_T_S[MAX_IMSI_T_S_SIZE];
kal_bool Updated;
} IS95IMSI_TParms;
typedef struct
{
kal_uint8 revSchId;
kal_uint8 revSchRate;
kal_uint8 revWalshId;
} cpRevSchConfigRec;
typedef struct
{
kal_uint8 numRevSch;
cpRevSchConfigRec revSchConfigRec[ CP_MAX_REV_SCH ];
} cpRevSchConfigUpdate;
/* R-CQICH Gain level */
typedef enum
{
RCQICH_GAIN_LOW = 0,
RCQICH_GAIN_HIGH
} RCqichGainLevel;
/*****************************************************************************
* WBIOS prototypes
****************************************************************************/
/* Distance Based registration */
kal_bool wbiosDistanceBasedReg(kal_int32 baseLat,kal_int32 baseLatRg,kal_int32 baseLong,
kal_int32 baseLongReg,kal_uint16 distance);
/* ESN & NVM Interface function prototypes */
void wbiosRetrieveChannel (SysBandChannelT *channel, kal_uint8 index);
void wbiosSaveChannel(SysBandChannelT *channel);
void wbiosSetReturnChannel (SysBandChannelT *channel, kal_bool withSyncCh);
void wbiosSetSSDA(kal_uint8 *ssda);
void wbiosSetSSDB(kal_uint8 *ssdb);
kal_bool wbiosInitializeAkey(kal_uint32 *a_key);
void wbiosSetCallHistParameter(kal_uint8 count);
void wbiosSetRand(kal_uint32 rand);
kal_uint8* wbiosGetPtrToPRL(void);
void wbiosSetSIDNIDList(SidNidList *entry);
void wbiosSetTMSIAssignment(kal_uint8 len,kal_uint8 *zone,kal_uint32 code,kal_uint32 expTime);
void wbiosSetZoneList(ZoneList *entry);
void wbiosDeleteZoneList(void);
void wbiosDeleteSIDNIDList(void);
void wbiosSetBaseDistanceRegInfo(kal_int32 baseLat,kal_int32 baseLong, kal_uint16 distance);
/* Call Progression Interface function prototypes */
void wbiosReportAlert(FORInfoData *alertData);
void wbiosReportMessageWaiting(kal_uint8 numMsgs);
void wbiosReportBurstDTMF( const kal_uint8 numOfDigits,
const kal_uint8 dtmfOnLength,
const kal_uint8 dtmfOffLength,
const char* digits );
void wbiosReportCPEvent(kal_uint8 event, kal_bool inclSO, PswServiceOptionT SO);
void wbiosReportCPResponse(kal_uint8 response, kal_uint8 request);
void wbiosReportCPStatus(ValRptCpStatusMsgT *status);
void wbiosReportDataBurst(kal_uint8 msgNumber, kal_uint8 burstType,kal_uint8 numMsgs,
kal_uint8 numFields,kal_uint8* data);
void wbiosReportBroadcastDataBurst(kal_uint8 addrLen, kal_uint8 *addr, kal_uint8 msgNumber,
kal_uint8 burstType, kal_uint8 numMsgs, kal_uint8 numFields,
kal_uint8* data);
kal_bool wbiosSccBcastConfigured(void);
kal_bool wbiosSccBcastExpected(kal_uint8 burstType, kal_uint8 addrLen, kal_uint8 *addr);
void wbiosReportFeatureNotification(FORInfoData *featureData);
void wbiosReportFlash(FORInfoData *ftcFlashData);
void wbiosReportHandoff(kal_uint8 type, HOTCReport* hoTCReport);
void wbiosReportLock(kal_uint8 reason);
void wbiosReportMaintenanceRequired(kal_uint8 reason);
void wbiosReportPacketZoneID(kal_uint8 zone);
void wbiosReportNetworkPRev(kal_uint8 pRev);
void wbiosReportNetworkPRevAndPRevInUse(kal_uint8 pRev, kal_uint8 pRevInUse);
void wbiosReportRegistrationAccept(kal_bool roamIndPresent, kal_uint8 roamInd);
void wbiosReportRegistrationReject(void);
void wbiosReportStartContinuousDTMF(char digit);
void wbiosReportStopContinuousDTMF(void);
void wbiosReportSystemTime(kal_uint8 *sysTime,kal_uint8 lpSec,kal_uint8 ltmOff,kal_uint8 dayLt);
void wbiosReportUnlock(void);
void wbiosSystemError(kal_uint16 error);
kal_bool wbiosSccIsServOptionAttributeAvailable( const kal_uint16 servOption );
ServiceConfiguration* wbiosSccGetDefaultServiceConfiguration( const kal_uint16 servOption );
ServiceConfiguration* wbiosSccGetPrefServiceConfiguration( kal_uint16 servOption );
/* Slotted Sleep Mode */
void wbiosSlottedModeEnable(kal_uint16 pgslot,
kal_uint8 slotCycleIndex,
kal_bool qpchEnabled,
kal_uint8 QPAGECHs,
kal_bool QPCH_RATEs/*,
kal_uint8 QPCH_POWER_LEVEL_PAGEs*/);
void wbiosSleep(WbiosSystime sysTime, kal_uint16 PIPosition, SleepType SleepType,
QpchTransPwr QpchRatioIdx, kal_uint16 TargetPN);
void wbiosSlottedModeDisable(void);
void wbiosSrchResultsComplete(void);
void wbiosWakeup(WakeModeT wakeMode);
void wbiosOosaWakeup(void);
/* Timer control */
kal_int16 wbiosSetTimer(kal_uint32 duration);
void wbiosSetTATimer(kal_uint32 duration);
void wbiosSetUimTimer(kal_uint32 duration);
void wbiosKillTimer(kal_int16 timerId);
void wbiosKillTATimer(void);
void wbiosKillUimTimer(void);
/* Channel Acquisition */
void wbiosPilotAcquireAbort(void);
void wbiosPilotAcquireStart(SysBandChannelT *channel);
void wbiosL1dPswRfReleaseReq(void);
void wbiosOutOfServiceAreaSleep(kal_uint16 tenthsOfSeconds);
void wbiosOosaContSleepReq(kal_uint32 sleepDuration);
void wbiosSyncToSystemTime(kal_uint16 frame, kal_uint16 pilotPN, Longcode *lcState,
SyncMsgSysTimeType* sysTime);
void wbiosSyncAcquireStart(void);
void wbiosSyncAcquireAbort(void);
void wbiosL1dSyncMsgRecvd(void);
/* Pilot monitoring */
void wbiosCDMACandFreqSearchParm(CFSet* set, CFSearchParms* parms);
void wbiosCDMACandFreqSearchStart( WbiosSystime* actionTime, kal_uint8 SearchOffset,
kal_uint8 totalOffTimeFwd, kal_uint8 totalOffTimeRev );
void wbiosSCNNServiceConfiguration(NNServiceConfiguration* servCfg,
WbiosSystime* actionTime);
void wbiosIdlePilotSet(kal_int16 pilotSeq, IdlePilotSet *set, kal_uint16 pilotInc);
void wbiosIdleChangePilotSet (IdleChangePilotSet*set);
void wbiosPilotSearchWindow(PilotSearchWindow *window);
void wbiosPilotSet(kal_int16 pilotSeq, PilotSet *set, kal_uint16 pilotInc);
void wbiosAfltPilotSet(kal_uint16 seqNum, kal_uint16 refPN, kal_int16 refTimeCrrct,
kal_uint8 numPilots, AfltPilotSetList *afltSet);
void wbiosAfltAbortPilotSet(kal_uint16 seqNum);
/* Paging Channel */
void wbiosPageMonitorStart(SysBandChannelT *channel, PageChRate rate,
kal_uint8 pagech, kal_uint16 pilotPN, Longcode *lcMask);
void wbiosPageMonitorStop(void);
/* Create wbios interface for BCCH */
void wbiosBCCHMonitorStart( const SysBandChannelT *pChannel,
const kal_uint16 pilotPn,
const kal_uint8 walshCode,
const BcchRate brat,
const kal_bool tdSupported,
const Sr1TdModes tdMode,
const Sr1TdPowerLevel tdPwrLevel,
const kal_uint8 crat,
const Longcode *pLcMask );
void wbiosBCCHMonitorStop( void );
/* Create wbios interface for FCCCH */
void wbiosFCCCHMonitorStart( const kal_uint16 pilotPn,
const kal_uint8 walshCode,
const kal_uint8 crat,
const FccchRate dataRate,
const Longcode *pLcMask );
void wbiosFcschMonitorStop( void );
/* Access Channel Message */
void wbiosAccessMessageSend(AccessMsgInfo *info, kal_bool firstProbe, WbiosSystime delayTime);
void wbiosAccessMessageAbort(WbiosSystime sendTime, WbiosSystime L1dAccessCompleteTime, kal_uint8 pamSize);
void wbiosReportAccessMaxCapsuleSize(kal_uint8 size);
kal_bool wbiosRequestVoicePrivacyIndication(kal_uint16 serviceOption);
/* Traffic Channel */
void wbiosLongCodeChange(Longcode* mask, WbiosSystime* actionTime);
kal_bool wbiosAcceptLongCodeChangeReq(kal_bool lcPrivate);
void wbiosPUFProbeAbort(void);
void wbiosPUFProbeSend(SysBandChannelT* channel, kal_uint8 setupSize, kal_uint8 pulseSize,
WbiosSystime* actionTime, kal_uint8 PUFPowerOffset);
void wbiosReverseMultiplexParametersGet (void);
void wbiosMultiplexParametersGet(StatCounterT statCounter);
void wbiosResetLmdMuxStatCounts(void);
void wbiosMultiplexParametersSet(LmdSetStatCntMsgT *msgPtr);
MultiplexOptionInfo* wbiosSCGetMultiplexOptionInfo(void);
ServiceConfiguration* wbiosSCGetServCfgNoConnections(kal_uint16 serviceOption);
const ServiceOptionInfo* wbiosSCGetServiceOptionInfo(void);
void wbiosSCReportServiceNegotiationMode(kal_bool mode);
void wbiosSCServiceConfiguration(ServiceConfiguration* servCfg,
WbiosSystime* actionTime);
ServiceConfiguration* wbiosSCServiceConfigurationInitiation (void);
void wbiosSCServiceConfigurationResponse(kal_uint8 reason, kal_uint8 response);
SCResponse wbiosSCServiceConfigurationValidation(
SCValidationAction validationAction,
ServiceConfiguration* servCfg);
RejectReason wbiosSCServiceOptionControlMessage(kal_uint8 conRef,
kal_uint16 serviceOption, kal_uint8 length,
kal_uint8* ctlRec, WbiosSystime* actionTime);
RejectReason wbiosSCServiceOptionControlOrder(kal_uint8 ordq,
WbiosSystime* actionTime);
SCResponse wbiosSCServiceOptionValidation(SysServiceOptionT* serviceOption);
kal_bool wbiosSCValidateNumSup (kal_bool direction, kal_uint8 numSup);
void wbiosTrafficChannelStart(PhyInitCfg* phyInitCfg,
WbiosSystime* actionTime);
void wbiosPDCHParams
(
const WbiosSystime* pActionTime,
kal_bool trafficInitSetup,
kal_bool forPdchParamsIncl
);
void wbiosReversePowerSet(PhyInitCfg* phyInitCfg, kal_bool rpcIncl, kal_bool onTCH);
void wbiosPreambleOn(void);
void wbiosSendPwrCtlParms( PCNPMData* PCNPMDataPtr );
void wbiosResourceReq( kal_bool ContinuousPilot,
kal_uint8 PilotGatingRate );
void wbiosTrafficChannelSoftHandoff(PhySHOCfg* phySHOCfg,
WbiosSystime* actionTime);
void wbiosTrafficChannelHardHandoff(PhyHHOCfg* phyHHOCfg,
WbiosSystime* actionTime);
void wbiosTrafficChannelStop(void);
void wbiosTrafficChannelSendMessage(kal_uint8* data, kal_uint8 length,kal_uint8 retryCount);
/*void wbiosTrafficChannelPowerStep(kal_uint8 pwrCntlStep);
*/
void wbiosForPowerControlParams(PCNMData* pcnmData);
void wbiosRadioConfigurationParams(void);
kal_uint8 wbiosforFchBlankingDutyCycle(void);
void wbiosSupplementalChannelAssignment(SupCodeCfg* supCodeCfg,
ForSupCodeList* forSupList,
WbiosSystime* forStartTime,
WbiosSystime* revStartTime);
void wbiosTransmitterControl(TXControl txControl);
void wbiosPreambleOff(void);
void wbiosFDSCHAcqInd(void);
void wbiosReportCQA (kal_bool alarm);
void wbiosRschPowerSet(kal_int16 pilotRefLevel, kal_int16 rschPower);
void wbiosE911Mode(kal_bool mode);
void wbiosOrigFinished(void);
void wbiosReorigCall(void);
#ifndef MTK_CBP_REL_OPTIMIZE
void wbiosReorigPktCall(void);
#else
void wbiosVsCntdIndMsg(void);
void wbiosVsRelIndMsg(kal_bool isMoCall, ValPswCallEndReasonT eReason);
void wbiosReleaseCall(kal_uint8 reason, kal_bool mtc);
#endif
void wbiosReportBSCoOrd(kal_uint16 baseID, kal_int32 baseLAT, kal_int32 baseLONG);
void wbiosReportPrlInfo(NamNumber namNumber, PRL_HEADER* ptrToPrl);
void wbiosSetAkey(kal_uint32 *akey);
void wbiosGetIS95Auth(cpIS95AuthParms* out);
void wbiosGetIS95NAMParms(IS95NAMParms* namParms);
void wbiosGetIS95IMSIParms(IS95IMSI_TParms* imsiParms);
void wbiosDumpPchMsg(kal_uint8 length, kal_uint8 *msg);
void wbiosDumpSyncMsg(kal_uint8 length, kal_uint8 *msg);
void wbiosDumpFtcMsg(kal_uint8 length, kal_uint8 *msg);
void wbiosReportNamInfo(PswIs95NamT* ptrToNam);
void wbiosPSInfoRsp(kal_uint8 SCC, kal_uint8 type, kal_uint8 State);
/* High Speed Packet Data Service Calls */
void wbiosResourceUpdate( const WbiosSystime* pActionTime,
const kal_uint8 chInd,
const kal_bool srvcConfigNonNegInc
);
void wbiosRsrDealloc( const WbiosSystime* pActionTime,
const kal_uint16 channels,
const kal_uint8 pilotType,
const kal_uint8 pilotGatingRate,
const kal_bool switchParamsInc,
const kal_uint8 numSoftSwitchingFramesChm,
const kal_uint8 numSofterSwitchingFramesChm
);
void wbiosRsrAlloc( const WbiosSystime*,
const kal_uint16 channelType,
const kal_uint8 fpcPriChan );
void wbiosForSch( const cpForSchL1dAssign* );
void wbiosRevSch( const cpRevSchL1dAssign* );
void wbiosForSchConfigUpdate( const cpForSchL1dConfigUpdate* );
void wbiosRevSchConfigUpdate( const cpRevSchConfigUpdate* );
void wbiosAccessInProg(kal_bool access
#ifdef MTK_DEV_C2K_IRAT
, kal_bool relRfRes
#endif
);
void wbiosSetPaModeChanged(kal_bool Changed);
void wbiosRptDataPrearrMode(kal_uint8 paMode);
void wbiosSetOrigAbortReason(kal_uint8 reason);
void wbiosL1dAlternatePilot(kal_uint16 AltPhase, kal_uint16 PN);
void wbiosEnterFlyMode(kal_uint16 tenthsOfSeconds);
void WbiosReportMccMnc(kal_uint16 MCC, kal_uint8 IMSI_11_12
#ifdef MTK_CBP
, kal_uint16 AIMCC
#endif
);
/* PDCH */
void wbiosRateChange ( const WbiosSystime* pActionTime,
const RATCHGMData* pRATCHGMData );
void wbiosCdmaBandSupportedQuery(void);
#if defined(MTK_DEV_SLT)
void wbiosReportSltVerifyResult(kal_bool result);
#endif
#endif /* _WBIOS_H_ */
void wbiosCssSelectReq(kal_uint8 indication);
void wbiosCssValidateReq(kal_uint16 sid, kal_uint16 nid, SysBandChannelT* bandCh, kal_uint16 pilotStrength, kal_int16 rxPower);
void wbiosCssMccMncValidateReq(kal_uint16 mcc, kal_uint16 imsi_11_12, SysBandChannelT* bandCh, kal_uint16 pilotStrength, kal_int16 rxPower);
void wbiosCssUpdateLastSavedEcIoRxPwr(kal_uint16 pilotStrength, kal_int16 rxPower);
void wbiosCssUpdateActiveNam(kal_uint8 ActiveNam);
void wbiosCssIndicateInService(void);
void wbiosCssSetCallPending(kal_bool CallPending, kal_bool IsVoice);
void wbiosCssSysParmsUpdate(kal_uint16 sid, kal_uint16 nid);
void wbiosCssOosaWakeupInd(void);
void wbiosCssE911ModeInd(kal_bool e911);
void wbiosCssEventReport(Css1xRptCpEventT event);
void wbiosCssRedirInd(kal_bool Redir);
void wbiosCssOosaSleepCnf(void);
void wbiosCssPrlUpdate(void);
void wbiosCss1xSaveLastSysInMru(void);
void wbiosCssClearMru(void);
void wbiosCss1xDoOverlapInd(kal_uint8 overLap);
#ifdef LGT_EXTENSIONS
void wbiosCss1xRegStatusInd(kal_uint8 regStatus);
#endif
void wbiosReportDialComplete(OrigParms *origP);
void wbiosReportOverheadCurrent(void);
void wbiosReportCPEventToVal (kal_uint8 event);
void wbiosReportServiceConfig(void);
void wbiosTransmitInfo(void);
void wbiosL1dInit(void);
void wbiosL1dReset(void);
void wbiosReportExistenceInfo(kal_bool existence);
void wbiosReportCurrServOption (kal_bool inCallState, kal_uint16 serviceOption);
#ifdef MTK_CBP_ENCRYPT_VOICE
void wbiosReportEncryptVoiceRsp(kal_bool result, EncryptRspTypeT reason);
#endif
#ifdef MTK_DEV_C2K_IRAT
void wbiosReportIratMcc(void);
void wbiosReportIratMccChange(kal_uint16 MCC,kal_bool enable);
void wbiosReportIratPilotInfo(HOTCPilot *rec);
void wbiosReportIratWeakSysInd(HOTCPilot *rec);
void wbiosReportIratEUtranNghbrInfo(kal_bool EUTranAvail, PchATIM *msg);
void wbiosReportCellIdInd(kal_uint16 mcc, kal_uint16 mnc);
#if defined(MTK_CBP_SYNC_OPTIMIZE)
void wbiosSib8TimingSyncReq(void);
#endif /* MTK_CBP_SYNC_OPTIMIZE */
void wbiosSetHscProtectAntennaStatus(kal_bool protectStatus);
void wbiosL1dProtectAntennaStart(ProtectProcT protectProc);
void wbiosL1dProtectAntennaStop(void);
void wbiosL1dSetRatStatus(kal_bool active);
void wbiosCssRsvasSuspendReq(void);
void wbiosCssRsvasDoVrtlSuspReq(void);
void wbiosCssRsvasDoResumeReq(void);
void wbiosCssRsvasVrtlResumeReq(void);
void wbiosCssRsvasResumeReq(void);
void wbiosCssRsvasEventReport(CssRsvasEventT cssRsvasEvent);
void wbiosHlpRsvasAbortReq(kal_bool TriggeredByCs);
void wbiosIdpRsvasServiceOccupyInd(void);
void wbiosIdpRsvasServiceOccupyCnf(kal_bool result);
void wbiosTrafficChannelStopForRsvas(kal_bool isSuspend);
void c2kLteCsfbReq(c2k_lte_csfb_req_type_enum csfb_req_type);
void c2kLteCsfbStopReq(c2k_lte_csfb_stop_req_type_enum csfb_stop_req_type);
void rsvasCasProtectCsServiceReq(kal_bool is_protect);
void wbiosValReportC2kRsvasEvent(ValRsvasEventT event);
void wbiosErrc1xPsConnStatusInd(kal_bool psConnectionStatus);
void wbiosL1dEsrProtect(kal_bool protect);
void wbiosL1dRakeDdlReq(void);
void wbiosPswCssSysAcqReq(CssForceInitReasonT reason);
void wbiosRsvasAsSessionStartReq(mspm_sim_index_enum simIndex, mspm_procedure_enum procedure, kal_uint32 ackId);
void wbiosRsvasAsSessionEndNtf(mspm_sim_index_enum simIndex, mspm_procedure_enum procedure);
#endif /* MTK_DEV_C2K_IRAT */
void wbiosL1dDeactiveReq(void);
void wbiosIdpPsw1xrttPagePositionChangeInd(void);
void wbiosRsvasOccupyIndMsg(void);
void wbiosRsvasResumeReqMsg(void);
void wbiosRsvasVirtualSuspendReqMsg(void);
void wbiosPswLocalReleaseMsg(void);
void wbiosInternalPowerMsg(kal_bool powerUp);
void PswSendEltMsg(msg_type msg_id, local_para_struct *log_msg_ptr);
void PswSendIRatMsg(msg_type MsgId, void* MsgBufferP, kal_uint32 MsgSize);
void wbiosHsc1XPriorityBoot(kal_bool Control);
void PswProcessNvRamReadCnf(local_para_struct *local_para_ptr, peer_buff_struct *peer_buff_ptr);
void cpSetRedirectionRec(ServiceRedirData *rec);
ServiceRedirData* cpGetRedirectionRec(void);
#ifdef __C2K_RF_HOPPING_SUPPORT__
void cpReportNoActiveFreq(void);
void cpReportActiveFreq(SysCdmaBandT activeBand, kal_uint16 activeFreq);
void cpReportActiveNghborInIdle(HONghbrIdleHandoffList* idleHORec);
void cpReportActiveNghborInTraffic( SysCdmaBandT neighBand, kal_uint16 neighFreq);
void RttRfHoppingNotify(kal_uint32 ReportMask);
#endif
#ifdef SLT_PAGING_PRIOR_OPT
void wbiosL1dPagingPriorOpt(kal_bool enable);
#endif
/**Log information: \main\CBP80\cbp80_cshen_scbp10098\1 2012-07-26 06:28:03 GMT cshen
** cbp80_cshen_scbp10098**/
/**Log information: \main\Trophy_SO73\1 2013-07-10 06:59:45 GMT gdeng
** HREF#0000 SCBP#11784**/
/**Log information: \main\Trophy\1 2013-07-17 08:12:49 GMT cshen
** href#2222**/
/**Log information: \main\Trophy\Trophy_yanliu_handroid2028\1 2013-08-30 07:03:36 GMT yanliu
** HANDROID#2028: check in SD's MT slotted optimization**/
/**Log information: \main\Trophy\2 2013-08-30 07:07:35 GMT yanliu
** HANDROID#2028 merged: check in SD's MT slotted optimization**/
/**Log information: \main\Trophy\Trophy_xding_href22331\1 2013-12-10 07:26:48 GMT xding
** HREF#22331, ºÏ²¢MMCÏà¹Ø¹¦Äܵ½Trophy baselineÉÏ**/
/**Log information: \main\Trophy\3 2013-12-10 08:35:23 GMT jzwang
** href#22331:Merge MMC latest implementation from Qilian branch.**/