[Feature]Upload Modem source code
Change-Id: Id4294f30faced84d3e6fd6d5e61e1111bf287a37
diff --git a/mcu/interface/protocol/as_c2k/1xrtt/wbios.h b/mcu/interface/protocol/as_c2k/1xrtt/wbios.h
new file mode 100644
index 0000000..0dd8bd0
--- /dev/null
+++ b/mcu/interface/protocol/as_c2k/1xrtt/wbios.h
@@ -0,0 +1,1257 @@
+/*****************************************************************************
+* 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.**/
+