[Feature][Modem]Update MTK MODEM V1.6 baseline version: MOLY.NR15.R3.MD700.IVT.MP1MR3.MP.V1.6

MTK modem version: MT2735_IVT_MOLY.NR15.R3.MD700.IVT.MP1MR3.MP.V1.6.tar.gz
RF  modem version: NA

Change-Id: I45a4c2752fa9d1a618beacd5d40737fb39ab64fb
diff --git a/mcu/l1/gl1/l1d_ext/m12191.c b/mcu/l1/gl1/l1d_ext/m12191.c
new file mode 100644
index 0000000..d1fd6f6
--- /dev/null
+++ b/mcu/l1/gl1/l1d_ext/m12191.c
@@ -0,0 +1,12477 @@
+/*****************************************************************************
+*  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) 2005
+*
+*  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).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ *
+ * Filename:
+ * ---------
+ *   m12191.c
+ *
+ * Project:
+ * --------
+ *   MT6208
+ *
+ * Description:
+ * ------------
+ *   Setup Synthesizer
+ *
+ * Author:
+ * -------
+ * -------
+ *
+ *------------------------------------------------------------------------------
+ * $Revision:   1.30  $
+ * $Modtime:   Jul 29 2005 13:44:06  $
+ * $Log:   //mtkvs01/vmdata/Maui_sw/archives/mcu/l1/l1d/m12191.c-arc  $
+ *
+ * 12 17 2018 yw.lee
+ * [MOLY00372594] [2GL1D] CT2 gain update, OBB close MLNA, ELT trace
+ * .
+ *
+ * 10 01 2018 tim.tsai
+ * [MOLY00356374] [Gen97][GL1D] 2G RFD porting
+ * .[Vmoly] Or RF option MT6190T
+ *
+ * 09 20 2018 rick.lee
+ * [MOLY00346462] [GL1D][RF]merge UMOLYE patch back to VMOLY
+ *
+ * 09 10 2018 rick.lee
+ * [MOLY00346462] [GL1D][RF][Gen95] Trinity2L 2G porting
+ * .Trinity2L patch back to UMOLYE
+ *
+ * 08 06 2018 rick.lee
+ * [MOLY00340337] [GL1D][RFD][Gen95] TrinityL-E2 2G porting
+ * .TrinityLE2 Dev patch back to UMOLYE
+ *
+ * 08 02 2018 rick.lee
+ * [MOLY00340337][GL1D][RF] TrinityLE2 Dev patch back to UMOLYE
+ *
+ * 07 20 2018 rick.lee
+ * [MOLY00340337] [GL1D][RFD][Gen95] TrinityL-E2 2G porting
+ * [GL1D][RFD][Gen95] TrinityL-E2 2G RF porting
+ *
+ * 06 13 2018 yw.lee
+ * [MOLY00332889] [2GL1D][TrinityL] TPD control
+ * .
+ *
+ * 02 21 2018 tim.tsai
+ * [MOLY00305636] [Trinity][GL1D] 2G LNA port and if_sel and change float point to fix point
+ * .
+ *
+ * 12 26 2017 tim.tsai
+ * [MOLY00296149] [MT6295][GL1D] 2G Trinity L porting
+ * .
+ *
+ * 12 15 2017 tim.tsai
+ * [MOLY00293063] [TRINITY_DEV][L1D] 2G Trinity E1 2G RFD porting
+ * .
+ *
+ * 11 10 2017 tim.tsai
+ * [MOLY00288931] [MT6295][L1D] 2G TRINITY E1 RFD
+ * .
+ *
+ * 06 12 2017 tim.tsai
+ * [MOLY00256723] [UMOLYA][ZION][L1D] MT6177M 2G RF Driver
+ * .
+ *
+ * 01 06 2017 silvers.peng
+ * [MOLY00223254] [L1D]Bianco BB RF Driver check in 1st wave
+ * .
+ *
+ * 03 15 2016 yw.chen
+ * [MOLY00169087] [L1D] MT6179 2G RF Driver Modification
+ * .
+ *
+ * 03 10 2016 siyu.li
+ * [MOLY00168264] UMOLY 2G MIPI support three pa data
+ * .
+ *
+ * 01 20 2016 wiley.li
+ * [MOLY00150655] [L1D][Modify] KDCO patch to improve GMSK peak phase error
+ * 	
+ * 	.
+ *
+ * 09 10 2015 wiley.li
+ * [MOLY00141314] [L1D][Modify] Fix GL1D build warning & add API for Low pcl subband cal.
+ * 	.
+ *
+ * 07 10 2015 wiley.li
+ * [MOLY00127251] [L1D][Modify] Update 2G Driver(Update E3 CW & remove IF_state)
+ * 	.
+ *
+ * 04 09 2015 ola.lee
+ * [MOLY00091988] [L1D] Update MT6176 2G RF Driver
+ * Update 2G SRX_DOUBLER_EN Setting.
+ *
+ * 02 10 2015 ola.lee
+ * [MOLY00091988] [L1D] Update MT6176 2G RF Driver
+ * 	.
+ *
+ * 02 10 2015 yi-ying.lin
+ * [MOLY00095496] [L1D][Modify] TK6291 CC NVRAM and custom data modification L1D part
+ * 	.
+ *
+ * 02 02 2015 ola.lee
+ * [MOLY00091988] [L1D] Update MT6176 2G RF Driver
+ *
+ * 10 06 2014 ola.lee
+ * [MOLY00080299] [L1D] Check in 2G Fix AFC for MT6169
+ * 	.
+ *
+ * 10 28 2013 vend_sherman.chung
+ * [MOLY00043231] [MT6290] Add 2G MIPI Control table store at NVRAM feature
+ * .
+ *
+ * 10 24 2013 vend_sherman.chung
+ * [MOLY00043231] [MT6290] Add 2G MIPI Control table store at NVRAM feature
+ * .
+ *
+ * 10 02 2013 ola.lee
+ * [MOLY00039576] [MT6165] Merget MT6165 to MOLY for Dual Talk
+ * 	.
+ *
+ * 08 14 2013 yi-ying.lin
+ * [MOLY00028415] [82LTE.SMT.DEV] 6166/6169 2G calibration feature development
+ * .
+ *
+ * 07 17 2013 chunyen.wu
+ * [MOLY00030116] [L1D][Modify] MIPI load on MT6290
+ * .
+ *
+ * 04 15 2013 yuyang.hsiao
+ * [MOLY00016402] [L1D][Modify] Update MT6169 RF final parameter
+ * .
+ *
+ * 03 28 2013 yuyang.hsiao
+ * [MOLY00012979] [L1D][Modify] Add MT6169 RF Driver
+ * .
+ *
+ * 12 06 2012 sean.yang
+ * [MOLY00007140] [L1D][Modify] Modify the flow to set the RX settings for integer and non-integer channels on OthelloT
+ * .
+ *
+ * 03 29 2012 samuel.yang
+ * removed!
+ * .
+ *
+ * 03 15 2012 yuyang.hsiao
+ * removed!
+ * .
+ *
+ * 11 17 2011 chang-kuan.lin
+ * removed!
+ * .
+ *
+ * 10 21 2011 th.yeh
+ * removed!
+ * .
+ *
+ * 08 24 2011 victo.chen
+ * removed!
+ * .
+ *
+ * 07 21 2011 weining.chien
+ * removed!
+ * .
+ *
+ * 07 19 2011 victo.chen
+ * removed!
+ * .
+ *
+ * 06 18 2011 victo.chen
+ * removed!
+ * .
+ *
+ * 04 15 2011 weining.chien
+ * removed!
+ * .
+ *
+ * 04 14 2011 sean.yang
+ * removed!
+ * .
+ *
+ * 03 16 2011 victo.chen
+ * removed!
+ * .
+ *
+ * 03 11 2011 sean.yang
+ * removed!
+ * .
+ *
+ * 01 25 2011 victo.chen
+ * removed!
+ * .
+ *
+ * 01 16 2011 chuwei.lo
+ * removed!
+ * .
+ *
+ * 01 05 2011 chuwei.lo
+ * removed!
+ * .
+ *
+ * 01 04 2011 sean.yang
+ * removed!
+ * .
+ *
+ * 12 20 2010 sean.yang
+ * removed!
+ * .
+ *
+ * 12 15 2010 chang-kuan.lin
+ * removed!
+ * .
+ *
+ * 12 08 2010 chuwei.lo
+ * removed!
+ * .
+ *
+ * 11 24 2010 sean.yang
+ * removed!
+ * .
+ *
+ * 11 18 2010 max.weng
+ * removed!
+ * .
+ *
+ * 11 16 2010 victo.chen
+ * removed!
+ * .
+ *
+ * 11 12 2010 max.weng
+ * removed!
+ * .
+ *
+ * 11 10 2010 yr.chiang
+ * removed!
+ * .
+ *
+ * 11 09 2010 max.weng
+ * removed!
+ * .
+ *
+ * 09 05 2010 victo.chen
+ * removed!
+ * .
+ *
+ * 08 12 2010 victo.chen
+ * removed!
+ * .
+ *
+ * 08 07 2010 samuel.yang
+ * removed!
+ * .
+ *
+ * removed!
+ * removed!
+ * Merge MT6251 DVT branch back to MAUI
+ *
+ * removed!
+ * removed!
+ * 
+ *
+ * removed!
+ * removed!
+ * 
+ *
+ * removed!
+ * removed!
+ * 
+ *
+ * removed!
+ * removed!
+ * 
+ *
+ * removed!
+ * removed!
+ * 
+ *
+ * removed!
+ * removed!
+ * 
+ *
+ * removed!
+ * removed!
+ * [L1D][Modify]Check in AD6546 RF Driver #if IS_RF_AD6546
+ *
+ * removed!
+ * removed!
+ * Remove compile warning of may be used before being set
+ *
+ * removed!
+ * removed!
+ * local variable f_vco is not used
+ *
+ * removed!
+ * removed!
+ * 
+ *
+ * removed!
+ * removed!
+ * 
+ *
+ * removed!
+ * removed!
+ * 
+ *
+ * removed!
+ * removed!
+ * 
+ *
+ * removed!
+ * removed!
+ * 
+ *
+ * removed!
+ * removed!
+ * 
+ *
+ * removed!
+ * removed!
+ * 
+ *
+ * removed!
+ * removed!
+ * 
+ *
+ * removed!
+ * removed!
+ * < Triple850>  
+ * RF chip gets GSM900 signal from GSm850 input pins  to avoid getting GSM900 signal
+ *
+ * removed!
+ * removed!
+ * Add code to support GSM850 signal received through GSM900 path
+ *
+ * removed!
+ * removed!
+ * Add RF driver of IRFS3001
+ *
+ * removed!
+ * removed!
+ * 
+ *
+ * removed!
+ * removed!
+ * 
+ *
+ * removed!
+ * removed!
+ * 
+ *
+ * removed!
+ * removed!
+ * 
+ *
+ * removed!
+ * removed!
+ * 
+ *
+ * removed!
+ * removed!
+ * 
+ *
+ * removed!
+ * removed!
+ * 
+ *
+ * removed!
+ * removed!
+ * 
+ *
+ * removed!
+ * removed!
+ * 
+ * 
+ *    Rev 1.30   Jul 29 2005 14:01:24   mtk00773
+ * [L1D][Enhence] Support RF SKY74117
+ * Resolution for 12111: [L1D][Enhence] Support RF SKY74117
+ * 
+ *    Rev 1.29   Jul 08 2005 16:53:04   mtk00939
+ * [L1D][Modify]L1D add code for MT6139C and META related code
+ * 
+ *    Rev 1.28   May 17 2005 00:34:36   BM_Trunk
+ * Karlos:
+ * add copyright and disclaimer statement
+ * 
+ *    Rev 1.27   Jan 18 2005 00:38:08   BM
+ * append new line in W05.04
+ * 
+ *    Rev 1.26   Jul 30 2004 17:37:06   mtk00240
+ * L1D add code to support AERO1Plus RF chip
+ * Resolution for 6925: [L1D][Enhance] L1D add code to support AERO1Plus RF chip
+ *
+ *    Rev 1.25   Jul 05 2004 15:49:42   mtk00773
+ * Add RF POLARIS1 setting
+ *
+ *    Rev 1.24   May 21 2004 19:01:58   mtk00240
+ * Add code to support MT6129D
+ * Resolution for 5565: [L1D][Add Feature] Add code to support MT6129D
+ *
+ *    Rev 1.23   Jan 27 2004 15:33:12   mtk00585
+ * [L1D][Add] L1D Add code for MT6129C RF Driver.
+ *
+ *    Rev 1.22   Oct 23 2003 14:22:18   mtk00585
+ * [L1D][Add] L1D Add code for MT6129B RF Driver.
+ * Resolution for 3177: [L1D][Add] L1D Add code for MT6129B RF Driver.
+ *
+ *    Rev 1.21   Jul 11 2003 17:41:30   mtk00489
+ * [L1D][Enhanced]L1D supports MT6129A
+ * Resolution for 2241: [L1D][Enhanced]L1D supports MT6129A
+ *
+ *    Rev 1.20   May 16 2003 13:09:24   mtk00489
+ * [L1D][New Feature]L1D supports MT6119C
+ * Resolution for 1794: [L1D][New Feature]L1D supports MT6119C
+ *
+ *    Rev 1.19   Mar 07 2003 18:47:32   mtk00474
+ * modify the coding error for decision tx arfcn value of MT6119
+ * Resolution for 1182: modify the coding error for decision tx arfcn value of MT6119
+ *
+ *    Rev 1.18   14 Feb 2003 11:42:54   mtk00240
+ * L1D modify the synthesizer setting of Bright4 to support PCS band
+ * Resolution for 652: L1D modify the synthesizer setting of Bright4 to support PCS band
+ *
+ *    Rev 1.17   Nov 11 2002 18:04:58   mtk00474
+ * Update MT6119 and AERO RF parameters
+ * Resolution for 557: Update MT6119 and AERO RF parameters
+ *
+ *    Rev 1.16   01 Nov 2002 11:11:24   mtk00240
+ * L1D modify TX PLL evaulation for new MT6119 chip
+ * Resolution for 547: L1D modify TX PLL evaulation for new MT6119 chip
+ *
+ *    Rev 1.15   22 Oct 2002 08:18:00   mtk00240
+ * L1D modified some control data of mt6119
+ * Resolution for 439: L1D add code to support MT6119 RF Module
+ *
+ *    Rev 1.14   01 Oct 2002 09:41:12   mtk00240
+ * L1D modified GSM RX frequency evaluation of MT6119
+ * Resolution for 515: L1D modified GSM RX frequency evaluation of MT6119
+ *
+ *    Rev 1.13   01 Sep 2002 15:35:30   mtk00240
+ * L1D fix the bug that  max ARFCN of GSM is 1023 not 1024
+ * Resolution for 473: L1D fix the bug that  max ARFCN of GSM is 1023 not 1024
+ *
+ *    Rev 1.12   27 Aug 2002 12:04:22   admin
+ * change file header
+ *
+ *    Rev 1.11   26 Aug 2002 14:34:14   admin
+ * remove modification notice
+ * add copyright statement.
+ *
+ *    Rev 1.10   24 Aug 2002 14:10:46   mtk00240
+ *  L1D add code to support AERO RF Module
+ * Resolution for 464:  L1D add code to support AERO RF Module
+ *
+ *    Rev 1.9   23 Jul 2002 15:49:12   mtk00240
+ * L1D add code to support MT6119 RF Module
+ * Resolution for 439: L1D add code to support MT6119 RF Module
+ *
+ *    Rev 1.8   03 Jul 2002 21:43:48   mtk00240
+ * L1D extrract RF setting code to let customer setup new RF module more easily
+ * Resolution for 418: L1D extrract RF setting code to let customer setup new RF module more easily
+ *
+ *    Rev 1.7   01 May 2002 22:45:58   mtk00240
+ * Extract GSM code from L1D
+ * Resolution for 384: Extract GSM code from L1D
+ *
+ *    Rev 1.6   30 Mar 2002 13:04:16   mtk00240
+ * 1) Modify L1D code to support both Bright2 & Bright4 RF board
+ * 2) L1D add Audio interface to support Voice Memo & Melody
+ * 3) Add L1D code to support RAM-based chip
+ * Resolution for 341: Modify L1D code to support both Bright2 & Bright4 RF board
+ * Resolution for 342: L1D add Audio interface to support Voice Memo & Melody
+ * Resolution for 343: Add L1D code to support RAM-based chip
+ *
+ *    Rev 1.5   03 Mar 2002 23:07:10   mtk00240
+ * L1D modified Tx synthesizer setting of DCS band
+ * Resolution for 306: L1D modified Tx synthesizer setting of DCS band
+ *
+ *    Rev 1.4   17 Feb 2002 20:15:42   mtk00240
+ * Update L1D code for solving HandOver test item
+ * Resolution for 275: Update L1D code for solving HandOver test item
+ *
+ *    Rev 1.3   03 Jan 2002 12:19:50   mtk00240
+ * Merge B.L1.20011225 to Main V1.XX
+ *
+ *    Rev 1.2.1.0   Dec 25 2001 14:32:56   mtk00210
+ * Update for High resolution RSSI, multiband AFC,
+ * update L1C/L1D interface for CSD
+ *
+ *    Rev 1.1   Dec 10 2001 16:43:56   mtk00240
+ * Add copyright header of MediaTek
+ *
+ *******************************************************************************/
+
+
+/*===============================================================================*/
+/*                                                                               */
+/* void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )  */
+/* void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )  */
+/*                                                                               */
+/*===============================================================================*/
+/*                                                                               */
+/* arfcn  : the request ARFCN number.                                            */
+/* *rfN   : returned RF N counter setting                                        */
+/* *ifN   : returned IF N counter setting                                        */
+/*                                                                               */
+/* ----------------------------------------------------------------------------- */
+/*                                                                               */
+/* This program evaluates the PLL setting value by the request arfcn for Si4133. */
+/* If the PLL component is changed, this file shall be modified by vendor        */
+/*                                                                               */
+/* ----------------------------------------------------------------------------- */
+
+#include "l1d_cid.h"
+#include "m12190_l1core.h"
+
+/*================================================================================================*/
+
+#if IS_RF_BRIGHT2
+/*BRIGHT2*/ void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*BRIGHT2*/ {  long setting = 0;
+/*BRIGHT2*/
+/*BRIGHT2*/    switch(rf_band)
+/*BRIGHT2*/    {
+/*BRIGHT2*/       case  FrequencyBand900 :
+/*BRIGHT2*/       {
+/*BRIGHT2*/          if( arfcn<=124 )                    /* GSM( 0~  124), */
+/*BRIGHT2*/             setting = (5800L<<4)|4;
+/*BRIGHT2*/          else                                /* GSM(975~1023), */
+/*BRIGHT2*/             setting = (4776L<<4)|4;
+/*BRIGHT2*/          break;
+/*BRIGHT2*/       }
+/*BRIGHT2*/       case  FrequencyBand1800 :
+/*BRIGHT2*/       {
+/*BRIGHT2*/          setting = (7389L<<4)|3;             /* DCS(512~ 885), */
+/*BRIGHT2*/          break;
+/*BRIGHT2*/       }
+/*BRIGHT2*/       default :
+/*BRIGHT2*/       {
+/*BRIGHT2*/          break;
+/*BRIGHT2*/       }
+/*BRIGHT2*/    }
+/*BRIGHT2*/    *rfN = setting + (arfcn<<4);
+/*BRIGHT2*/    *ifN = (2700L<<4) | 5;
+/*BRIGHT2*/ }
+/*BRIGHT2*/ /* =========================================================================== */
+/*BRIGHT2*/
+/*BRIGHT2*/ void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*BRIGHT2*/ {  long setting = 0;
+/*BRIGHT2*/
+/*BRIGHT2*/    switch(rf_band)
+/*BRIGHT2*/    {
+/*BRIGHT2*/       case  FrequencyBand900 :
+/*BRIGHT2*/       {
+/*BRIGHT2*/          if( arfcn<=124 )                    /* GSM( 0~  124), */
+/*BRIGHT2*/          {  setting = (5800L<<4)|4;  }
+/*BRIGHT2*/          else                                /* GSM(975~1023), */
+/*BRIGHT2*/          {  setting = (4776L<<4)|4;  }
+/*BRIGHT2*/          *ifN = (2700L<<4)|5;                /* 54M/200K */
+/*BRIGHT2*/          break;
+/*BRIGHT2*/       }
+/*BRIGHT2*/       case  FrequencyBand1800 :
+/*BRIGHT2*/       {
+/*BRIGHT2*/          setting = (7389L<<4)|3;             /* DCS(512~ 885), */
+/*BRIGHT2*/          *ifN    = (2600L<<4)|5;             /* 52M/200K */
+/*BRIGHT2*/          break;
+/*BRIGHT2*/       }
+/*BRIGHT2*/       default :
+/*BRIGHT2*/       {  break;
+/*BRIGHT2*/       }
+/*BRIGHT2*/    }
+/*BRIGHT2*/    *rfN = setting + (arfcn<<4);
+/*BRIGHT2*/ }
+/*BRIGHT2*/ /* =========================================================================== */
+#endif
+
+#if IS_RF_BRIGHT4
+/*BRIGHT4*/ void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*BRIGHT4*/ {
+/*BRIGHT4*/    switch(rf_band)
+/*BRIGHT4*/    {
+/*BRIGHT4*/       case  FrequencyBand900 :
+/*BRIGHT4*/       {
+/*BRIGHT4*/          if(arfcn<=50)
+/*BRIGHT4*/          {  *rfN = 0x0490C9 + (arfcn<<6);  }  /*  ARFCN :   1~  50 */
+/*BRIGHT4*/          else if(arfcn<=124)
+/*BRIGHT4*/          {  *rfN = 0x4490C9 + (arfcn<<6);  }  /*  ARFCN :  51~ 124 */
+/*BRIGHT4*/          else
+/*BRIGHT4*/          {  *rfN = 0x0390C9 + (arfcn<<6);  }  /*  ARFCN : 975~1023 */
+/*BRIGHT4*/          break;
+/*BRIGHT4*/       }
+/*BRIGHT4*/       case  FrequencyBand1800 :
+/*BRIGHT4*/       {
+/*BRIGHT4*/          *rfN = 0x042851 + (arfcn<<5);        /*  ARFCN : 512~ 885 */
+/*BRIGHT4*/          break;
+/*BRIGHT4*/       }
+/*BRIGHT4*/       case  FrequencyBand1900 :
+/*BRIGHT4*/       {
+/*BRIGHT4*/          *rfN = 0x447679 + (arfcn<<5);        /*  ARFCN : 512~ 810 */
+/*BRIGHT4*/          break;
+/*BRIGHT4*/       }
+/*BRIGHT4*/       default :
+/*BRIGHT4*/       {
+/*BRIGHT4*/          break;
+/*BRIGHT4*/       }
+/*BRIGHT4*/    }
+/*BRIGHT4*/    *ifN = 0;
+/*BRIGHT4*/ }
+/*BRIGHT4*/ /* =========================================================================== */
+/*BRIGHT4*/
+/*BRIGHT4*/ void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*BRIGHT4*/ {
+/*BRIGHT4*/    switch(rf_band)
+/*BRIGHT4*/    {
+/*BRIGHT4*/       case  FrequencyBand900 :
+/*BRIGHT4*/       {
+/*BRIGHT4*/          if(arfcn<=10)
+/*BRIGHT4*/          {  *rfN = 0xD4BF09 + (arfcn<<6);  }  /*  ARFCN :   1~  10 */
+/*BRIGHT4*/          else if(arfcn<=124)
+/*BRIGHT4*/          {  *rfN = 0xC4BC89 + (arfcn<<6);  }  /*  ARFCN :  11~ 124 */
+/*BRIGHT4*/          else
+/*BRIGHT4*/          {  *rfN = 0xD3BF09 + (arfcn<<6);  }  /*  ARFCN : 975~1023 */
+/*BRIGHT4*/          break;
+/*BRIGHT4*/       }
+/*BRIGHT4*/       case  FrequencyBand1800 :
+/*BRIGHT4*/       {
+/*BRIGHT4*/          if(arfcn<=672)
+/*BRIGHT4*/          {  *rfN = 0x841EF1 + (arfcn<<5);  }  /*  ARFCN : 512~ 672 */
+/*BRIGHT4*/          else
+/*BRIGHT4*/          {  *rfN = 0x942031 + (arfcn<<5);  }  /*  ARFCN : 673~ 885 */
+/*BRIGHT4*/          break;
+/*BRIGHT4*/       }
+/*BRIGHT4*/       case  FrequencyBand1900 :
+/*BRIGHT4*/       {
+/*BRIGHT4*/          *rfN = 0xC47679 + (arfcn<<5);        /*  ARFCN : 512~ 810 */
+/*BRIGHT4*/          break;
+/*BRIGHT4*/       }
+/*BRIGHT4*/       default :
+/*BRIGHT4*/       {  break;
+/*BRIGHT4*/       }
+/*BRIGHT4*/    }
+/*BRIGHT4*/    *ifN = 0;
+/*BRIGHT4*/ }
+/*BRIGHT4*/ /* =========================================================================== */
+#endif
+
+#if IS_RF_BRIGHT5P
+/*BRIGHT5P*/ void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*BRIGHT5P*/ {
+/*BRIGHT5P*/    switch(rf_band)
+/*BRIGHT5P*/    {
+/*BRIGHT5P*/       case  FrequencyBand850 :
+/*BRIGHT5P*/       {
+/*BRIGHT5P*/          if(arfcn<=133)
+/*BRIGHT5P*/          {  *rfN = ( ((2*(arfcn-128) + 52)<<5) | (135<<11) | (0x080001) ); }  /*  ARFCN :   128~  133 */
+/*BRIGHT5P*/          else if(arfcn<=165)
+/*BRIGHT5P*/          {  *rfN = ( ((2*(arfcn-134))<<5) | (136<<11) | (0x080001) ); }  /*  ARFCN :  134~ 165 */
+/*BRIGHT5P*/          else if(arfcn<=197)
+/*BRIGHT5P*/          {  *rfN = ( ((2*(arfcn-166))<<5) | (137<<11) | (0x080001) ); }  /*  ARFCN :  166~ 197 */
+/*BRIGHT5P*/          else if(arfcn<=229)
+/*BRIGHT5P*/          {  *rfN = ( ((2*(arfcn-198))<<5) | (138<<11) | (0x080001) ); }  /*  ARFCN :  198~ 229 */
+/*BRIGHT5P*/          else
+/*BRIGHT5P*/          {  *rfN = ( ((2*(arfcn-230))<<5) | (139<<11) | (0x080001) ); }  /*  ARFCN :  230~ 251 */
+/*BRIGHT5P*/          break;
+/*BRIGHT5P*/       }
+/*BRIGHT5P*/       case  FrequencyBand900 :
+/*BRIGHT5P*/       {
+/*BRIGHT5P*/          if(arfcn<=28)
+/*BRIGHT5P*/          {  *rfN = ( ((2*arfcn + 6)<<5) | (146<<11) | (0x080009) ); }  /*  ARFCN :   0~  28 */
+/*BRIGHT5P*/          else if(arfcn<=60)
+/*BRIGHT5P*/          {  *rfN = ( ((2*(arfcn-29))<<5) | (147<<11) | (0x080009) ); }  /*  ARFCN :  29~ 60 */
+/*BRIGHT5P*/          else if(arfcn<=92)
+/*BRIGHT5P*/          {  *rfN = ( ((2*(arfcn-61))<<5) | (148<<11) | (0x080009) ); }  /*  ARFCN :  61~ 92 */
+/*BRIGHT5P*/          else if(arfcn<=124)
+/*BRIGHT5P*/          {  *rfN = ( ((2*(arfcn-93))<<5) | (149<<11) | (0x080009) ); }  /*  ARFCN :  93~ 124 */
+/*BRIGHT5P*/          else if(arfcn<=988)
+/*BRIGHT5P*/          {  *rfN = ( ((2*(arfcn-975)+36)<<5) | (144<<11) | (0x080009) );  }  /*  ARFCN :  975~ 988 */
+/*BRIGHT5P*/          else if(arfcn<=1020)
+/*BRIGHT5P*/          {  *rfN = ( ((2*(arfcn-989))<<5) | (145<<11) | (0x080009) ); }  /*  ARFCN :  989~ 1020 */
+/*BRIGHT5P*/          else
+/*BRIGHT5P*/          {  *rfN = ( ((2*(arfcn-1021))<<5) | (146<<11) | (0x080009) ); }  /*  ARFCN :  1021~ 1023 */
+/*BRIGHT5P*/          break;
+/*BRIGHT5P*/       }
+/*BRIGHT5P*/       case  FrequencyBand1800 :
+/*BRIGHT5P*/       {
+/*BRIGHT5P*/          if(arfcn<=573)
+/*BRIGHT5P*/          {  *rfN = ( (((arfcn-512) + 2)<<5) | (141<<11) | (0x080011) ); }  /*  ARFCN :   512~  573 */
+/*BRIGHT5P*/          else if(arfcn<=637)
+/*BRIGHT5P*/          {  *rfN = ( ((arfcn-574)<<5) | (142<<11) | (0x080011) ); }  /*  ARFCN :  574~ 637 */
+/*BRIGHT5P*/          else if(arfcn<=701)
+/*BRIGHT5P*/          {  *rfN = ( ((arfcn-638)<<5) | (143<<11) | (0x080011) ); }  /*  ARFCN :  638~ 701 */
+/*BRIGHT5P*/          else if(arfcn<=765)
+/*BRIGHT5P*/          {  *rfN = ( ((arfcn-702)<<5) | (144<<11) | (0x080011) ); }  /*  ARFCN :  702~ 765 */
+/*BRIGHT5P*/          else if(arfcn<=829)
+/*BRIGHT5P*/          {  *rfN = ( ((arfcn-766)<<5) | (145<<11) | (0x080011) ); }  /*  ARFCN :  766~ 829 */
+/*BRIGHT5P*/          else
+/*BRIGHT5P*/          {  *rfN = ( ((arfcn-830)<<5) | (146<<11) | (0x080011) ); }  /*  ARFCN :  830~ 885 */
+/*BRIGHT5P*/          break;
+/*BRIGHT5P*/       }
+/*BRIGHT5P*/       case  FrequencyBand1900 :
+/*BRIGHT5P*/       {
+/*BRIGHT5P*/          if(arfcn<=524)
+/*BRIGHT5P*/          {  *rfN = ( (((arfcn-512) + 51)<<5) | (150<<11) | (0x080019) ); }  /*  ARFCN :   512~  524 */
+/*BRIGHT5P*/          else if(arfcn<=588)
+/*BRIGHT5P*/          {  *rfN = ( ((arfcn-525)<<5) | (151<<11) | (0x080019) ); }  /*  ARFCN :  525~ 588 */
+/*BRIGHT5P*/          else if(arfcn<=652)
+/*BRIGHT5P*/          {  *rfN = ( ((arfcn-589)<<5) | (152<<11) | (0x080019) ); }  /*  ARFCN :  589~ 652 */
+/*BRIGHT5P*/          else if(arfcn<=716)
+/*BRIGHT5P*/          {  *rfN = ( ((arfcn-653)<<5) | (153<<11) | (0x080019) ); }  /*  ARFCN :  653~ 716 */
+/*BRIGHT5P*/          else if(arfcn<=780)
+/*BRIGHT5P*/          {  *rfN = ( ((arfcn-717)<<5) | (154<<11) | (0x080019) ); }  /*  ARFCN :  717~ 780 */
+/*BRIGHT5P*/          else
+/*BRIGHT5P*/          {  *rfN = ( ((arfcn-781)<<5) | (155<<11) | (0x080019) ); }  /*  ARFCN :  781~ 810 */
+/*BRIGHT5P*/          break;
+/*BRIGHT5P*/       }
+/*BRIGHT5P*/       default :
+/*BRIGHT5P*/       {
+/*BRIGHT5P*/          break;
+/*BRIGHT5P*/       }
+/*BRIGHT5P*/    }
+/*BRIGHT5P*/    *ifN = 0;
+/*BRIGHT5P*/ }
+/*BRIGHT5P*/ /* =========================================================================== */
+/*BRIGHT5P*/
+/*BRIGHT5P*/ void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*BRIGHT5P*/ {
+/*BRIGHT5P*/    switch(rf_band)
+/*BRIGHT5P*/    {
+/*BRIGHT5P*/       case  FrequencyBand850 :
+/*BRIGHT5P*/       {
+/*BRIGHT5P*/          if(arfcn<=150)
+/*BRIGHT5P*/          {  *rfN = ( ((2*(arfcn-128) + 18)<<5) | (141<<11) | (0x000001) ); }  /*  ARFCN :   128~  150 */
+/*BRIGHT5P*/          else if(arfcn<=182)
+/*BRIGHT5P*/          {  *rfN = ( ((2*(arfcn-151))<<5) | (142<<11) | (0x000001) ); }  /*  ARFCN :  151~ 182 */
+/*BRIGHT5P*/          else if(arfcn<=214)
+/*BRIGHT5P*/          {  *rfN = ( ((2*(arfcn-183))<<5) | (143<<11) | (0x000001) ); }  /*  ARFCN :  183~ 214 */
+/*BRIGHT5P*/          else if(arfcn<=246)
+/*BRIGHT5P*/          {  *rfN = ( ((2*(arfcn-215))<<5) | (144<<11) | (0x000001) ); }  /*  ARFCN :  215~ 246 */
+/*BRIGHT5P*/          else
+/*BRIGHT5P*/          {  *rfN = ( ((2*(arfcn-247))<<5) | (145<<11) | (0x000001) ); }  /*  ARFCN :  247~ 251 */
+/*BRIGHT5P*/          break;
+/*BRIGHT5P*/       }
+/*BRIGHT5P*/       case  FrequencyBand900 :
+/*BRIGHT5P*/       {
+/*BRIGHT5P*/          if(arfcn<=3)
+/*BRIGHT5P*/          {  *rfN = ( ((2*arfcn+56)<<5) | (151<<11) | (0x200009) ); }  /*  ARFCN :   0~  3 */
+/*BRIGHT5P*/          else if(arfcn<=9)
+/*BRIGHT5P*/          {  *rfN = ( ((2*(arfcn-4))<<5) | (152<<11) | (0x200009) ); }  /*  ARFCN :  4~ 9 */
+/*BRIGHT5P*/          else if(arfcn<=13)
+/*BRIGHT5P*/          {  *rfN = ( ((2*(arfcn-10)+56)<<5) | (151<<11) | (0x000009) ); }  /*  ARFCN :  10~ 13 */
+/*BRIGHT5P*/          else if(arfcn<=45)
+/*BRIGHT5P*/          {  *rfN = ( ((2*(arfcn-14))<<5) | (152<<11) | (0x000009) ); }  /*  ARFCN :  14~ 45 */
+/*BRIGHT5P*/          else if(arfcn<=77)
+/*BRIGHT5P*/          {  *rfN = ( ((2*(arfcn-46))<<5) | (153<<11) | (0x000009) ); }  /*  ARFCN :  46~ 77 */
+/*BRIGHT5P*/          else if(arfcn<=109)
+/*BRIGHT5P*/          {  *rfN = ( ((2*(arfcn-78))<<5) | (154<<11) | (0x000009) ); }  /*  ARFCN :  78~ 109 */
+/*BRIGHT5P*/          else if(arfcn<=124)
+/*BRIGHT5P*/          {  *rfN = ( ((2*(arfcn-110))<<5) | (155<<11) | (0x000009) ); }  /*  ARFCN :  110~ 124 */
+/*BRIGHT5P*/          else if(arfcn<=995)
+/*BRIGHT5P*/          {  *rfN = ( ((2*(arfcn-975)+22)<<5) | (150<<11) | (0x200009) ); }  /*  ARFCN : 975~ 995 */
+/*BRIGHT5P*/          else
+/*BRIGHT5P*/          {  *rfN = ( ((2*(arfcn-996))<<5) | (151<<11) | (0x200009) ); }  /*  ARFCN : 996~1023 */
+/*BRIGHT5P*/          break;
+/*BRIGHT5P*/       }
+/*BRIGHT5P*/       case  FrequencyBand1800 :
+/*BRIGHT5P*/       {
+/*BRIGHT5P*/          if(arfcn<=520)
+/*BRIGHT5P*/          {  *rfN = ( (((arfcn-512) + 55)<<5) | (139<<11) | (0x000011) ); }  /*  ARFCN :   512~  520 */
+/*BRIGHT5P*/          else if(arfcn<=584)
+/*BRIGHT5P*/          {  *rfN = ( ((arfcn-521)<<5) | (140<<11) | (0x000011) ); }  /*  ARFCN :  521~ 584 */
+/*BRIGHT5P*/          else if(arfcn<=648)
+/*BRIGHT5P*/          {  *rfN = ( ((arfcn-585)<<5) | (141<<11) | (0x000011) ); }  /*  ARFCN :  585~ 648 */
+/*BRIGHT5P*/          else if(arfcn<=670)
+/*BRIGHT5P*/          {  *rfN = ( ((arfcn-649)<<5) | (142<<11) | (0x000011) ); }  /*  ARFCN :  649~ 670 */
+/*BRIGHT5P*/          else if(arfcn<=702)
+/*BRIGHT5P*/          {  *rfN = ( (((arfcn-671)+32)<<5) | (142<<11) | (0x200011) ); }  /*  ARFCN :  671~ 702 */
+/*BRIGHT5P*/          else if(arfcn<=766)
+/*BRIGHT5P*/          {  *rfN = ( ((arfcn-703)<<5) | (143<<11) | (0x200011) ); }  /*  ARFCN :  703~ 766 */
+/*BRIGHT5P*/          else if(arfcn<=830)
+/*BRIGHT5P*/          {  *rfN = ( ((arfcn-767)<<5) | (144<<11) | (0x200011) ); }  /*  ARFCN :  767~ 830 */
+/*BRIGHT5P*/          else
+/*BRIGHT5P*/          {  *rfN = ( ((arfcn-831)<<5) | (145<<11) | (0x200011) ); }  /*  ARFCN : 831~ 885 */
+/*BRIGHT5P*/          break;
+/*BRIGHT5P*/       }
+/*BRIGHT5P*/       case  FrequencyBand1900 :
+/*BRIGHT5P*/       {
+/*BRIGHT5P*/          if(arfcn<=524)
+/*BRIGHT5P*/          {  *rfN = ( (((arfcn-512) + 51)<<5) | (150<<11) | (0x000019) ); }  /*  ARFCN :   512~  524 */
+/*BRIGHT5P*/          else if(arfcn<=588)
+/*BRIGHT5P*/          {  *rfN = ( ((arfcn-525)<<5) | (151<<11) | (0x000019) ); }  /*  ARFCN :  525~ 588 */
+/*BRIGHT5P*/          else if(arfcn<=652)
+/*BRIGHT5P*/          {  *rfN = ( ((arfcn-589)<<5) | (152<<11) | (0x000019) ); }  /*  ARFCN :  589~ 652 */
+/*BRIGHT5P*/          else if(arfcn<=716)
+/*BRIGHT5P*/          {  *rfN = ( ((arfcn-653)<<5) | (153<<11) | (0x000019) ); }  /*  ARFCN :  653~ 716 */
+/*BRIGHT5P*/          else if(arfcn<=780)
+/*BRIGHT5P*/          {  *rfN = ( ((arfcn-717)<<5) | (154<<11) | (0x000019) ); }  /*  ARFCN :  717~ 780 */
+/*BRIGHT5P*/          else
+/*BRIGHT5P*/          {  *rfN = ( ((arfcn-781)<<5) | (155<<11) | (0x000019) ); }  /*  ARFCN :  781~ 810 */
+/*BRIGHT5P*/          break;
+/*BRIGHT5P*/       }
+/*BRIGHT5P*/       default :
+/*BRIGHT5P*/       {  break;
+/*BRIGHT5P*/       }
+/*BRIGHT5P*/    }
+/*BRIGHT5P*/    *ifN = 0;
+/*BRIGHT5P*/ }
+/*BRIGHT5P*/ /* =========================================================================== */
+#endif
+
+#if IS_RF_AERO
+/*AERO*/ void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*AERO*/ {
+/*AERO*/    switch(rf_band)
+/*AERO*/    {
+/*AERO*/       case  FrequencyBand900 :
+/*AERO*/       {
+/*AERO*/          if(arfcn<=124)
+/*AERO*/          {  *rfN = 0x092160 + (arfcn<<7);  }  /*  ARFCN :   1~  124 */
+/*AERO*/          else
+/*AERO*/          {  *rfN = 0x072160 + (arfcn<<7);  }  /*  ARFCN : 975~1023 */
+/*AERO*/          break;
+/*AERO*/       }
+/*AERO*/       case  FrequencyBand1800 :
+/*AERO*/       {
+/*AERO*/          *rfN = 0x50A0E0 + (arfcn<<7);        /*  ARFCN : 512~ 885 */
+/*AERO*/          break;
+/*AERO*/       }
+/*AERO*/       case  FrequencyBand1900 :
+/*AERO*/       {
+/*AERO*/          *rfN = 0x91D960 + (arfcn<<7);        /*  ARFCN : 512~ 810 */
+/*AERO*/          break;
+/*AERO*/       }
+/*AERO*/       default :
+/*AERO*/       {
+/*AERO*/          break;
+/*AERO*/       }
+/*AERO*/    }
+/*AERO*/    *ifN = 0;
+/*AERO*/ }
+/*AERO*/ /* =========================================================================== */
+/*AERO*/
+/*AERO*/ void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*AERO*/ {
+/*AERO*/    switch(rf_band)
+/*AERO*/    {
+/*AERO*/       case  FrequencyBand900 :
+/*AERO*/       {
+/*AERO*/         if(arfcn<=49)
+/*AERO*/         {
+/*AERO*/            if(arfcn<=24)                    /* ARFCN :   0~  24 */
+/*AERO*/            {  *rfN = 0x064B63 + (arfcn<<6);
+/*AERO*/               *ifN = 0X73E5A4;
+/*AERO*/            }
+/*AERO*/            else                             /* ARFCN :  25~  49 */
+/*AERO*/            {  *rfN = 0x064663 + (arfcn<<6);
+/*AERO*/               *ifN = 0X73DBA4;
+/*AERO*/            }
+/*AERO*/         }
+/*AERO*/         else
+/*AERO*/         {
+/*AERO*/            if(arfcn<=124)                   /* ARFCN :  50~ 124 */
+/*AERO*/            {  *rfN = 0x064B63 + (arfcn<<6);
+/*AERO*/               *ifN = 0X73E5A4;
+/*AERO*/            }
+/*AERO*/            else                             /* ARFCN : 975~1023 */
+/*AERO*/            {  *rfN = 0x054B63 + (arfcn<<6);
+/*AERO*/               *ifN = 0X73E5A4;
+/*AERO*/            }
+/*AERO*/         }
+/*AERO*/         break;
+/*AERO*/       }
+/*AERO*/       case  FrequencyBand1800 :
+/*AERO*/       {
+/*AERO*/          *rfN = 0x45FB23 + (arfcn<<6);  /*  ARFCN : 512~ 885 */
+/*AERO*/          *ifN = 0X63BDA4;
+/*AERO*/          break;
+/*AERO*/       }
+/*AERO*/       case  FrequencyBand1900 :
+/*AERO*/       {
+/*AERO*/          *rfN = 0x867323 + (arfcn<<6);   /*  ARFCN : 512~ 810 */
+/*AERO*/          *ifN = 0X742BA4;
+/*AERO*/          break;
+/*AERO*/       }
+/*AERO*/       default :
+/*AERO*/       {  break;
+/*AERO*/       }
+/*AERO*/    }
+/*AERO*/ }
+/*AERO*/ /* =========================================================================== */
+#endif
+
+#if IS_RF_AERO1PLUS
+/*AERO1+*/ void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*AERO1+*/ {
+/*AERO1+*/    switch(rf_band)
+/*AERO1+*/    {
+/*AERO1+*/       case  FrequencyBand900 :
+/*AERO1+*/       {
+/*AERO1+*/          if(arfcn<=124)
+/*AERO1+*/          {  *rfN = 0x092160 + (arfcn<<7);  }  /*  ARFCN :   1~  124 */
+/*AERO1+*/          else
+/*AERO1+*/          {  *rfN = 0x072160 + (arfcn<<7);  }  /*  ARFCN : 975~1023 */
+/*AERO1+*/          break;
+/*AERO1+*/       }
+/*AERO1+*/       case  FrequencyBand1800 :
+/*AERO1+*/       {
+/*AERO1+*/          *rfN = 0x50A0E0 + (arfcn<<7);        /*  ARFCN : 512~ 885 */
+/*AERO1+*/          break;
+/*AERO1+*/       }
+/*AERO1+*/       case  FrequencyBand1900 :
+/*AERO1+*/       {
+/*AERO1+*/          *rfN = 0x91D960 + (arfcn<<7);        /*  ARFCN : 512~ 810 */
+/*AERO1+*/          break;
+/*AERO1+*/       }
+/*AERO1+*/       default :
+/*AERO1+*/       {
+/*AERO1+*/          break;
+/*AERO1+*/       }
+/*AERO1+*/    }
+/*AERO1+*/    *ifN = 0;
+/*AERO1+*/ }
+/*AERO1+*/ /* =========================================================================== */
+/*AERO1+*/
+/*AERO1+*/ void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*AERO1+*/ {
+/*AERO1+*/    switch(rf_band)
+/*AERO1+*/    {
+/*AERO1+*/       case  FrequencyBand900 :
+/*AERO1+*/       {
+/*AERO1+*/         if(arfcn<=49)
+/*AERO1+*/         {
+/*AERO1+*/            if(arfcn<=24)                    /* ARFCN :   0~  24 */
+/*AERO1+*/            {  *rfN = 0x064B63 + (arfcn<<6);
+/*AERO1+*/               *ifN = 0X73E5A4;
+/*AERO1+*/            }
+/*AERO1+*/            else                             /* ARFCN :  25~  49 */
+/*AERO1+*/            {  *rfN = 0x064663 + (arfcn<<6);
+/*AERO1+*/               *ifN = 0X73DBA4;
+/*AERO1+*/            }
+/*AERO1+*/         }
+/*AERO1+*/         else
+/*AERO1+*/         {
+/*AERO1+*/            if(arfcn<=124)                   /* ARFCN :  50~ 124 */
+/*AERO1+*/            {  *rfN = 0x064B63 + (arfcn<<6);
+/*AERO1+*/               *ifN = 0X73E5A4;
+/*AERO1+*/            }
+/*AERO1+*/            else                             /* ARFCN : 975~1023 */
+/*AERO1+*/            {  *rfN = 0x054B63 + (arfcn<<6);
+/*AERO1+*/               *ifN = 0X73E5A4;
+/*AERO1+*/            }
+/*AERO1+*/         }
+/*AERO1+*/         break;
+/*AERO1+*/       }
+/*AERO1+*/       case  FrequencyBand1800 :
+/*AERO1+*/       {
+/*AERO1+*/          *rfN = 0x45FB23 + (arfcn<<6);  /*  ARFCN : 512~ 885 */
+/*AERO1+*/          *ifN = 0X63BDA4;
+/*AERO1+*/          break;
+/*AERO1+*/       }
+/*AERO1+*/       case  FrequencyBand1900 :
+/*AERO1+*/       {
+/*AERO1+*/          *rfN = 0x867323 + (arfcn<<6);   /*  ARFCN : 512~ 810 */
+/*AERO1+*/          *ifN = 0X742BA4;
+/*AERO1+*/          break;
+/*AERO1+*/       }
+/*AERO1+*/       default :
+/*AERO1+*/       {  break;
+/*AERO1+*/       }
+/*AERO1+*/    }
+/*AERO1+*/ }
+/*AERO1+*/ /* =========================================================================== */
+#endif
+
+#if IS_RF_POLARIS1
+/*RFMD*/ void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*RFMD*/ {
+/*RFMD*/    int OFFS;
+/*RFMD*/    switch(rf_band)
+/*RFMD*/    {
+/*RFMD*/       case  FrequencyBand900 :
+/*RFMD*/       {
+/*RFMD*/          if(arfcn<=124)                      /*  ARFCN :   0~ 124 */
+/*RFMD*/          {
+/*RFMD*/             OFFS = 80*arfcn + 41160;
+/*RFMD*/             *rfN = 0x0C0000L | (OFFS);
+/*RFMD*/          }
+/*RFMD*/          else                                /*  ARFCN : 975~1023 */
+/*RFMD*/          {
+/*RFMD*/             OFFS = 80*arfcn - 40760;
+/*RFMD*/             *rfN = 0x0C0000L + (OFFS);
+/*RFMD*/          }
+/*RFMD*/          break;
+/*RFMD*/       }
+/*RFMD*/       case  FrequencyBand1800 :              /*  ARFCN : 512~ 885 */
+/*RFMD*/       {
+/*RFMD*/          OFFS = 40*arfcn + 7740;
+/*RFMD*/          *rfN = 0x0C0000L + (OFFS);
+/*RFMD*/          break;
+/*RFMD*/       }
+/*RFMD*/       case  FrequencyBand1900 :              /*  ARFCN : 512~ 810 */
+/*RFMD*/       {
+/*RFMD*/          OFFS = 40*arfcn + 32740;
+/*RFMD*/          *rfN = 0x0C0000L + (OFFS);
+/*RFMD*/          break;
+/*RFMD*/       }
+/*RFMD*/       default :
+/*RFMD*/       {
+/*RFMD*/          break;
+/*RFMD*/       }
+/*RFMD*/    }
+/*RFMD*/    *ifN = 0;
+/*RFMD*/ }
+/*RFMD*/ /* =========================================================================== */
+/*RFMD*/
+/*RFMD*/ void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*RFMD*/ {
+/*RFMD*/    int OFFS;
+/*RFMD*/    switch(rf_band)
+/*RFMD*/    {
+/*RFMD*/       case  FrequencyBand900 :
+/*RFMD*/       {
+/*RFMD*/          if(arfcn<=124)                    /*  ARFCN :   0~ 124 */
+/*RFMD*/          {
+/*RFMD*/             OFFS = 40*arfcn + 178000;
+/*RFMD*/             *rfN = 0x0C0000L | (OFFS);
+/*RFMD*/          }
+/*RFMD*/          else                              /*  ARFCN : 975~1023 */
+/*RFMD*/          {  OFFS = 40*arfcn + 137040;
+/*RFMD*/             *rfN = 0x0C0000L + (OFFS);
+/*RFMD*/          }
+/*RFMD*/          break;
+/*RFMD*/       }
+/*RFMD*/       case  FrequencyBand1800 :            /*  ARFCN : 512~ 885 */
+/*RFMD*/       {
+/*RFMD*/          OFFS = 40*arfcn - 11240;
+/*RFMD*/          *rfN = 0x0C0000L + (OFFS);
+/*RFMD*/          break;
+/*RFMD*/
+/*RFMD*/       }
+/*RFMD*/       case  FrequencyBand1900 :            /*  ARFCN : 512~ 810 */
+/*RFMD*/       {
+/*RFMD*/          OFFS = 40*arfcn + 16760;
+/*RFMD*/          *rfN = 0x0C0000L + (OFFS);
+/*RFMD*/          break;
+/*RFMD*/       }
+/*RFMD*/       default :
+/*RFMD*/       {  break;
+/*RFMD*/       }
+/*RFMD*/    }
+/*RFMD*/      *ifN = 0;
+/*RFMD*/ }
+/*RFMD*/ /* =========================================================================== */
+#endif
+
+#if IS_RF_SKY74117
+/*SKY74117*/ typedef struct
+/*SKY74117*/ {  short  arfcn;
+/*SKY74117*/    short  Nint;
+/*SKY74117*/    int    Fbase;
+/*SKY74117*/    int    Fstep;
+/*SKY74117*/    short  Inj_Div;
+/*SKY74117*/ }  SKY74117_PLL_ELM;
+/*SKY74117*/
+/*SKY74117*/ const SKY74117_PLL_ELM  SKY74117_RX_850[] =
+/*SKY74117*/ {
+/*SKY74117*/    { 128 , 96 , 3323179, 3097332 },
+/*SKY74117*/    { 137 , 97 ,       0, 3097332 },
+/*SKY74117*/    { 181 , 98 ,   64527, 3097332 },
+/*SKY74117*/    { 224 , 99 ,   32263, 3097332 },
+/*SKY74117*/ };
+/*SKY74117*/ const SKY74117_PLL_ELM  SKY74117_RX_900[] =
+/*SKY74117*/ {
+/*SKY74117*/    { 0   , 104, 1613193, 3097332 },
+/*SKY74117*/    { 27  , 105, 32263  , 3097332 },
+/*SKY74117*/    { 70  , 106, 0      , 3097332 },
+/*SKY74117*/    { 114 , 107, 64527  , 3097332 },
+/*SKY74117*/    { 975 , 103, 1064707, 3097332 },
+/*SKY74117*/    { 1008, 104, 64527  , 3097332 },
+/*SKY74117*/ };
+/*SKY74117*/ const SKY74117_PLL_ELM  SKY74117_RX_1800[] =
+/*SKY74117*/ {
+/*SKY74117*/    { 512 , 100, 2710165, 1548666 },
+/*SKY74117*/    { 543 , 101, 16131  , 1548666 },
+/*SKY74117*/    { 630 , 102, 32263  , 1548666 },
+/*SKY74117*/    { 716 , 103, 0      , 1548666 },
+/*SKY74117*/    { 803 , 104, 16131  , 1548666 },
+/*SKY74117*/ };
+/*SKY74117*/ const SKY74117_PLL_ELM  SKY74117_RX_1900[] =
+/*SKY74117*/ {
+/*SKY74117*/    { 512 , 107, 3597422, 1548666 },
+/*SKY74117*/    { 525 , 108, 32263  , 1548666 },
+/*SKY74117*/    { 611 , 109, 0      , 1548666 },
+/*SKY74117*/    { 698 , 110, 16131  , 1548666 },
+/*SKY74117*/    { 785 , 111, 32263  , 1548666 },
+/*SKY74117*/ };
+/*SKY74117*/ const SKY74117_PLL_ELM *const  SKY74117_RXPLL_TBL[] =
+/*SKY74117*/ {
+/*SKY74117*/    0,                                 /* FrequencyBand400 (not support)  */
+/*SKY74117*/    SKY74117_RX_850,                  /* FrequencyBand850                */
+/*SKY74117*/    SKY74117_RX_900,                  /* FrequencyBand900                */
+/*SKY74117*/    SKY74117_RX_1800,                 /* FrequencyBand1800               */
+/*SKY74117*/    SKY74117_RX_1900,                 /* FrequencyBand1900               */
+/*SKY74117*/ };
+/*SKY74117*/
+/*SKY74117*/ short SKY74117_RXPLL_TBL_SIZE[5] =
+/*SKY74117*/ {
+/*SKY74117*/    0,                                                     /* FrequencyBand400 (not support)  */
+/*SKY74117*/    sizeof(SKY74117_RX_850)/sizeof(SKY74117_PLL_ELM)-1,    /* FrequencyBand850                */
+/*SKY74117*/    sizeof(SKY74117_RX_900)/sizeof(SKY74117_PLL_ELM)-1,    /* FrequencyBand900                */
+/*SKY74117*/    sizeof(SKY74117_RX_1800)/sizeof(SKY74117_PLL_ELM)-1,   /* FrequencyBand1800               */
+/*SKY74117*/    sizeof(SKY74117_RX_1900)/sizeof(SKY74117_PLL_ELM)-1,   /* FrequencyBand1900               */
+/*SKY74117*/ };
+/*SKY74117*/
+/*SKY74117*/ const SKY74117_PLL_ELM  SKY74117_TX_850[] =
+/*SKY74117*/ {
+/*SKY74117*/    { 128 , 83 , 1881444,  2831846, 1  },
+/*SKY74117*/    { 145 , 101, 3652493,  3417745, 3  },
+/*SKY74117*/    { 149 , 83 , 3739844,  2831846, 1  },
+/*SKY74117*/    { 152 , 102, 205821 ,  3417745, 3  },
+/*SKY74117*/    { 157 , 84 , 253501 ,  2831846, 1  },
+/*SKY74117*/    { 177 , 102, 2875935,  3417745, 3  },
+/*SKY74117*/    { 190 , 103, 70090  ,  3417745, 3  },
+/*SKY74117*/    { 198 , 84 , 3881805,  2831846, 1  },
+/*SKY74117*/    { 200 , 103, 1138136,  3417745, 3  },
+/*SKY74117*/    { 209 , 85 , 660948 ,  2831846, 1  },
+/*SKY74117*/    { 211 , 103, 2312986,  3417745, 3  },
+/*SKY74117*/    { 218 , 85 , 1457405,  2831846, 1  },
+/*SKY74117*/    { 221 , 103, 3381031,  3417745, 3  },
+/*SKY74117*/    { 227 , 85 , 2253862,  2831846, 1  },
+/*SKY74117*/    { 249 , 104, 2177255,  0      , 3  },
+/*SKY74117*/    { 250 , 86 , 94947  ,  2831846, 1  },
+/*SKY74117*/ };
+/*SKY74117*/ const SKY74117_PLL_ELM  SKY74117_TX_900[] =
+/*SKY74117*/ {
+/*SKY74117*/    { 0   , 109, 3421083, 3417745 , 3  },
+/*SKY74117*/    { 6   , 90 , 2167210, 2831846 , 1  },
+/*SKY74117*/    { 19  , 110, 1256066, 3417745 , 3  },
+/*SKY74117*/    { 25  , 90 , 3848619, 2831846 , 1  },
+/*SKY74117*/    { 29  , 110, 2324111, 3417745 , 3  },
+/*SKY74117*/    { 46  , 91 , 1512714, 2831846 , 1  },
+/*SKY74117*/    { 48  , 111, 159094 , 3417745 , 3  },
+/*SKY74117*/    { 64  , 91 , 3105628, 2831846 , 1  },
+/*SKY74117*/    { 75  , 111, 3042817, 3417745 , 3  },
+/*SKY74117*/    { 78  , 92 , 150257 , 2831846 , 1  },
+/*SKY74117*/    { 87  , 112, 130168 , 3417745 , 3  },
+/*SKY74117*/    { 104 , 92 , 2451132, 0       , 1  },
+/*SKY74117*/    { 105 , 112, 2052650, 3417745 , 3  },
+/*SKY74117*/    { 107 , 92 , 2716618, 2831846 , 1  },
+/*SKY74117*/    { 124 , 93 , 26732  , 75367399, 1  },
+/*SKY74117*/    { 975 , 108, 2381964, 3417745 , 3  },
+/*SKY74117*/    { 991 , 89 , 2910201, 2831846 , 1  },
+/*SKY74117*/    { 993 , 109, 110142 , 3417745 , 3  },
+/*SKY74117*/    { 1010, 90 , 397306 , 52330164, 1  },
+/*SKY74117*/    { 1011, 109, 2032624, 3417745 , 3  },
+/*SKY74117*/    { 1013, 90 , 662792 , 2831846 , 1  },
+/*SKY74117*/    { 1015, 109, 2459842, 3417745 , 3  },
+/*SKY74117*/    { 1019, 90 , 1193763, 57603258, 1  },
+/*SKY74117*/    { 1020, 109, 2993865, 3417745 , 3  },
+/*SKY74117*/ };
+/*SKY74117*/ const SKY74117_PLL_ELM  SKY74117_TX_1800[] =
+/*SKY74117*/ {
+/*SKY74117*/    { 512, 90 , 3135374, 1479322  , 1  },
+/*SKY74117*/    { 516, 100, 277680 , 1624829  , 3  },
+/*SKY74117*/    { 546, 91 , 512851 , 1479322  , 1  },
+/*SKY74117*/    { 559, 100, 2461046, 1624829  , 3  },
+/*SKY74117*/    { 567, 91 , 1483656, 1479322  , 1  },
+/*SKY74117*/    { 576, 100, 3324237, 1624829  , 3  },
+/*SKY74117*/    { 591, 91 , 2593148, 1479322  , 1  },
+/*SKY74117*/    { 597, 101, 196227 , 1624829  , 3  },
+/*SKY74117*/    { 630, 92 , 201769 , 1479322  , 1  },
+/*SKY74117*/    { 641, 101, 2430369, 1624829  , 3  },
+/*SKY74117*/    { 674, 88 , 1750545, 1415923  , 0  },
+/*SKY74117*/    { 677, 102, 63998  , 1624829  , 3  },
+/*SKY74117*/    { 681, 92 , 2559440, 1479322  , 1  },
+/*SKY74117*/    { 691, 102, 774861 , 1624829  , 3  },
+/*SKY74117*/    { 696, 88 , 2723993, 1415923  , 0  },
+/*SKY74117*/    { 706, 102, 1536501, 1624829  , 3  },
+/*SKY74117*/    { 712, 92 , 3992534, 1479322  , 1  },
+/*SKY74117*/    { 714, 88 , 3520449, 1415923  , 0  },
+/*SKY74117*/    { 719, 93 , 121832 , 1479322  , 1  },
+/*SKY74117*/    { 723, 102, 2399691, 1624829  , 3  },
+/*SKY74117*/    { 756, 89 , 1184545, 1415923  , 0  },
+/*SKY74117*/    { 762, 103, 185649 , 1624829  , 3  },
+/*SKY74117*/    { 788, 93 , 3311622, 1479322  , 1  },
+/*SKY74117*/    { 806, 89 , 3396925, 1415923  , 0  },
+/*SKY74117*/    { 812, 94 , 226810 , 1479322  , 1  },
+/*SKY74117*/    { 821, 103, 3181429, 1624829  , 3  },
+/*SKY74117*/    { 824, 94 , 781556 , 1479322  , 1  },
+/*SKY74117*/    { 826, 103, 3435309, 1624829  , 3  },
+/*SKY74117*/    { 839, 94 , 1474988, 1479322  , 1  },
+/*SKY74117*/    { 844, 104, 154972 , 1624829  , 3  },
+/*SKY74117*/    { 876, 94 , 3185455, 1479322  , 1  },
+/*SKY74117*/ };
+/*SKY74117*/ const SKY74117_PLL_ELM  SKY74117_TX_1900[] =
+/*SKY74117*/ {
+/*SKY74117*/    { 512 , 94 , 389931 , 0       , 0  },
+/*SKY74117*/    { 513 , 94 , 434179 , 1415923 , 0  },
+/*SKY74117*/    { 518 , 108, 2367956, 1624829 , 3  },
+/*SKY74117*/    { 522 , 98 , 2403418, 1479322 , 1  },
+/*SKY74117*/    { 558 , 109, 204690 , 1624829 , 3  },
+/*SKY74117*/    { 581 , 99 , 936615 , 1479322 , 1  },
+/*SKY74117*/    { 601 , 109, 2388055, 1624829 , 3  },
+/*SKY74117*/    { 614 , 99 , 2462167, 1479322 , 1  },
+/*SKY74117*/    { 645 , 110, 427893 , 1624829 , 3  },
+/*SKY74117*/    { 652 , 95 , 2390292, 1415923 , 0  },
+/*SKY74117*/    { 671 , 100, 902907 , 1479322 , 1  },
+/*SKY74117*/    { 683 , 110, 2357378, 1624829 , 3  },
+/*SKY74117*/    { 701 , 100, 2289772, 1479322 , 1  },
+/*SKY74117*/    { 719 , 96 , 1160577, 1415923 , 0  },
+/*SKY74117*/    { 728 , 100, 3537950, 1479322 , 1  },
+/*SKY74117*/    { 740 , 111, 1057303, 1624829 , 3  },
+/*SKY74117*/    { 746 , 101, 175765 , 1479322 , 1  },
+/*SKY74117*/    { 781 , 111, 3139116, 1624829 , 3  },
+/*SKY74117*/    { 796 , 101, 2487207, 1479322 , 1  },
+/*SKY74117*/ };
+/*SKY74117*/
+/*SKY74117*/ const SKY74117_PLL_ELM *const  SKY74117_TXPLL_TBL[] =
+/*SKY74117*/ {
+/*SKY74117*/    0,                                /* FrequencyBand400 (not support)  */
+/*SKY74117*/    SKY74117_TX_850,                  /* FrequencyBand850                */
+/*SKY74117*/    SKY74117_TX_900,                  /* FrequencyBand900                */
+/*SKY74117*/    SKY74117_TX_1800,                 /* FrequencyBand1800               */
+/*SKY74117*/    SKY74117_TX_1900,                 /* FrequencyBand1900               */
+/*SKY74117*/ };
+/*SKY74117*/
+/*SKY74117*/ short  SKY74117_TXPLL_TBL_SIZE[5] =
+/*SKY74117*/ {
+/*SKY74117*/    0,                                                     /* FrequencyBand400 (not support)  */
+/*SKY74117*/    sizeof(SKY74117_TX_850)/sizeof(SKY74117_PLL_ELM)-1,    /* FrequencyBand850                */
+/*SKY74117*/    sizeof(SKY74117_TX_900)/sizeof(SKY74117_PLL_ELM)-1,    /* FrequencyBand900                */
+/*SKY74117*/    sizeof(SKY74117_TX_1800)/sizeof(SKY74117_PLL_ELM)-1,   /* FrequencyBand1800               */
+/*SKY74117*/    sizeof(SKY74117_TX_1900)/sizeof(SKY74117_PLL_ELM)-1,   /* FrequencyBand1900               */
+/*SKY74117*/ };
+/*SKY74117*/
+/*SKY74117*/ short  SKY74117_TXPLL_INJECTIN_TBL[5] =
+/*SKY74117*/ {
+/*SKY74117*/    0,       /* FrequencyBand400 (not support)  */
+/*SKY74117*/    90,      /* FrequencyBand850 (not support)  */
+/*SKY74117*/    95,      /* FrequencyBand900 (not support)  */
+/*SKY74117*/    98,      /* FrequencyBand1800 (not support)  */
+/*SKY74117*/    105,     /* FrequencyBand1900 (not support)  */
+/*SKY74117*/ };
+/*SKY74117*/
+/*SKY74117*/ const unsigned long SDATA_TX_TABLE[5] =
+/*SKY74117*/ {
+/*SKY74117*/           0L ,  /* FrequencyBand400 (not support)  */
+/*SKY74117*/    0x040004L ,  /* FrequencyBand850                */
+/*SKY74117*/    0x050004L ,  /* FrequencyBand900                */
+/*SKY74117*/    0x060004L ,  /* FrequencyBand1800               */
+/*SKY74117*/    0x070004L ,  /* FrequencyBand1900               */
+/*SKY74117*/ };
+/*SKY74117*/ const unsigned long SDATA_TX_Div_TABLE[2] = { 0x100000, 0x200000 };  // 0: /8  1: /16
+/*SKY74117*/ const unsigned long SDATA_TX_Inj_TABLE[2] = { 0x000000, 0x080000 };  // 0: Low 1: High
+/*SKY74117*/ unsigned long  SKY74117_TxCtrl = 0;
+/*SKY74117*/ unsigned long  SKY74117_TxCtrl_Mask = 0;
+/*SKY74117*/
+/*SKY74117*/ void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*SKY74117*/ {  int   Nfrac;
+/*SKY74117*/    const SKY74117_PLL_ELM*  elmptr;
+/*SKY74117*/    int left, right, middle;
+/*SKY74117*/
+/*SKY74117*/   /*binary search*/
+/*SKY74117*/   elmptr = SKY74117_RXPLL_TBL[rf_band];
+/*SKY74117*/   left = 0; right = SKY74117_RXPLL_TBL_SIZE[rf_band];
+/*SKY74117*/   while (left <= right)
+/*SKY74117*/   {  middle = (left + right)/2;
+/*SKY74117*/      if ( arfcn<(elmptr+middle)->arfcn )
+/*SKY74117*/         right = middle - 1;
+/*SKY74117*/      else
+/*SKY74117*/         left = middle + 1;
+/*SKY74117*/   }
+/*SKY74117*/   elmptr = (elmptr+left-1);
+/*SKY74117*/
+/*SKY74117*/   Nfrac = elmptr->Fbase + (((arfcn-elmptr->arfcn)*elmptr->Fstep)>>5);
+/*SKY74117*/   *rfN = (elmptr->Nint<<6) | 0xC40000;
+/*SKY74117*/   *ifN = (Nfrac<<2) | 3;
+/*SKY74117*/ //  *rfN = elmptr->Nint;
+/*SKY74117*/ //  *ifN = Nfrac;
+/*SKY74117*/ }
+/*SKY74117*/ /* =========================================================================== */
+/*SKY74117*/
+/*SKY74117*/ void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*SKY74117*/ {  int   Nfrac;
+/*SKY74117*/    const SKY74117_PLL_ELM*  elmptr;
+/*SKY74117*/    int left, right, middle;
+/*SKY74117*/    int div;
+/*SKY74117*/
+/*SKY74117*/   /*binary search*/
+/*SKY74117*/   elmptr = SKY74117_TXPLL_TBL[rf_band];
+/*SKY74117*/   left = 0; right = SKY74117_TXPLL_TBL_SIZE[rf_band];
+/*SKY74117*/   while (left <= right)
+/*SKY74117*/   {  middle = (left + right)/2;
+/*SKY74117*/      if ( arfcn<(elmptr+middle)->arfcn )
+/*SKY74117*/         right = middle - 1;
+/*SKY74117*/      else
+/*SKY74117*/         left = middle + 1;
+/*SKY74117*/   }
+/*SKY74117*/   elmptr = (elmptr+left-1);
+/*SKY74117*/   Nfrac = elmptr->Fbase + (((arfcn-elmptr->arfcn)*elmptr->Fstep)>>5);
+/*SKY74117*/   *rfN = (elmptr->Nint<<6) | 0xC40000;
+/*SKY74117*/   *ifN = (Nfrac<<2) | 3;
+/*SKY74117*/ //  *rfN = elmptr->Nint;
+/*SKY74117*/ //  *ifN = Nfrac;
+/*SKY74117*/
+/*SKY74117*/   l1d_rf.next_inj = (elmptr->Inj_Div>>1)&0x01;
+/*SKY74117*/   div = (elmptr->Inj_Div>>0)&0x01;
+/*SKY74117*/   SKY74117_TxCtrl_Mask = SDATA_TX_Div_TABLE[div] | SDATA_TX_Inj_TABLE[l1d_rf.next_inj];
+/*SKY74117*/   SKY74117_TxCtrl = SDATA_TX_TABLE[rf_band] | SDATA_TX_Div_TABLE[div] | SDATA_TX_Inj_TABLE[l1d_rf.next_inj];
+/*SKY74117*/ }
+/*SKY74117*/ /* =========================================================================== */
+#endif
+
+#if IS_RF_SKY74400
+/*SKY74400*/ typedef struct
+/*SKY74400*/ {  short  arfcn;
+/*SKY74400*/    short  Nint;
+/*SKY74400*/    int    Fbase;
+/*SKY74400*/    int    Fstep;
+/*SKY74400*/    short  Inj_Div;
+/*SKY74400*/ }  SKY74400_PLL_ELM;
+/*SKY74400*/
+/*SKY74400*/ const SKY74400_PLL_ELM  SKY74400_RX_850[] =
+/*SKY74400*/ {
+/*SKY74400*/    { 128 , 96 , 3323179, 3097332 },
+/*SKY74400*/    { 137 , 97 ,       0, 3097332 },
+/*SKY74400*/    { 181 , 98 ,   64527, 3097332 },
+/*SKY74400*/    { 224 , 99 ,   32263, 3097332 },
+/*SKY74400*/ };
+/*SKY74400*/ const SKY74400_PLL_ELM  SKY74400_RX_900[] =
+/*SKY74400*/ {
+/*SKY74400*/    { 0   , 104, 1613193, 3097332 },
+/*SKY74400*/    { 27  , 105, 32263  , 3097332 },
+/*SKY74400*/    { 70  , 106, 0      , 3097332 },
+/*SKY74400*/    { 114 , 107, 64527  , 3097332 },
+/*SKY74400*/    { 975 , 103, 1064707, 3097332 },
+/*SKY74400*/    { 1008, 104, 64527  , 3097332 },
+/*SKY74400*/ };
+/*SKY74400*/ const SKY74400_PLL_ELM  SKY74400_RX_1800[] =
+/*SKY74400*/ {
+/*SKY74400*/    { 512 , 100, 2710165, 1548666 },
+/*SKY74400*/    { 543 , 101, 16131  , 1548666 },
+/*SKY74400*/    { 630 , 102, 32263  , 1548666 },
+/*SKY74400*/    { 716 , 103, 0      , 1548666 },
+/*SKY74400*/    { 803 , 104, 16131  , 1548666 },
+/*SKY74400*/ };
+/*SKY74400*/ const SKY74400_PLL_ELM  SKY74400_RX_1900[] =
+/*SKY74400*/ {
+/*SKY74400*/    { 512 , 107, 3597422, 1548666 },
+/*SKY74400*/    { 525 , 108, 32263  , 1548666 },
+/*SKY74400*/    { 611 , 109, 0      , 1548666 },
+/*SKY74400*/    { 698 , 110, 16131  , 1548666 },
+/*SKY74400*/    { 785 , 111, 32263  , 1548666 },
+/*SKY74400*/ };
+/*SKY74400*/ const SKY74400_PLL_ELM *const  SKY74400_RXPLL_TBL[] =
+/*SKY74400*/ {
+/*SKY74400*/    0,                                 /* FrequencyBand400 (not support)  */
+/*SKY74400*/    SKY74400_RX_850,                  /* FrequencyBand850                */
+/*SKY74400*/    SKY74400_RX_900,                  /* FrequencyBand900                */
+/*SKY74400*/    SKY74400_RX_1800,                 /* FrequencyBand1800               */
+/*SKY74400*/    SKY74400_RX_1900,                 /* FrequencyBand1900               */
+/*SKY74400*/ };
+/*SKY74400*/
+/*SKY74400*/ short SKY74400_RXPLL_TBL_SIZE[5] =
+/*SKY74400*/ {
+/*SKY74400*/    0,                                                     /* FrequencyBand400 (not support)  */
+/*SKY74400*/    sizeof(SKY74400_RX_850)/sizeof(SKY74400_PLL_ELM)-1,    /* FrequencyBand850                */
+/*SKY74400*/    sizeof(SKY74400_RX_900)/sizeof(SKY74400_PLL_ELM)-1,    /* FrequencyBand900                */
+/*SKY74400*/    sizeof(SKY74400_RX_1800)/sizeof(SKY74400_PLL_ELM)-1,   /* FrequencyBand1800               */
+/*SKY74400*/    sizeof(SKY74400_RX_1900)/sizeof(SKY74400_PLL_ELM)-1,   /* FrequencyBand1900               */
+/*SKY74400*/ };
+/*SKY74400*/
+/*SKY74400*/ const SKY74400_PLL_ELM  SKY74400_TX_850[] =
+/*SKY74400*/ {
+/*SKY74400*/    { 128 , 83 , 1881444,  2831846, 1  },
+/*SKY74400*/    { 145 , 101, 3652493,  3417745, 3  },
+/*SKY74400*/    { 149 , 83 , 3739844,  2831846, 1  },
+/*SKY74400*/    { 152 , 102, 205821 ,  3417745, 3  },
+/*SKY74400*/    { 157 , 84 , 253501 ,  2831846, 1  },
+/*SKY74400*/    { 177 , 102, 2875935,  3417745, 3  },
+/*SKY74400*/    { 190 , 103, 70090  ,  3417745, 3  },
+/*SKY74400*/    { 198 , 84 , 3881805,  2831846, 1  },
+/*SKY74400*/    { 200 , 103, 1138136,  3417745, 3  },
+/*SKY74400*/    { 209 , 85 , 660948 ,  2831846, 1  },
+/*SKY74400*/    { 211 , 103, 2312986,  3417745, 3  },
+/*SKY74400*/    { 218 , 85 , 1457405,  2831846, 1  },
+/*SKY74400*/    { 221 , 103, 3381031,  3417745, 3  },
+/*SKY74400*/    { 227 , 85 , 2253862,  2831846, 1  },
+/*SKY74400*/    { 249 , 104, 2177255,  0      , 3  },
+/*SKY74400*/    { 250 , 86 , 94947  ,  2831846, 1  },
+/*SKY74400*/ };
+/*SKY74400*/ const SKY74400_PLL_ELM  SKY74400_TX_900[] =
+/*SKY74400*/ {
+/*SKY74400*/    { 0   , 109, 3421083, 3417745 , 3  },
+/*SKY74400*/    { 6   , 90 , 2167210, 2831846 , 1  },
+/*SKY74400*/    { 19  , 110, 1256066, 3417745 , 3  },
+/*SKY74400*/    { 25  , 90 , 3848619, 2831846 , 1  },
+/*SKY74400*/    { 29  , 110, 2324111, 3417745 , 3  },
+/*SKY74400*/    { 46  , 91 , 1512714, 2831846 , 1  },
+/*SKY74400*/    { 48  , 111, 159094 , 3417745 , 3  },
+/*SKY74400*/    { 64  , 91 , 3105628, 2831846 , 1  },
+/*SKY74400*/    { 75  , 111, 3042817, 3417745 , 3  },
+/*SKY74400*/    { 78  , 92 , 150257 , 2831846 , 1  },
+/*SKY74400*/    { 87  , 112, 130168 , 3417745 , 3  },
+/*SKY74400*/    { 104 , 92 , 2451132, 0       , 1  },
+/*SKY74400*/    { 105 , 112, 2052650, 3417745 , 3  },
+/*SKY74400*/    { 107 , 92 , 2716618, 2831846 , 1  },
+/*SKY74400*/    { 124 , 93 , 26732  , 75367399, 1  },
+/*SKY74400*/    { 975 , 108, 2381964, 3417745 , 3  },
+/*SKY74400*/    { 991 , 89 , 2910201, 2831846 , 1  },
+/*SKY74400*/    { 993 , 109, 110142 , 3417745 , 3  },
+/*SKY74400*/    { 1010, 90 , 397306 , 52330164, 1  },
+/*SKY74400*/    { 1011, 109, 2032624, 3417745 , 3  },
+/*SKY74400*/    { 1013, 90 , 662792 , 2831846 , 1  },
+/*SKY74400*/    { 1015, 109, 2459842, 3417745 , 3  },
+/*SKY74400*/    { 1019, 90 , 1193763, 57603258, 1  },
+/*SKY74400*/    { 1020, 109, 2993865, 3417745 , 3  },
+/*SKY74400*/ };
+/*SKY74400*/ const SKY74400_PLL_ELM  SKY74400_TX_1800[] =
+/*SKY74400*/ {
+/*SKY74400*/    { 512, 90 , 3135374, 1479322  , 1  },
+/*SKY74400*/    { 516, 100, 277680 , 1624829  , 3  },
+/*SKY74400*/    { 546, 91 , 512851 , 1479322  , 1  },
+/*SKY74400*/    { 559, 100, 2461046, 1624829  , 3  },
+/*SKY74400*/    { 567, 91 , 1483656, 1479322  , 1  },
+/*SKY74400*/    { 576, 100, 3324237, 1624829  , 3  },
+/*SKY74400*/    { 591, 91 , 2593148, 1479322  , 1  },
+/*SKY74400*/    { 597, 101, 196227 , 1624829  , 3  },
+/*SKY74400*/    { 630, 92 , 201769 , 1479322  , 1  },
+/*SKY74400*/    { 641, 101, 2430369, 1624829  , 3  },
+/*SKY74400*/    { 674, 88 , 1750545, 1415923  , 0  },
+/*SKY74400*/    { 677, 102, 63998  , 1624829  , 3  },
+/*SKY74400*/    { 681, 92 , 2559440, 1479322  , 1  },
+/*SKY74400*/    { 691, 102, 774861 , 1624829  , 3  },
+/*SKY74400*/    { 696, 88 , 2723993, 1415923  , 0  },
+/*SKY74400*/    { 706, 102, 1536501, 1624829  , 3  },
+/*SKY74400*/    { 712, 92 , 3992534, 1479322  , 1  },
+/*SKY74400*/    { 714, 88 , 3520449, 1415923  , 0  },
+/*SKY74400*/    { 719, 93 , 121832 , 1479322  , 1  },
+/*SKY74400*/    { 723, 102, 2399691, 1624829  , 3  },
+/*SKY74400*/    { 756, 89 , 1184545, 1415923  , 0  },
+/*SKY74400*/    { 762, 103, 185649 , 1624829  , 3  },
+/*SKY74400*/    { 788, 93 , 3311622, 1479322  , 1  },
+/*SKY74400*/    { 806, 89 , 3396925, 1415923  , 0  },
+/*SKY74400*/    { 812, 94 , 226810 , 1479322  , 1  },
+/*SKY74400*/    { 821, 103, 3181429, 1624829  , 3  },
+/*SKY74400*/    { 824, 94 , 781556 , 1479322  , 1  },
+/*SKY74400*/    { 826, 103, 3435309, 1624829  , 3  },
+/*SKY74400*/    { 839, 94 , 1474988, 1479322  , 1  },
+/*SKY74400*/    { 844, 104, 154972 , 1624829  , 3  },
+/*SKY74400*/    { 876, 94 , 3185455, 1479322  , 1  },
+/*SKY74400*/ };
+/*SKY74400*/ const SKY74400_PLL_ELM  SKY74400_TX_1900[] =
+/*SKY74400*/ {
+/*SKY74400*/    { 512 , 94 , 389931 , 0       , 0  },
+/*SKY74400*/    { 513 , 94 , 434179 , 1415923 , 0  },
+/*SKY74400*/    { 518 , 108, 2367956, 1624829 , 3  },
+/*SKY74400*/    { 522 , 98 , 2403418, 1479322 , 1  },
+/*SKY74400*/    { 558 , 109, 204690 , 1624829 , 3  },
+/*SKY74400*/    { 581 , 99 , 936615 , 1479322 , 1  },
+/*SKY74400*/    { 601 , 109, 2388055, 1624829 , 3  },
+/*SKY74400*/    { 614 , 99 , 2462167, 1479322 , 1  },
+/*SKY74400*/    { 645 , 110, 427893 , 1624829 , 3  },
+/*SKY74400*/    { 652 , 95 , 2390292, 1415923 , 0  },
+/*SKY74400*/    { 671 , 100, 902907 , 1479322 , 1  },
+/*SKY74400*/    { 683 , 110, 2357378, 1624829 , 3  },
+/*SKY74400*/    { 701 , 100, 2289772, 1479322 , 1  },
+/*SKY74400*/    { 719 , 96 , 1160577, 1415923 , 0  },
+/*SKY74400*/    { 728 , 100, 3537950, 1479322 , 1  },
+/*SKY74400*/    { 740 , 111, 1057303, 1624829 , 3  },
+/*SKY74400*/    { 746 , 101, 175765 , 1479322 , 1  },
+/*SKY74400*/    { 781 , 111, 3139116, 1624829 , 3  },
+/*SKY74400*/    { 796 , 101, 2487207, 1479322 , 1  },
+/*SKY74400*/ };
+/*SKY74400*/
+/*SKY74400*/ const SKY74400_PLL_ELM *const  SKY74400_TXPLL_TBL[] =
+/*SKY74400*/ {
+/*SKY74400*/    0,                                /* FrequencyBand400 (not support)  */
+/*SKY74400*/    SKY74400_TX_850,                  /* FrequencyBand850                */
+/*SKY74400*/    SKY74400_TX_900,                  /* FrequencyBand900                */
+/*SKY74400*/    SKY74400_TX_1800,                 /* FrequencyBand1800               */
+/*SKY74400*/    SKY74400_TX_1900,                 /* FrequencyBand1900               */
+/*SKY74400*/ };
+/*SKY74400*/
+/*SKY74400*/ short  SKY74400_TXPLL_TBL_SIZE[5] =
+/*SKY74400*/ {
+/*SKY74400*/    0,                                                     /* FrequencyBand400 (not support)  */
+/*SKY74400*/    sizeof(SKY74400_TX_850)/sizeof(SKY74400_PLL_ELM)-1,    /* FrequencyBand850                */
+/*SKY74400*/    sizeof(SKY74400_TX_900)/sizeof(SKY74400_PLL_ELM)-1,    /* FrequencyBand900                */
+/*SKY74400*/    sizeof(SKY74400_TX_1800)/sizeof(SKY74400_PLL_ELM)-1,   /* FrequencyBand1800               */
+/*SKY74400*/    sizeof(SKY74400_TX_1900)/sizeof(SKY74400_PLL_ELM)-1,   /* FrequencyBand1900               */
+/*SKY74400*/ };
+/*SKY74400*/
+/*SKY74400*/ short  SKY74400_TXPLL_INJECTIN_TBL[5] =
+/*SKY74400*/ {
+/*SKY74400*/    0,       /* FrequencyBand400 (not support)  */
+/*SKY74400*/    90,      /* FrequencyBand850 (not support)  */
+/*SKY74400*/    95,      /* FrequencyBand900 (not support)  */
+/*SKY74400*/    98,      /* FrequencyBand1800 (not support)  */
+/*SKY74400*/    105,     /* FrequencyBand1900 (not support)  */
+/*SKY74400*/ };
+/*SKY74400*/
+/*SKY74400*/ const unsigned long SDATA_TX_TABLE[5] =
+/*SKY74400*/ {
+/*SKY74400*/           0L ,  /* FrequencyBand400 (not support)  */
+/*SKY74400*/    0x040004L ,  /* FrequencyBand850                */
+/*SKY74400*/    0x050004L ,  /* FrequencyBand900                */
+/*SKY74400*/    0x060004L ,  /* FrequencyBand1800               */
+/*SKY74400*/    0x070004L ,  /* FrequencyBand1900               */
+/*SKY74400*/ };
+/*SKY74400*/ const unsigned long SDATA_TX_Div_TABLE[2] = { 0x100000, 0x200000 };  // 0: /8  1: /16
+/*SKY74400*/ const unsigned long SDATA_TX_Inj_TABLE[2] = { 0x000000, 0x080000 };  // 0: Low 1: High
+/*SKY74400*/ unsigned long  SKY74400_TxCtrl = 0;
+/*SKY74400*/ unsigned long  SKY74400_TxCtrl_Mask = 0;
+/*SKY74400*/
+/*SKY74400*/ void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*SKY74400*/ {  int   Nfrac;
+/*SKY74400*/    const SKY74400_PLL_ELM*  elmptr;
+/*SKY74400*/    int left, right, middle;
+/*SKY74400*/
+/*SKY74400*/   /*binary search*/
+/*SKY74400*/   elmptr = SKY74400_RXPLL_TBL[rf_band];
+/*SKY74400*/   left = 0; right = SKY74400_RXPLL_TBL_SIZE[rf_band];
+/*SKY74400*/   while (left <= right)
+/*SKY74400*/   {  middle = (left + right)/2;
+/*SKY74400*/      if ( arfcn<(elmptr+middle)->arfcn )
+/*SKY74400*/         right = middle - 1;
+/*SKY74400*/      else
+/*SKY74400*/         left = middle + 1;
+/*SKY74400*/   }
+/*SKY74400*/   elmptr = (elmptr+left-1);
+/*SKY74400*/
+/*SKY74400*/   Nfrac = elmptr->Fbase + (((arfcn-elmptr->arfcn)*elmptr->Fstep)>>5);
+/*SKY74400*/   *rfN = (elmptr->Nint<<6) | 0xC40000;
+/*SKY74400*/   *ifN = (Nfrac<<2) | 3;
+/*SKY74400*/ //  *rfN = elmptr->Nint;
+/*SKY74400*/ //  *ifN = Nfrac;
+/*SKY74400*/ }
+/*SKY74400*/ /* =========================================================================== */
+/*SKY74400*/
+/*SKY74400*/ void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*SKY74400*/ {  int   Nfrac;
+/*SKY74400*/    const SKY74400_PLL_ELM*  elmptr;
+/*SKY74400*/    int left, right, middle;
+/*SKY74400*/    int div;
+/*SKY74400*/
+/*SKY74400*/   /*binary search*/
+/*SKY74400*/   elmptr = SKY74400_TXPLL_TBL[rf_band];
+/*SKY74400*/   left = 0; right = SKY74400_TXPLL_TBL_SIZE[rf_band];
+/*SKY74400*/   while (left <= right)
+/*SKY74400*/   {  middle = (left + right)/2;
+/*SKY74400*/      if ( arfcn<(elmptr+middle)->arfcn )
+/*SKY74400*/         right = middle - 1;
+/*SKY74400*/      else
+/*SKY74400*/         left = middle + 1;
+/*SKY74400*/   }
+/*SKY74400*/   elmptr = (elmptr+left-1);
+/*SKY74400*/   Nfrac = elmptr->Fbase + (((arfcn-elmptr->arfcn)*elmptr->Fstep)>>5);
+/*SKY74400*/   *rfN = (elmptr->Nint<<6) | 0xC40000;
+/*SKY74400*/   *ifN = (Nfrac<<2) | 3;
+/*SKY74400*/ //  *rfN = elmptr->Nint;
+/*SKY74400*/ //  *ifN = Nfrac;
+/*SKY74400*/
+/*SKY74400*/   l1d_rf.next_inj = (elmptr->Inj_Div>>1)&0x01;
+/*SKY74400*/   div = (elmptr->Inj_Div>>0)&0x01;
+/*SKY74400*/   SKY74400_TxCtrl_Mask = SDATA_TX_Div_TABLE[div] | SDATA_TX_Inj_TABLE[l1d_rf.next_inj];
+/*SKY74400*/   SKY74400_TxCtrl = SDATA_TX_TABLE[rf_band] | SDATA_TX_Div_TABLE[div] | SDATA_TX_Inj_TABLE[l1d_rf.next_inj];
+/*SKY74400*/ }
+/*SKY74400*/ /* =========================================================================== */
+#endif
+
+#if IS_RF_MT6119
+/*MT6119*/ void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6119*/ {  int   Nfrac;
+/*MT6119*/
+/*MT6119*/    switch(rf_band)
+/*MT6119*/    {
+/*MT6119*/       case  FrequencyBand900 :
+/*MT6119*/       {
+/*MT6119*/          if(arfcn<=70)
+/*MT6119*/          {  if(arfcn<=5)                                /*  ARFCN :   0~5    */
+/*MT6119*/             {  Nfrac = 80*(arfcn-0)+4760;
+/*MT6119*/                *rfN = (7L<<16) | (Nfrac<<3) | 1;
+/*MT6119*/             }
+/*MT6119*/             else                                        /*  ARFCN :  6~70    */
+/*MT6119*/             {  Nfrac = 80*(arfcn-6)+40;
+/*MT6119*/                *rfN = (8L<<16) | (Nfrac<<3) | 1;
+/*MT6119*/             }
+/*MT6119*/          }
+/*MT6119*/          else
+/*MT6119*/          {  if(arfcn<=124)                              /*  ARFCN : 71~124   */
+/*MT6119*/             {  Nfrac = 80*(arfcn-71)+40;
+/*MT6119*/                *rfN = (9L<<16) | (Nfrac<<3) | 1;
+/*MT6119*/             }
+/*MT6119*/             else
+/*MT6119*/             {  Nfrac = 80*(arfcn-975)+840;              /*  ARFCN : 975~1023 */
+/*MT6119*/                *rfN = (7L<<16) | (Nfrac<<3) | 1;
+/*MT6119*/             }
+/*MT6119*/          }
+/*MT6119*/          break;
+/*MT6119*/       }
+/*MT6119*/       case  FrequencyBand1800 :
+/*MT6119*/       {
+/*MT6119*/          if(arfcn<=716)
+/*MT6119*/          {  if(arfcn<=586)                              /*  ARFCN : 512~586  */
+/*MT6119*/             {  Nfrac = 40*(arfcn-512)+2220;
+/*MT6119*/                *rfN = (5L<<16) | (Nfrac<<3) | 1;
+/*MT6119*/             }
+/*MT6119*/             else                                        /*  ARFCN : 587~716  */
+/*MT6119*/             {  Nfrac = 40*(arfcn-587)+20;
+/*MT6119*/                *rfN = (6L<<16) | (Nfrac<<3) | 1;
+/*MT6119*/             }
+/*MT6119*/          }
+/*MT6119*/          else
+/*MT6119*/          {  if(arfcn<=846)                              /*  ARFCN : 717~846  */
+/*MT6119*/             {  Nfrac = 40*(arfcn-717)+20;
+/*MT6119*/                *rfN = (7L<<16) | (Nfrac<<3) | 1;
+/*MT6119*/             }
+/*MT6119*/             else                                        /*  ARFCN : 847~885  */
+/*MT6119*/             {  Nfrac = 40*(arfcn-847)+20;
+/*MT6119*/                *rfN = (8L<<16) | (Nfrac<<3) | 1;
+/*MT6119*/             }
+/*MT6119*/          }
+/*MT6119*/          break;
+/*MT6119*/       }
+/*MT6119*/       case  FrequencyBand1900 :
+/*MT6119*/       {
+/*MT6119*/          if(arfcn<=741)
+/*MT6119*/          {  if(arfcn<=611)                              /*  ARFCN : 512~611  */
+/*MT6119*/             {  Nfrac = 40*(arfcn-512)+1220;
+/*MT6119*/                *rfN = (10L<<16) | (Nfrac<<3) | 1;
+/*MT6119*/             }
+/*MT6119*/             else                                        /*  ARFCN : 612~741  */
+/*MT6119*/             {  Nfrac = 40*(arfcn-612)+20;
+/*MT6119*/                *rfN = (11L<<16) | (Nfrac<<3) | 1;
+/*MT6119*/             }
+/*MT6119*/          }
+/*MT6119*/          else
+/*MT6119*/          {  Nfrac = 40*(arfcn-742)+20;                  /*  ARFCN : 742~810  */
+/*MT6119*/             *rfN = (12L<<16) | (Nfrac<<3) | 1;
+/*MT6119*/          }
+/*MT6119*/          break;
+/*MT6119*/       }
+/*MT6119*/       default :
+/*MT6119*/       {
+/*MT6119*/          break;
+/*MT6119*/       }
+/*MT6119*/    }
+/*MT6119*/    *ifN = 0;
+/*MT6119*/ }
+/*MT6119*/ /* =========================================================================== */
+/*MT6119*/
+/*MT6119*/ char mt6119_d_flag = 0;
+/*MT6119*/
+/*MT6119*/ void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6119*/ {  int   Nfrac;
+/*MT6119*/
+/*MT6119*/    switch(rf_band)
+/*MT6119*/    {
+/*MT6119*/       case  FrequencyBand900 :
+/*MT6119*/       {
+/*MT6119*/          if(arfcn<=110)
+/*MT6119*/          {  if(arfcn<=52)
+/*MT6119*/             {  if(arfcn<=3)                     /* ARFCN : 0~3       */
+/*MT6119*/                {  Nfrac = 88*(arfcn-0)+1600;
+/*MT6119*/                   *rfN = (11L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119*/                   mt6119_d_flag = 1;
+/*MT6119*/                }
+/*MT6119*/                else                             /* ARFCN : 4~52     */
+/*MT6119*/                {  Nfrac = 90*(arfcn-4)+460;
+/*MT6119*/                   *rfN = (13L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119*/                   mt6119_d_flag = 0;
+/*MT6119*/                }
+/*MT6119*/             }
+/*MT6119*/             else
+/*MT6119*/             {  if(arfcn<=61)                    /* ARFCN : 53~61     */
+/*MT6119*/                {  Nfrac = 88*(arfcn-53)+1064;
+/*MT6119*/                   *rfN = (12L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119*/                   mt6119_d_flag = 1;
+/*MT6119*/                }
+/*MT6119*/                else                             /* ARFCN : 62~110    */
+/*MT6119*/                {  Nfrac = 90*(arfcn-62)+480;
+/*MT6119*/                   *rfN = (14L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119*/                   mt6119_d_flag = 0;
+/*MT6119*/                }
+/*MT6119*/             }
+/*MT6119*/          }
+/*MT6119*/          else
+/*MT6119*/          {  if(arfcn<=124)
+/*MT6119*/             {  if(arfcn<=118)                   /* ARFCN : 111~118   */
+/*MT6119*/                {  Nfrac = 88*(arfcn-111)+968;
+/*MT6119*/                   *rfN = (13L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119*/                   mt6119_d_flag = 1;
+/*MT6119*/                }
+/*MT6119*/                else                             /* ARFCN : 119~124  */
+/*MT6119*/                {  Nfrac = 90*(arfcn-119)+410;
+/*MT6119*/                   *rfN = (15L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119*/                   mt6119_d_flag = 0;
+/*MT6119*/                }
+/*MT6119*/             }
+/*MT6119*/             else
+/*MT6119*/             {  if(arfcn<=1018)                  /* ARFCN : 975~1018 */
+/*MT6119*/                {  Nfrac = 90*(arfcn-975)+890;
+/*MT6119*/                   *rfN = (12L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119*/                   mt6119_d_flag = 0;
+/*MT6119*/                }
+/*MT6119*/                else                             /* ARFCN : 1019~1023 */
+/*MT6119*/                {  Nfrac = 88*(arfcn-1019)+1160;
+/*MT6119*/                   *rfN = (11L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119*/                   mt6119_d_flag = 1;
+/*MT6119*/                }
+/*MT6119*/             }
+/*MT6119*/          }
+/*MT6119*/          break;
+/*MT6119*/       }
+/*MT6119*/       case  FrequencyBand1800 :
+/*MT6119*/       {
+/*MT6119*/          if(arfcn<=734)
+/*MT6119*/          {  if(arfcn<=618)
+/*MT6119*/             {  if(arfcn<=520)                   /* ARFCN : 512~520   */
+/*MT6119*/                {  Nfrac = 44*(arfcn-512)+1844;
+/*MT6119*/                   *rfN = (8L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119*/                   mt6119_d_flag = 1;
+/*MT6119*/                }
+/*MT6119*/                else                             /* ARFCN : 521~618   */
+/*MT6119*/                {  Nfrac = 45*(arfcn-521)+400;
+/*MT6119*/                   *rfN = (10L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119*/                   mt6119_d_flag = 0;
+/*MT6119*/                }
+/*MT6119*/             }
+/*MT6119*/             else
+/*MT6119*/             {  if(arfcn<=636)                   /* ARFCN : 619~636   */
+/*MT6119*/                {  Nfrac = 44*(arfcn-619)+1352;
+/*MT6119*/                   *rfN = (9L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119*/                   mt6119_d_flag = 1;
+/*MT6119*/                }
+/*MT6119*/                else                             /* ARFCN : 637~734   */
+/*MT6119*/                {  Nfrac = 45*(arfcn-637)+420;
+/*MT6119*/                   *rfN = (11L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119*/                   mt6119_d_flag = 0;
+/*MT6119*/                }
+/*MT6119*/             }
+/*MT6119*/          }
+/*MT6119*/          else
+/*MT6119*/          {  if(arfcn<=849)
+/*MT6119*/             {  if(arfcn<=752)                   /* ARFCN : 735~752   */
+/*MT6119*/                {  Nfrac = 44*(arfcn-735)+1256;
+/*MT6119*/                   *rfN = (10L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119*/                   mt6119_d_flag = 1;
+/*MT6119*/                }
+/*MT6119*/                else                             /* ARFCN : 753~849   */
+/*MT6119*/                {  Nfrac = 45*(arfcn-753)+440;
+/*MT6119*/                   *rfN = (12L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119*/                   mt6119_d_flag = 0;
+/*MT6119*/                }
+/*MT6119*/             }
+/*MT6119*/             else                                /* ARFCN : 850~867   */
+/*MT6119*/             {  if(arfcn<=867)
+/*MT6119*/                 {  Nfrac = 44*(arfcn-850)+1116;
+/*MT6119*/                   *rfN = (11L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119*/                   mt6119_d_flag = 1;
+/*MT6119*/                }
+/*MT6119*/                else                            /* ARFCN : 868~885   */
+/*MT6119*/                {  Nfrac = 45*(arfcn-868)+415;
+/*MT6119*/                   *rfN = (13L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119*/                   mt6119_d_flag = 0;
+/*MT6119*/                }
+/*MT6119*/             }
+/*MT6119*/          }
+/*MT6119*/          break;
+/*MT6119*/       }
+/*MT6119*/       case  FrequencyBand1900 :
+/*MT6119*/       {
+/*MT6119*/          if(arfcn<=727)
+/*MT6119*/          {  if(arfcn<=612)
+/*MT6119*/             {  if(arfcn<=514)                /* ARFCN : 512~514   */
+/*MT6119*/                {  Nfrac = 44*(arfcn-512)+1444;
+/*MT6119*/                   *rfN = (14L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119*/                   mt6119_d_flag = 1;
+/*MT6119*/                 }
+/*MT6119*/                 else
+/*MT6119*/                 {  Nfrac = 45*(arfcn-515)+430;  /* ARFCN : 515~612   */
+/*MT6119*/                   *rfN = (16L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119*/                   mt6119_d_flag = 0;
+/*MT6119*/                }
+/*MT6119*/             }
+/*MT6119*/             else
+/*MT6119*/             {  if(arfcn<=629)                /* ARFCN : 613~629   */
+/*MT6119*/                {  Nfrac = 44*(arfcn-613)+688;
+/*MT6119*/                   *rfN = (15L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119*/                   mt6119_d_flag = 1;
+/*MT6119*/                 }
+/*MT6119*/                 else
+/*MT6119*/                 {  Nfrac = 45*(arfcn-630)+405;  /* ARFCN : 630~727   */
+/*MT6119*/                   *rfN = (17L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119*/                   mt6119_d_flag = 0;
+/*MT6119*/                }
+/*MT6119*/             }
+/*MT6119*/          }
+/*MT6119*/          else
+/*MT6119*/          {  if(arfcn<=745)                      /* ARFCN : 728~745   */
+/*MT6119*/               {  Nfrac = 44*(arfcn-728)+548;
+/*MT6119*/                *rfN = (16L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119*/                mt6119_d_flag = 1;
+/*MT6119*/             }
+/*MT6119*/             else                                /* ARFCN : 746~810   */
+/*MT6119*/             {  Nfrac = 45*(arfcn-746)+425;
+/*MT6119*/                *rfN = (18L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119*/                mt6119_d_flag = 0;
+/*MT6119*/             }
+/*MT6119*/          }
+/*MT6119*/          break;
+/*MT6119*/       }
+/*MT6119*/       default :
+/*MT6119*/       {
+/*MT6119*/          break;
+/*MT6119*/       }
+/*MT6119*/    }
+/*MT6119*/    *ifN = 0;
+/*MT6119*/ }
+/*MT6119*/ /* =========================================================================== */
+#endif
+
+#if IS_RF_MT6119C
+/*MT6119C*/void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6119C*/{  int   Nfrac;
+/*MT6119C*/
+/*MT6119C*/   switch(rf_band)
+/*MT6119C*/   {
+/*MT6119C*/      case  FrequencyBand900 :
+/*MT6119C*/      {
+/*MT6119C*/         if(arfcn<=70)
+/*MT6119C*/         {  if(arfcn<=5)                                /*  ARFCN :   0~5    */
+/*MT6119C*/            {  Nfrac = 80*(arfcn-0)+4760;
+/*MT6119C*/               *rfN = (7L<<16) | (Nfrac<<3) | 1;
+/*MT6119C*/            }
+/*MT6119C*/            else                                        /*  ARFCN :  6~70    */
+/*MT6119C*/            {  Nfrac = 80*(arfcn-6)+40;
+/*MT6119C*/               *rfN = (8L<<16) | (Nfrac<<3) | 1;
+/*MT6119C*/            }
+/*MT6119C*/         }
+/*MT6119C*/         else
+/*MT6119C*/         {  if(arfcn<=124)                              /*  ARFCN : 71~124   */
+/*MT6119C*/            {  Nfrac = 80*(arfcn-71)+40;
+/*MT6119C*/               *rfN = (9L<<16) | (Nfrac<<3) | 1;
+/*MT6119C*/            }
+/*MT6119C*/            else
+/*MT6119C*/            {  Nfrac = 80*(arfcn-975)+840;              /*  ARFCN : 975~1023 */
+/*MT6119C*/               *rfN = (7L<<16) | (Nfrac<<3) | 1;
+/*MT6119C*/            }
+/*MT6119C*/         }
+/*MT6119C*/         break;
+/*MT6119C*/      }
+/*MT6119C*/      case  FrequencyBand1800 :
+/*MT6119C*/      {
+/*MT6119C*/         if(arfcn<=716)
+/*MT6119C*/         {  if(arfcn<=586)                              /*  ARFCN : 512~586  */
+/*MT6119C*/            {  Nfrac = 40*(arfcn-512)+2220;
+/*MT6119C*/               *rfN = (5L<<16) | (Nfrac<<3) | 1;
+/*MT6119C*/            }
+/*MT6119C*/            else                                        /*  ARFCN : 587~716  */
+/*MT6119C*/            {  Nfrac = 40*(arfcn-587)+20;
+/*MT6119C*/               *rfN = (6L<<16) | (Nfrac<<3) | 1;
+/*MT6119C*/            }
+/*MT6119C*/         }
+/*MT6119C*/         else
+/*MT6119C*/         {  if(arfcn<=846)                              /*  ARFCN : 717~846  */
+/*MT6119C*/            {  Nfrac = 40*(arfcn-717)+20;
+/*MT6119C*/               *rfN = (7L<<16) | (Nfrac<<3) | 1;
+/*MT6119C*/            }
+/*MT6119C*/            else                                        /*  ARFCN : 847~885  */
+/*MT6119C*/            {  Nfrac = 40*(arfcn-847)+20;
+/*MT6119C*/               *rfN = (8L<<16) | (Nfrac<<3) | 1;
+/*MT6119C*/            }
+/*MT6119C*/         }
+/*MT6119C*/         break;
+/*MT6119C*/      }
+/*MT6119C*/      case  FrequencyBand1900 :
+/*MT6119C*/      {
+/*MT6119C*/         if(arfcn<=741)
+/*MT6119C*/         {  if(arfcn<=611)                              /*  ARFCN : 512~611  */
+/*MT6119C*/            {  Nfrac = 40*(arfcn-512)+1220;
+/*MT6119C*/               *rfN = (10L<<16) | (Nfrac<<3) | 1;
+/*MT6119C*/            }
+/*MT6119C*/            else                                        /*  ARFCN : 612~741  */
+/*MT6119C*/            {  Nfrac = 40*(arfcn-612)+20;
+/*MT6119C*/               *rfN = (11L<<16) | (Nfrac<<3) | 1;
+/*MT6119C*/            }
+/*MT6119C*/         }
+/*MT6119C*/         else
+/*MT6119C*/         {  Nfrac = 40*(arfcn-742)+20;                  /*  ARFCN : 742~810  */
+/*MT6119C*/            *rfN = (12L<<16) | (Nfrac<<3) | 1;
+/*MT6119C*/         }
+/*MT6119C*/         break;
+/*MT6119C*/      }
+/*MT6119C*/      default :
+/*MT6119C*/      {
+/*MT6119C*/         break;
+/*MT6119C*/      }
+/*MT6119C*/   }
+/*MT6119C*/   *ifN = 0;
+/*MT6119C*/}
+/*MT6119C*//* =========================================================================== */
+/*MT6119C*/
+/*MT6119C*/char mt6119_d_flag = 0;
+/*MT6119C*/
+/*MT6119C*/void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6119C*/{  int   Nfrac;
+/*MT6119C*/
+/*MT6119C*/   switch(rf_band)
+/*MT6119C*/   {
+/*MT6119C*/      case  FrequencyBand900 :
+/*MT6119C*/      {
+/*MT6119C*/         if(arfcn<=104)
+/*MT6119C*/         {  if(arfcn<=45)
+/*MT6119C*/            {  if(arfcn<=36)                     /* ARFCN : 0~36       */
+/*MT6119C*/               {  Nfrac = 88*(arfcn-0)+1600;
+/*MT6119C*/                  *rfN = (11L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119C*/                  mt6119_d_flag = 1;
+/*MT6119C*/               }
+/*MT6119C*/               else                             /* ARFCN : 37~45     */
+/*MT6119C*/               {  Nfrac = 90*(arfcn-37)+3430;
+/*MT6119C*/                  *rfN = (13L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119C*/                  mt6119_d_flag = 0;
+/*MT6119C*/               }
+/*MT6119C*/            }
+/*MT6119C*/            else
+/*MT6119C*/            {  if(arfcn<=95)                    /* ARFCN : 46~95     */
+/*MT6119C*/               {  Nfrac = 88*(arfcn-46)+448;
+/*MT6119C*/                  *rfN = (12L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119C*/                  mt6119_d_flag = 1;
+/*MT6119C*/               }
+/*MT6119C*/               else                             /* ARFCN : 96~104    */
+/*MT6119C*/               {  Nfrac = 90*(arfcn-96)+3540;
+/*MT6119C*/                  *rfN = (14L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119C*/                  mt6119_d_flag = 0;
+/*MT6119C*/               }
+/*MT6119C*/            }
+/*MT6119C*/         }
+/*MT6119C*/         else
+/*MT6119C*/         {  if(arfcn<=1001)
+/*MT6119C*/            {  if(arfcn<=124)                   /* ARFCN : 105~124   */
+/*MT6119C*/               {  Nfrac = 88*(arfcn-105)+440;
+/*MT6119C*/                  *rfN = (13L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119C*/                  mt6119_d_flag = 1;
+/*MT6119C*/               }
+/*MT6119C*/               else                             /* ARFCN : 975~1001  */
+/*MT6119C*/               {  Nfrac = 88*(arfcn-975)+2488;
+/*MT6119C*/                  *rfN = (10L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119C*/                  mt6119_d_flag = 1;
+/*MT6119C*/               }
+/*MT6119C*/            }
+/*MT6119C*/            else
+/*MT6119C*/            {  if(arfcn<=1010)                  /* ARFCN : 1002~1010 */
+/*MT6119C*/               {  Nfrac = 90*(arfcn-1002)+3320;
+/*MT6119C*/                  *rfN = (12L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119C*/                  mt6119_d_flag = 0;
+/*MT6119C*/               }
+/*MT6119C*/               else                             /* ARFCN : 1011~1023 */
+/*MT6119C*/               {  Nfrac = 88*(arfcn-1011)+456;
+/*MT6119C*/                  *rfN = (11L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119C*/                  mt6119_d_flag = 1;
+/*MT6119C*/               }
+/*MT6119C*/            }
+/*MT6119C*/         }
+/*MT6119C*/         break;
+/*MT6119C*/      }
+/*MT6119C*/      case  FrequencyBand1800 :
+/*MT6119C*/      {
+/*MT6119C*/         if(arfcn<=715)
+/*MT6119C*/         {  if(arfcn<=597)
+/*MT6119C*/            {  if(arfcn<=579)                   /* ARFCN : 512~579   */
+/*MT6119C*/               {  Nfrac = 44*(arfcn-512)+1844;
+/*MT6119C*/                  *rfN = (8L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119C*/                  mt6119_d_flag = 1;
+/*MT6119C*/               }
+/*MT6119C*/               else                             /* ARFCN : 580~597   */
+/*MT6119C*/               {  Nfrac = 45*(arfcn-580)+3055;
+/*MT6119C*/                  *rfN = (10L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119C*/                  mt6119_d_flag = 0;
+/*MT6119C*/               }
+/*MT6119C*/            }
+/*MT6119C*/            else
+/*MT6119C*/            {  if(arfcn<=697)                   /* ARFCN : 598~697   */
+/*MT6119C*/               {  Nfrac = 44*(arfcn-598)+428;
+/*MT6119C*/                  *rfN = (9L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119C*/                  mt6119_d_flag = 1;
+/*MT6119C*/               }
+/*MT6119C*/               else                             /* ARFCN : 698~715   */
+/*MT6119C*/               {  Nfrac = 45*(arfcn-698)+3165;
+/*MT6119C*/                  *rfN = (11L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119C*/                  mt6119_d_flag = 0;
+/*MT6119C*/               }
+/*MT6119C*/            }
+/*MT6119C*/         }
+/*MT6119C*/         else
+/*MT6119C*/         {  if(arfcn<=833)
+/*MT6119C*/            {  if(arfcn<=815)                   /* ARFCN : 716~815   */
+/*MT6119C*/               {  Nfrac = 44*(arfcn-716)+420;
+/*MT6119C*/                  *rfN = (10L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119C*/                  mt6119_d_flag = 1;
+/*MT6119C*/               }
+/*MT6119C*/               else                             /* ARFCN : 816~833   */
+/*MT6119C*/               {  Nfrac = 45*(arfcn-816)+3275;
+/*MT6119C*/                  *rfN = (12L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119C*/                  mt6119_d_flag = 0;
+/*MT6119C*/               }
+/*MT6119C*/            }
+/*MT6119C*/            else                                /* ARFCN : 834~885   */
+/*MT6119C*/            {  Nfrac = 44*(arfcn-834)+412;
+/*MT6119C*/               *rfN = (11L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119C*/               mt6119_d_flag = 1;
+/*MT6119C*/            }
+/*MT6119C*/         }
+/*MT6119C*/         break;
+/*MT6119C*/      }
+/*MT6119C*/      case  FrequencyBand1900 :
+/*MT6119C*/      {
+/*MT6119C*/         if(arfcn<=706)
+/*MT6119C*/         {  if(arfcn<=606)
+/*MT6119C*/            {  if(arfcn<=588)                /* ARFCN : 512~588   */
+/*MT6119C*/               {  Nfrac = 44*(arfcn-512)+1444;
+/*MT6119C*/                  *rfN = (14L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119C*/                  mt6119_d_flag = 1;
+/*MT6119C*/              }
+/*MT6119C*/              else
+/*MT6119C*/              {  Nfrac = 45*(arfcn-589)+3760;  /* ARFCN : 589~606   */
+/*MT6119C*/                  *rfN = (16L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119C*/                  mt6119_d_flag = 0;
+/*MT6119C*/               }
+/*MT6119C*/            }
+/*MT6119C*/            else                                /* ARFCN : 607~706   */
+/*MT6119C*/            {  Nfrac = 44*(arfcn-607)+424;
+/*MT6119C*/               *rfN = (15L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119C*/               mt6119_d_flag = 1;
+/*MT6119C*/            }
+/*MT6119C*/         }
+/*MT6119C*/         else
+/*MT6119C*/         {  if(arfcn<=724)                      /* ARFCN : 707~724   */
+/*MT6119C*/              {  Nfrac = 45*(arfcn-707)+3870;
+/*MT6119C*/               *rfN = (17L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119C*/               mt6119_d_flag = 0;
+/*MT6119C*/            }
+/*MT6119C*/            else                                /* ARFCN : 725~810   */
+/*MT6119C*/            {  Nfrac = 44*(arfcn-725)+416;
+/*MT6119C*/               *rfN = (16L<<16) | (Nfrac<<3) | 0x400001L;
+/*MT6119C*/               mt6119_d_flag = 1;
+/*MT6119C*/            }
+/*MT6119C*/         }
+/*MT6119C*/         break;
+/*MT6119C*/      }
+/*MT6119C*/      default :
+/*MT6119C*/      {
+/*MT6119C*/         break;
+/*MT6119C*/      }
+/*MT6119C*/   }
+/*MT6119C*/   *ifN = 0;
+/*MT6119C*/}
+/*MT6119C*//* =========================================================================== */
+#endif
+
+#if IS_RF_MT6129A
+/*MT6129A*/void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6129A*/{  int   Nfrac;
+/*MT6129A*/
+/*MT6129A*/   switch(rf_band)
+/*MT6129A*/   {
+/*MT6129A*/      case  FrequencyBand900 :
+/*MT6129A*/      {
+/*MT6129A*/         if(arfcn<=70)
+/*MT6129A*/         {  if(arfcn<=5)                                /*  ARFCN :   0~5    */
+/*MT6129A*/            {  Nfrac = 80*(arfcn-0)+4760;
+/*MT6129A*/               *rfN = (7L<<17) | (Nfrac<<4) | 1;
+/*MT6129A*/            }
+/*MT6129A*/            else                                        /*  ARFCN :  6~70    */
+/*MT6129A*/            {  Nfrac = 80*(arfcn-6)+40;
+/*MT6129A*/               *rfN = (8L<<17) | (Nfrac<<4) | 1;
+/*MT6129A*/            }
+/*MT6129A*/         }
+/*MT6129A*/         else
+/*MT6129A*/         {  if(arfcn<=124)                              /*  ARFCN : 71~124   */
+/*MT6129A*/            {  Nfrac = 80*(arfcn-71)+40;
+/*MT6129A*/               *rfN = (9L<<17) | (Nfrac<<4) | 1;
+/*MT6129A*/            }
+/*MT6129A*/            else
+/*MT6129A*/            {  Nfrac = 80*(arfcn-975)+840;              /*  ARFCN : 975~1023 */
+/*MT6129A*/               *rfN = (7L<<17) | (Nfrac<<4) | 1;
+/*MT6129A*/            }
+/*MT6129A*/         }
+/*MT6129A*/         break;
+/*MT6129A*/      }
+/*MT6129A*/      case  FrequencyBand1800 :
+/*MT6129A*/      {
+/*MT6129A*/         if(arfcn<=716)
+/*MT6129A*/         {  if(arfcn<=586)                              /*  ARFCN : 512~586  */
+/*MT6129A*/            {  Nfrac = 40*(arfcn-512)+2220;
+/*MT6129A*/               *rfN = (5L<<17) | (Nfrac<<4) | 1;
+/*MT6129A*/            }
+/*MT6129A*/            else                                        /*  ARFCN : 587~716  */
+/*MT6129A*/            {  Nfrac = 40*(arfcn-587)+20;
+/*MT6129A*/               *rfN = (6L<<17) | (Nfrac<<4) | 1;
+/*MT6129A*/            }
+/*MT6129A*/         }
+/*MT6129A*/         else
+/*MT6129A*/         {  if(arfcn<=846)                              /*  ARFCN : 717~846  */
+/*MT6129A*/            {  Nfrac = 40*(arfcn-717)+20;
+/*MT6129A*/               *rfN = (7L<<17) | (Nfrac<<4) | 1;
+/*MT6129A*/            }
+/*MT6129A*/            else                                        /*  ARFCN : 847~885  */
+/*MT6129A*/            {  Nfrac = 40*(arfcn-847)+20;
+/*MT6129A*/               *rfN = (8L<<17) | (Nfrac<<4) | 1;
+/*MT6129A*/            }
+/*MT6129A*/         }
+/*MT6129A*/         break;
+/*MT6129A*/      }
+/*MT6129A*/      case  FrequencyBand1900 :
+/*MT6129A*/      {
+/*MT6129A*/         if(arfcn<=741)
+/*MT6129A*/         {  if(arfcn<=611)                              /*  ARFCN : 512~611  */
+/*MT6129A*/            {  Nfrac = 40*(arfcn-512)+1220;
+/*MT6129A*/               *rfN = (10L<<17) | (Nfrac<<4) | 1;
+/*MT6129A*/            }
+/*MT6129A*/            else                                        /*  ARFCN : 612~741  */
+/*MT6129A*/            {  Nfrac = 40*(arfcn-612)+20;
+/*MT6129A*/               *rfN = (11L<<17) | (Nfrac<<4) | 1;
+/*MT6129A*/            }
+/*MT6129A*/         }
+/*MT6129A*/         else
+/*MT6129A*/         {  Nfrac = 40*(arfcn-742)+20;                  /*  ARFCN : 742~810  */
+/*MT6129A*/            *rfN = (12L<<17) | (Nfrac<<4) | 1;
+/*MT6129A*/         }
+/*MT6129A*/         break;
+/*MT6129A*/      }
+/*MT6129A*/      default :
+/*MT6129A*/      {
+/*MT6129A*/         break;
+/*MT6129A*/      }
+/*MT6129A*/   }
+/*MT6129A*/   *ifN = 0;
+/*MT6129A*/}
+/*MT6129A*//* =========================================================================== */
+/*MT6129A*/
+/*MT6129A*/char mt6119_d_flag = 0;
+/*MT6129A*/
+/*MT6129A*/void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6129A*/{  int   Nfrac;
+/*MT6129A*/
+/*MT6129A*/   switch(rf_band)
+/*MT6129A*/   {
+/*MT6129A*/      case  FrequencyBand900 :
+/*MT6129A*/      {
+/*MT6129A*/         if(arfcn<=104)
+/*MT6129A*/         {  if(arfcn<=45)
+/*MT6129A*/            {  if(arfcn<=36)                     /* ARFCN : 0~36       */
+/*MT6129A*/               {  Nfrac = 88*(arfcn-0)+1600;
+/*MT6129A*/                  *rfN = (11L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129A*/                  mt6119_d_flag = 1;
+/*MT6129A*/               }
+/*MT6129A*/               else                             /* ARFCN : 37~45     */
+/*MT6129A*/               {  Nfrac = 90*(arfcn-37)+3430;
+/*MT6129A*/                  *rfN = (13L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129A*/                  mt6119_d_flag = 0;
+/*MT6129A*/               }
+/*MT6129A*/            }
+/*MT6129A*/            else
+/*MT6129A*/            {  if(arfcn<=95)                    /* ARFCN : 46~95     */
+/*MT6129A*/               {  Nfrac = 88*(arfcn-46)+448;
+/*MT6129A*/                  *rfN = (12L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129A*/                  mt6119_d_flag = 1;
+/*MT6129A*/               }
+/*MT6129A*/               else                             /* ARFCN : 96~104    */
+/*MT6129A*/               {  Nfrac = 90*(arfcn-96)+3540;
+/*MT6129A*/                  *rfN = (14L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129A*/                  mt6119_d_flag = 0;
+/*MT6129A*/               }
+/*MT6129A*/            }
+/*MT6129A*/         }
+/*MT6129A*/         else
+/*MT6129A*/         {  if(arfcn<=1001)
+/*MT6129A*/            {  if(arfcn<=124)                   /* ARFCN : 105~124   */
+/*MT6129A*/               {  Nfrac = 88*(arfcn-105)+440;
+/*MT6129A*/                  *rfN = (13L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129A*/                  mt6119_d_flag = 1;
+/*MT6129A*/               }
+/*MT6129A*/               else                             /* ARFCN : 975~1001  */
+/*MT6129A*/               {  Nfrac = 88*(arfcn-975)+2488;
+/*MT6129A*/                  *rfN = (10L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129A*/                  mt6119_d_flag = 1;
+/*MT6129A*/               }
+/*MT6129A*/            }
+/*MT6129A*/            else
+/*MT6129A*/            {  if(arfcn<=1010)                  /* ARFCN : 1002~1010 */
+/*MT6129A*/               {  Nfrac = 90*(arfcn-1002)+3320;
+/*MT6129A*/                  *rfN = (12L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129A*/                  mt6119_d_flag = 0;
+/*MT6129A*/               }
+/*MT6129A*/               else                             /* ARFCN : 1011~1023 */
+/*MT6129A*/               {  Nfrac = 88*(arfcn-1011)+456;
+/*MT6129A*/                  *rfN = (11L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129A*/                  mt6119_d_flag = 1;
+/*MT6129A*/               }
+/*MT6129A*/            }
+/*MT6129A*/         }
+/*MT6129A*/         break;
+/*MT6129A*/      }
+/*MT6129A*/      case  FrequencyBand1800 :
+/*MT6129A*/      {
+/*MT6129A*/         if(arfcn<=715)
+/*MT6129A*/         {  if(arfcn<=597)
+/*MT6129A*/            {  if(arfcn<=579)                   /* ARFCN : 512~579   */
+/*MT6129A*/               {  Nfrac = 44*(arfcn-512)+1844;
+/*MT6129A*/                  *rfN = (8L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129A*/                  mt6119_d_flag = 1;
+/*MT6129A*/               }
+/*MT6129A*/               else                             /* ARFCN : 580~597   */
+/*MT6129A*/               {  Nfrac = 45*(arfcn-580)+3055;
+/*MT6129A*/                  *rfN = (10L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129A*/                  mt6119_d_flag = 0;
+/*MT6129A*/               }
+/*MT6129A*/            }
+/*MT6129A*/            else
+/*MT6129A*/            {  if(arfcn<=697)                   /* ARFCN : 598~697   */
+/*MT6129A*/               {  Nfrac = 44*(arfcn-598)+428;
+/*MT6129A*/                  *rfN = (9L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129A*/                  mt6119_d_flag = 1;
+/*MT6129A*/               }
+/*MT6129A*/               else                             /* ARFCN : 698~715   */
+/*MT6129A*/               {  Nfrac = 45*(arfcn-698)+3165;
+/*MT6129A*/                  *rfN = (11L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129A*/                  mt6119_d_flag = 0;
+/*MT6129A*/               }
+/*MT6129A*/            }
+/*MT6129A*/         }
+/*MT6129A*/         else
+/*MT6129A*/         {  if(arfcn<=833)
+/*MT6129A*/            {  if(arfcn<=815)                   /* ARFCN : 716~815   */
+/*MT6129A*/               {  Nfrac = 44*(arfcn-716)+420;
+/*MT6129A*/                  *rfN = (10L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129A*/                  mt6119_d_flag = 1;
+/*MT6129A*/               }
+/*MT6129A*/               else                             /* ARFCN : 816~833   */
+/*MT6129A*/               {  Nfrac = 45*(arfcn-816)+3275;
+/*MT6129A*/                  *rfN = (12L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129A*/                  mt6119_d_flag = 0;
+/*MT6129A*/               }
+/*MT6129A*/            }
+/*MT6129A*/            else                                /* ARFCN : 834~885   */
+/*MT6129A*/            {  Nfrac = 44*(arfcn-834)+412;
+/*MT6129A*/               *rfN = (11L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129A*/               mt6119_d_flag = 1;
+/*MT6129A*/            }
+/*MT6129A*/         }
+/*MT6129A*/         break;
+/*MT6129A*/      }
+/*MT6129A*/      case  FrequencyBand1900 :
+/*MT6129A*/      {
+/*MT6129A*/         if(arfcn<=706)
+/*MT6129A*/         {  if(arfcn<=606)
+/*MT6129A*/            {  if(arfcn<=588)                /* ARFCN : 512~588   */
+/*MT6129A*/               {  Nfrac = 44*(arfcn-512)+1444;
+/*MT6129A*/                  *rfN = (14L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129A*/                  mt6119_d_flag = 1;
+/*MT6129A*/              }
+/*MT6129A*/              else
+/*MT6129A*/              {  Nfrac = 45*(arfcn-589)+3760;  /* ARFCN : 589~606   */
+/*MT6129A*/                  *rfN = (16L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129A*/                  mt6119_d_flag = 0;
+/*MT6129A*/               }
+/*MT6129A*/            }
+/*MT6129A*/            else                                /* ARFCN : 607~706   */
+/*MT6129A*/            {  Nfrac = 44*(arfcn-607)+424;
+/*MT6129A*/               *rfN = (15L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129A*/               mt6119_d_flag = 1;
+/*MT6129A*/            }
+/*MT6129A*/         }
+/*MT6129A*/         else
+/*MT6129A*/         {  if(arfcn<=724)                      /* ARFCN : 707~724   */
+/*MT6129A*/              {  Nfrac = 45*(arfcn-707)+3870;
+/*MT6129A*/               *rfN = (17L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129A*/               mt6119_d_flag = 0;
+/*MT6129A*/            }
+/*MT6129A*/            else                                /* ARFCN : 725~810   */
+/*MT6129A*/            {  Nfrac = 44*(arfcn-725)+416;
+/*MT6129A*/               *rfN = (16L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129A*/               mt6119_d_flag = 1;
+/*MT6129A*/            }
+/*MT6129A*/         }
+/*MT6129A*/         break;
+/*MT6129A*/      }
+/*MT6129A*/      default :
+/*MT6129A*/      {
+/*MT6129A*/         break;
+/*MT6129A*/      }
+/*MT6129A*/   }
+/*MT6129A*/   *ifN = 0;
+/*MT6129A*/}
+/*MT6129A*//* =========================================================================== */
+#endif
+
+#if IS_RF_MT6129B
+/*MT6129B*/void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6129B*/{  int   Nfrac;
+/*MT6129B*/
+/*MT6129B*/   switch(rf_band)
+/*MT6129B*/   {
+/*MT6129B*/      case  FrequencyBand850 :
+/*MT6129B*/      {
+/*MT6129B*/         if(arfcn<=202)
+/*MT6129B*/         {  if(arfcn<=137)                              /*  ARFCN :  128~137    */
+/*MT6129B*/            {  Nfrac = 80*(arfcn-128)+4440;
+/*MT6129B*/               *rfN = (2L<<17) | (Nfrac<<4) | 1;
+/*MT6129B*/            }
+/*MT6129B*/            else                                        /*  ARFCN :  138~202    */
+/*MT6129B*/            {  Nfrac = 80*(arfcn-138)+40;
+/*MT6129B*/               *rfN = (3L<<17) | (Nfrac<<4) | 1;
+/*MT6129B*/            }
+/*MT6129B*/         }
+/*MT6129B*/         else
+/*MT6129B*/         {                                             /*  ARFCN :  203~251   */
+/*MT6129B*/               Nfrac = 80*(arfcn-203)+40;
+/*MT6129B*/               *rfN = (4L<<17) | (Nfrac<<4) | 1;
+/*MT6129B*/         }
+/*MT6129B*/         break;
+/*MT6129B*/      }
+/*MT6129B*/      case  FrequencyBand900 :
+/*MT6129B*/      {
+/*MT6129B*/         if(arfcn<=70)
+/*MT6129B*/         {  if(arfcn<=5)                                /*  ARFCN :   0~5    */
+/*MT6129B*/            {  Nfrac = 80*(arfcn-0)+4760;
+/*MT6129B*/               *rfN = (7L<<17) | (Nfrac<<4) | 1;
+/*MT6129B*/            }
+/*MT6129B*/            else                                        /*  ARFCN :  6~70    */
+/*MT6129B*/            {  Nfrac = 80*(arfcn-6)+40;
+/*MT6129B*/               *rfN = (8L<<17) | (Nfrac<<4) | 1;
+/*MT6129B*/            }
+/*MT6129B*/         }
+/*MT6129B*/         else
+/*MT6129B*/         {  if(arfcn<=124)                              /*  ARFCN : 71~124   */
+/*MT6129B*/            {  Nfrac = 80*(arfcn-71)+40;
+/*MT6129B*/               *rfN = (9L<<17) | (Nfrac<<4) | 1;
+/*MT6129B*/            }
+/*MT6129B*/            else
+/*MT6129B*/            {  Nfrac = 80*(arfcn-975)+840;              /*  ARFCN : 975~1023 */
+/*MT6129B*/               *rfN = (7L<<17) | (Nfrac<<4) | 1;
+/*MT6129B*/            }
+/*MT6129B*/         }
+/*MT6129B*/         break;
+/*MT6129B*/      }
+/*MT6129B*/      case  FrequencyBand1800 :
+/*MT6129B*/      {
+/*MT6129B*/         if(arfcn<=716)
+/*MT6129B*/         {  if(arfcn<=586)                              /*  ARFCN : 512~586  */
+/*MT6129B*/            {  Nfrac = 40*(arfcn-512)+2220;
+/*MT6129B*/               *rfN = (5L<<17) | (Nfrac<<4) | 1;
+/*MT6129B*/            }
+/*MT6129B*/            else                                        /*  ARFCN : 587~716  */
+/*MT6129B*/            {  Nfrac = 40*(arfcn-587)+20;
+/*MT6129B*/               *rfN = (6L<<17) | (Nfrac<<4) | 1;
+/*MT6129B*/            }
+/*MT6129B*/         }
+/*MT6129B*/         else
+/*MT6129B*/         {  if(arfcn<=846)                              /*  ARFCN : 717~846  */
+/*MT6129B*/            {  Nfrac = 40*(arfcn-717)+20;
+/*MT6129B*/               *rfN = (7L<<17) | (Nfrac<<4) | 1;
+/*MT6129B*/            }
+/*MT6129B*/            else                                        /*  ARFCN : 847~885  */
+/*MT6129B*/            {  Nfrac = 40*(arfcn-847)+20;
+/*MT6129B*/               *rfN = (8L<<17) | (Nfrac<<4) | 1;
+/*MT6129B*/            }
+/*MT6129B*/         }
+/*MT6129B*/         break;
+/*MT6129B*/      }
+/*MT6129B*/      case  FrequencyBand1900 :
+/*MT6129B*/      {
+/*MT6129B*/         if(arfcn<=741)
+/*MT6129B*/         {  if(arfcn<=611)                              /*  ARFCN : 512~611  */
+/*MT6129B*/            {  Nfrac = 40*(arfcn-512)+1220;
+/*MT6129B*/               *rfN = (10L<<17) | (Nfrac<<4) | 1;
+/*MT6129B*/            }
+/*MT6129B*/            else                                        /*  ARFCN : 612~741  */
+/*MT6129B*/            {  Nfrac = 40*(arfcn-612)+20;
+/*MT6129B*/               *rfN = (11L<<17) | (Nfrac<<4) | 1;
+/*MT6129B*/            }
+/*MT6129B*/         }
+/*MT6129B*/         else
+/*MT6129B*/         {  Nfrac = 40*(arfcn-742)+20;                  /*  ARFCN : 742~810  */
+/*MT6129B*/            *rfN = (12L<<17) | (Nfrac<<4) | 1;
+/*MT6129B*/         }
+/*MT6129B*/         break;
+/*MT6129B*/      }
+/*MT6129B*/      default :
+/*MT6129B*/      {
+/*MT6129B*/         break;
+/*MT6129B*/      }
+/*MT6129B*/   }
+/*MT6129B*/   *ifN = 0;
+/*MT6129B*/}
+/*MT6129B*//* =========================================================================== */
+/*MT6129B*/
+/*MT6129B*/char mt6119_d_flag = 0;
+/*MT6129B*/
+/*MT6129B*/void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6129B*/{  int   Nfrac;
+/*MT6129B*/
+/*MT6129B*/   switch(rf_band)
+/*MT6129B*/   {
+/*MT6129B*/      case  FrequencyBand850 :
+/*MT6129B*/      {
+/*MT6129B*/         if(arfcn<=197)
+/*MT6129B*/         {  if(arfcn<=147)
+/*MT6129B*/            {  if(arfcn<=138)
+/*MT6129B*/               {                                /* ARFCN : 128~138     */
+/*MT6129B*/                  Nfrac = 88*(arfcn-128)+3848;
+/*MT6129B*/                  *rfN = (5L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129B*/                  mt6119_d_flag = 1;
+/*MT6129B*/               }
+/*MT6129B*/               else
+/*MT6129B*/               {                                /* ARFCN : 139~147     */
+/*MT6129B*/                  Nfrac = 90*(arfcn-139)+2680;
+/*MT6129B*/                  *rfN = (7L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129B*/                  mt6119_d_flag = 0;
+/*MT6129B*/               }
+/*MT6129B*/            }
+/*MT6129B*/            else
+/*MT6129B*/            {                                   /* ARFCN : 148~197     */
+/*MT6129B*/                  Nfrac = 88*(arfcn-148)+408;
+/*MT6129B*/                  *rfN = (6L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129B*/                  mt6119_d_flag = 1;
+/*MT6129B*/            }
+/*MT6129B*/         }
+/*MT6129B*/         else
+/*MT6129B*/         {  if(arfcn<=206)
+/*MT6129B*/            {                                   /* ARFCN : 198~206   */
+/*MT6129B*/                  Nfrac = 90*(arfcn-198)+2790;
+/*MT6129B*/                  *rfN = (8L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129B*/                  mt6119_d_flag = 0;
+/*MT6129B*/            }
+/*MT6129B*/            else
+/*MT6129B*/            {                                   /* ARFCN : 207~251 */
+/*MT6129B*/                  Nfrac = 88*(arfcn-207)+400;
+/*MT6129B*/                  *rfN = (7L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129B*/                  mt6119_d_flag = 1;
+/*MT6129B*/            }
+/*MT6129B*/         }
+/*MT6129B*/         break;
+/*MT6129B*/      }
+/*MT6129B*/      case  FrequencyBand900 :
+/*MT6129B*/      {
+/*MT6129B*/         if(arfcn<=104)
+/*MT6129B*/         {  if(arfcn<=45)
+/*MT6129B*/            {  if(arfcn<=36)                     /* ARFCN : 0~36       */
+/*MT6129B*/               {  Nfrac = 88*(arfcn-0)+1600;
+/*MT6129B*/                  *rfN = (11L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129B*/                  mt6119_d_flag = 1;
+/*MT6129B*/               }
+/*MT6129B*/               else                             /* ARFCN : 37~45     */
+/*MT6129B*/               {  Nfrac = 90*(arfcn-37)+3430;
+/*MT6129B*/                  *rfN = (13L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129B*/                  mt6119_d_flag = 0;
+/*MT6129B*/               }
+/*MT6129B*/            }
+/*MT6129B*/            else
+/*MT6129B*/            {  if(arfcn<=95)                    /* ARFCN : 46~95     */
+/*MT6129B*/               {  Nfrac = 88*(arfcn-46)+448;
+/*MT6129B*/                  *rfN = (12L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129B*/                  mt6119_d_flag = 1;
+/*MT6129B*/               }
+/*MT6129B*/               else                             /* ARFCN : 96~104    */
+/*MT6129B*/               {  Nfrac = 90*(arfcn-96)+3540;
+/*MT6129B*/                  *rfN = (14L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129B*/                  mt6119_d_flag = 0;
+/*MT6129B*/               }
+/*MT6129B*/            }
+/*MT6129B*/         }
+/*MT6129B*/         else
+/*MT6129B*/         {  if(arfcn<=1001)
+/*MT6129B*/            {  if(arfcn<=124)                   /* ARFCN : 105~124   */
+/*MT6129B*/               {  Nfrac = 88*(arfcn-105)+440;
+/*MT6129B*/                  *rfN = (13L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129B*/                  mt6119_d_flag = 1;
+/*MT6129B*/               }
+/*MT6129B*/               else                             /* ARFCN : 975~1001  */
+/*MT6129B*/               {  Nfrac = 88*(arfcn-975)+2488;
+/*MT6129B*/                  *rfN = (10L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129B*/                  mt6119_d_flag = 1;
+/*MT6129B*/               }
+/*MT6129B*/            }
+/*MT6129B*/            else
+/*MT6129B*/            {  if(arfcn<=1010)                  /* ARFCN : 1002~1010 */
+/*MT6129B*/               {  Nfrac = 90*(arfcn-1002)+3320;
+/*MT6129B*/                  *rfN = (12L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129B*/                  mt6119_d_flag = 0;
+/*MT6129B*/               }
+/*MT6129B*/               else                             /* ARFCN : 1011~1023 */
+/*MT6129B*/               {  Nfrac = 88*(arfcn-1011)+456;
+/*MT6129B*/                  *rfN = (11L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129B*/                  mt6119_d_flag = 1;
+/*MT6129B*/               }
+/*MT6129B*/            }
+/*MT6129B*/         }
+/*MT6129B*/         break;
+/*MT6129B*/      }
+/*MT6129B*/      case  FrequencyBand1800 :
+/*MT6129B*/      {
+/*MT6129B*/         if(arfcn<=715)
+/*MT6129B*/         {  if(arfcn<=597)
+/*MT6129B*/            {  if(arfcn<=579)                   /* ARFCN : 512~579   */
+/*MT6129B*/               {  Nfrac = 44*(arfcn-512)+1844;
+/*MT6129B*/                  *rfN = (8L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129B*/                  mt6119_d_flag = 1;
+/*MT6129B*/               }
+/*MT6129B*/               else                             /* ARFCN : 580~597   */
+/*MT6129B*/               {  Nfrac = 45*(arfcn-580)+3055;
+/*MT6129B*/                  *rfN = (10L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129B*/                  mt6119_d_flag = 0;
+/*MT6129B*/               }
+/*MT6129B*/            }
+/*MT6129B*/            else
+/*MT6129B*/            {  if(arfcn<=697)                   /* ARFCN : 598~697   */
+/*MT6129B*/               {  Nfrac = 44*(arfcn-598)+428;
+/*MT6129B*/                  *rfN = (9L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129B*/                  mt6119_d_flag = 1;
+/*MT6129B*/               }
+/*MT6129B*/               else                             /* ARFCN : 698~715   */
+/*MT6129B*/               {  Nfrac = 45*(arfcn-698)+3165;
+/*MT6129B*/                  *rfN = (11L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129B*/                  mt6119_d_flag = 0;
+/*MT6129B*/               }
+/*MT6129B*/            }
+/*MT6129B*/         }
+/*MT6129B*/         else
+/*MT6129B*/         {  if(arfcn<=833)
+/*MT6129B*/            {  if(arfcn<=815)                   /* ARFCN : 716~815   */
+/*MT6129B*/               {  Nfrac = 44*(arfcn-716)+420;
+/*MT6129B*/                  *rfN = (10L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129B*/                  mt6119_d_flag = 1;
+/*MT6129B*/               }
+/*MT6129B*/               else                             /* ARFCN : 816~833   */
+/*MT6129B*/               {  Nfrac = 45*(arfcn-816)+3275;
+/*MT6129B*/                  *rfN = (12L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129B*/                  mt6119_d_flag = 0;
+/*MT6129B*/               }
+/*MT6129B*/            }
+/*MT6129B*/            else                                /* ARFCN : 834~885   */
+/*MT6129B*/            {  Nfrac = 44*(arfcn-834)+412;
+/*MT6129B*/               *rfN = (11L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129B*/               mt6119_d_flag = 1;
+/*MT6129B*/            }
+/*MT6129B*/         }
+/*MT6129B*/         break;
+/*MT6129B*/      }
+/*MT6129B*/      case  FrequencyBand1900 :
+/*MT6129B*/      {
+/*MT6129B*/         if(arfcn<=706)
+/*MT6129B*/         {  if(arfcn<=606)
+/*MT6129B*/            {  if(arfcn<=588)                /* ARFCN : 512~588   */
+/*MT6129B*/               {  Nfrac = 44*(arfcn-512)+1444;
+/*MT6129B*/                  *rfN = (14L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129B*/                  mt6119_d_flag = 1;
+/*MT6129B*/              }
+/*MT6129B*/              else
+/*MT6129B*/              {  Nfrac = 45*(arfcn-589)+3760;  /* ARFCN : 589~606   */
+/*MT6129B*/                  *rfN = (16L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129B*/                  mt6119_d_flag = 0;
+/*MT6129B*/               }
+/*MT6129B*/            }
+/*MT6129B*/            else                                /* ARFCN : 607~706   */
+/*MT6129B*/            {  Nfrac = 44*(arfcn-607)+424;
+/*MT6129B*/               *rfN = (15L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129B*/               mt6119_d_flag = 1;
+/*MT6129B*/            }
+/*MT6129B*/         }
+/*MT6129B*/         else
+/*MT6129B*/         {  if(arfcn<=724)                      /* ARFCN : 707~724   */
+/*MT6129B*/              {  Nfrac = 45*(arfcn-707)+3870;
+/*MT6129B*/               *rfN = (17L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129B*/               mt6119_d_flag = 0;
+/*MT6129B*/            }
+/*MT6129B*/            else                                /* ARFCN : 725~810   */
+/*MT6129B*/            {  Nfrac = 44*(arfcn-725)+416;
+/*MT6129B*/               *rfN = (16L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129B*/               mt6119_d_flag = 1;
+/*MT6129B*/            }
+/*MT6129B*/         }
+/*MT6129B*/         break;
+/*MT6129B*/      }
+/*MT6129B*/      default :
+/*MT6129B*/      {
+/*MT6129B*/         break;
+/*MT6129B*/      }
+/*MT6129B*/   }
+/*MT6129B*/   *ifN = 0;
+/*MT6129B*/}
+/*MT6129B*//* =========================================================================== */
+#endif
+
+#if  (IS_RF_MT6129C)||(IS_RF_MT6129D)
+/*MT6129C,D*/void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6129C,D*/{  int   Nfrac;
+/*MT6129C,D*/
+/*MT6129C,D*/   switch(rf_band)
+/*MT6129C,D*/   {
+/*MT6129C,D*/      case  FrequencyBand850 :
+/*MT6129C,D*/      {
+/*MT6129C,D*/         if(arfcn<=202)
+/*MT6129C,D*/         {  if(arfcn<=137)                              /*  ARFCN :  128~137    */
+/*MT6129C,D*/            {  Nfrac = 80*(arfcn-128)+4440;
+/*MT6129C,D*/               *rfN = (2L<<17) | (Nfrac<<4) | 1;
+/*MT6129C,D*/            }
+/*MT6129C,D*/            else                                        /*  ARFCN :  138~202    */
+/*MT6129C,D*/            {  Nfrac = 80*(arfcn-138)+40;
+/*MT6129C,D*/               *rfN = (3L<<17) | (Nfrac<<4) | 1;
+/*MT6129C,D*/            }
+/*MT6129C,D*/         }
+/*MT6129C,D*/         else
+/*MT6129C,D*/         {                                             /*  ARFCN :  203~251   */
+/*MT6129C,D*/               Nfrac = 80*(arfcn-203)+40;
+/*MT6129C,D*/               *rfN = (4L<<17) | (Nfrac<<4) | 1;
+/*MT6129C,D*/         }
+/*MT6129C,D*/         break;
+/*MT6129C,D*/      }
+/*MT6129C,D*/      case  FrequencyBand900 :
+/*MT6129C,D*/      {
+/*MT6129C,D*/         if(arfcn<=70)
+/*MT6129C,D*/         {  if(arfcn<=5)                                /*  ARFCN :   0~5    */
+/*MT6129C,D*/            {  Nfrac = 80*(arfcn-0)+4760;
+/*MT6129C,D*/               *rfN = (7L<<17) | (Nfrac<<4) | 1;
+/*MT6129C,D*/            }
+/*MT6129C,D*/            else                                        /*  ARFCN :  6~70    */
+/*MT6129C,D*/            {  Nfrac = 80*(arfcn-6)+40;
+/*MT6129C,D*/               *rfN = (8L<<17) | (Nfrac<<4) | 1;
+/*MT6129C,D*/            }
+/*MT6129C,D*/         }
+/*MT6129C,D*/         else
+/*MT6129C,D*/         {  if(arfcn<=124)                              /*  ARFCN : 71~124   */
+/*MT6129C,D*/            {  Nfrac = 80*(arfcn-71)+40;
+/*MT6129C,D*/               *rfN = (9L<<17) | (Nfrac<<4) | 1;
+/*MT6129C,D*/            }
+/*MT6129C,D*/            else
+/*MT6129C,D*/            {  Nfrac = 80*(arfcn-975)+840;              /*  ARFCN : 975~1023 */
+/*MT6129C,D*/               *rfN = (7L<<17) | (Nfrac<<4) | 1;
+/*MT6129C,D*/            }
+/*MT6129C,D*/         }
+/*MT6129C,D*/         break;
+/*MT6129C,D*/      }
+/*MT6129C,D*/      case  FrequencyBand1800 :
+/*MT6129C,D*/      {
+/*MT6129C,D*/         if(arfcn<=716)
+/*MT6129C,D*/         {  if(arfcn<=586)                              /*  ARFCN : 512~586  */
+/*MT6129C,D*/            {  Nfrac = 40*(arfcn-512)+2220;
+/*MT6129C,D*/               *rfN = (5L<<17) | (Nfrac<<4) | 1;
+/*MT6129C,D*/            }
+/*MT6129C,D*/            else                                        /*  ARFCN : 587~716  */
+/*MT6129C,D*/            {  Nfrac = 40*(arfcn-587)+20;
+/*MT6129C,D*/               *rfN = (6L<<17) | (Nfrac<<4) | 1;
+/*MT6129C,D*/            }
+/*MT6129C,D*/         }
+/*MT6129C,D*/         else
+/*MT6129C,D*/         {  if(arfcn<=846)                              /*  ARFCN : 717~846  */
+/*MT6129C,D*/            {  Nfrac = 40*(arfcn-717)+20;
+/*MT6129C,D*/               *rfN = (7L<<17) | (Nfrac<<4) | 1;
+/*MT6129C,D*/            }
+/*MT6129C,D*/            else                                        /*  ARFCN : 847~885  */
+/*MT6129C,D*/            {  Nfrac = 40*(arfcn-847)+20;
+/*MT6129C,D*/               *rfN = (8L<<17) | (Nfrac<<4) | 1;
+/*MT6129C,D*/            }
+/*MT6129C,D*/         }
+/*MT6129C,D*/         break;
+/*MT6129C,D*/      }
+/*MT6129C,D*/      case  FrequencyBand1900 :
+/*MT6129C,D*/      {
+/*MT6129C,D*/         if(arfcn<=741)
+/*MT6129C,D*/         {  if(arfcn<=611)                              /*  ARFCN : 512~611  */
+/*MT6129C,D*/            {  Nfrac = 40*(arfcn-512)+1220;
+/*MT6129C,D*/               *rfN = (10L<<17) | (Nfrac<<4) | 1;
+/*MT6129C,D*/            }
+/*MT6129C,D*/            else                                        /*  ARFCN : 612~741  */
+/*MT6129C,D*/            {  Nfrac = 40*(arfcn-612)+20;
+/*MT6129C,D*/               *rfN = (11L<<17) | (Nfrac<<4) | 1;
+/*MT6129C,D*/            }
+/*MT6129C,D*/         }
+/*MT6129C,D*/         else
+/*MT6129C,D*/         {  Nfrac = 40*(arfcn-742)+20;                  /*  ARFCN : 742~810  */
+/*MT6129C,D*/            *rfN = (12L<<17) | (Nfrac<<4) | 1;
+/*MT6129C,D*/         }
+/*MT6129C,D*/         break;
+/*MT6129C,D*/      }
+/*MT6129C,D*/      default :
+/*MT6129C,D*/      {
+/*MT6129C,D*/         break;
+/*MT6129C,D*/      }
+/*MT6129C,D*/   }
+/*MT6129C,D*/   *ifN = 0;
+/*MT6129C,D*/}
+/*MT6129C,D*//* =========================================================================== */
+/*MT6129C,D*/
+/*MT6129C,D*/char mt6119_d_flag = 0;
+/*MT6129C,D*/
+/*MT6129C,D*/void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6129C,D*/{  int   Nfrac;
+/*MT6129C,D*/
+/*MT6129C,D*/   switch(rf_band)
+/*MT6129C,D*/   {
+/*MT6129C,D*/      case  FrequencyBand850 :
+/*MT6129C,D*/      {
+/*MT6129C,D*/         if(arfcn<=197)
+/*MT6129C,D*/         {  if(arfcn<=147)
+/*MT6129C,D*/            {  if(arfcn<=138)
+/*MT6129C,D*/               {                                /* ARFCN : 128~138     */
+/*MT6129C,D*/                  Nfrac = 88*(arfcn-128)+3848;
+/*MT6129C,D*/                  *rfN = (5L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129C,D*/                  mt6119_d_flag = 1;
+/*MT6129C,D*/               }
+/*MT6129C,D*/               else
+/*MT6129C,D*/               {                                /* ARFCN : 139~147     */
+/*MT6129C,D*/                  Nfrac = 90*(arfcn-139)+2680;
+/*MT6129C,D*/                  *rfN = (7L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129C,D*/                  mt6119_d_flag = 0;
+/*MT6129C,D*/               }
+/*MT6129C,D*/            }
+/*MT6129C,D*/            else
+/*MT6129C,D*/            {                                   /* ARFCN : 148~197     */
+/*MT6129C,D*/                  Nfrac = 88*(arfcn-148)+408;
+/*MT6129C,D*/                  *rfN = (6L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129C,D*/                  mt6119_d_flag = 1;
+/*MT6129C,D*/            }
+/*MT6129C,D*/         }
+/*MT6129C,D*/         else
+/*MT6129C,D*/         {  if(arfcn<=206)
+/*MT6129C,D*/            {                                   /* ARFCN : 198~206   */
+/*MT6129C,D*/                  Nfrac = 90*(arfcn-198)+2790;
+/*MT6129C,D*/                  *rfN = (8L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129C,D*/                  mt6119_d_flag = 0;
+/*MT6129C,D*/            }
+/*MT6129C,D*/            else
+/*MT6129C,D*/            {                                   /* ARFCN : 207~251 */
+/*MT6129C,D*/                  Nfrac = 88*(arfcn-207)+400;
+/*MT6129C,D*/                  *rfN = (7L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129C,D*/                  mt6119_d_flag = 1;
+/*MT6129C,D*/            }
+/*MT6129C,D*/         }
+/*MT6129C,D*/         break;
+/*MT6129C,D*/      }
+/*MT6129C,D*/      case  FrequencyBand900 :
+/*MT6129C,D*/      {
+/*MT6129C,D*/         if(arfcn<=104)
+/*MT6129C,D*/         {  if(arfcn<=45)
+/*MT6129C,D*/            {  if(arfcn<=36)                     /* ARFCN : 0~36       */
+/*MT6129C,D*/               {  Nfrac = 88*(arfcn-0)+1600;
+/*MT6129C,D*/                  *rfN = (11L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129C,D*/                  mt6119_d_flag = 1;
+/*MT6129C,D*/               }
+/*MT6129C,D*/               else                             /* ARFCN : 37~45     */
+/*MT6129C,D*/               {  Nfrac = 90*(arfcn-37)+3430;
+/*MT6129C,D*/                  *rfN = (13L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129C,D*/                  mt6119_d_flag = 0;
+/*MT6129C,D*/               }
+/*MT6129C,D*/            }
+/*MT6129C,D*/            else
+/*MT6129C,D*/            {  if(arfcn<=95)                    /* ARFCN : 46~95     */
+/*MT6129C,D*/               {  Nfrac = 88*(arfcn-46)+448;
+/*MT6129C,D*/                  *rfN = (12L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129C,D*/                  mt6119_d_flag = 1;
+/*MT6129C,D*/               }
+/*MT6129C,D*/               else                             /* ARFCN : 96~104    */
+/*MT6129C,D*/               {  Nfrac = 90*(arfcn-96)+3540;
+/*MT6129C,D*/                  *rfN = (14L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129C,D*/                  mt6119_d_flag = 0;
+/*MT6129C,D*/               }
+/*MT6129C,D*/            }
+/*MT6129C,D*/         }
+/*MT6129C,D*/         else
+/*MT6129C,D*/         {  if(arfcn<=1001)
+/*MT6129C,D*/            {  if(arfcn<=124)                   /* ARFCN : 105~124   */
+/*MT6129C,D*/               {  Nfrac = 88*(arfcn-105)+440;
+/*MT6129C,D*/                  *rfN = (13L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129C,D*/                  mt6119_d_flag = 1;
+/*MT6129C,D*/               }
+/*MT6129C,D*/               else                             /* ARFCN : 975~1001  */
+/*MT6129C,D*/               {  Nfrac = 88*(arfcn-975)+2488;
+/*MT6129C,D*/                  *rfN = (10L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129C,D*/                  mt6119_d_flag = 1;
+/*MT6129C,D*/               }
+/*MT6129C,D*/            }
+/*MT6129C,D*/            else
+/*MT6129C,D*/            {  if(arfcn<=1010)                  /* ARFCN : 1002~1010 */
+/*MT6129C,D*/               {  Nfrac = 90*(arfcn-1002)+3320;
+/*MT6129C,D*/                  *rfN = (12L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129C,D*/                  mt6119_d_flag = 0;
+/*MT6129C,D*/               }
+/*MT6129C,D*/               else                             /* ARFCN : 1011~1023 */
+/*MT6129C,D*/               {  Nfrac = 88*(arfcn-1011)+456;
+/*MT6129C,D*/                  *rfN = (11L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129C,D*/                  mt6119_d_flag = 1;
+/*MT6129C,D*/               }
+/*MT6129C,D*/            }
+/*MT6129C,D*/         }
+/*MT6129C,D*/         break;
+/*MT6129C,D*/      }
+/*MT6129C,D*/      case  FrequencyBand1800 :
+/*MT6129C,D*/      {
+/*MT6129C,D*/         if(arfcn<=715)
+/*MT6129C,D*/         {  if(arfcn<=597)
+/*MT6129C,D*/            {  if(arfcn<=579)                   /* ARFCN : 512~579   */
+/*MT6129C,D*/               {  Nfrac = 44*(arfcn-512)+1844;
+/*MT6129C,D*/                  *rfN = (8L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129C,D*/                  mt6119_d_flag = 1;
+/*MT6129C,D*/               }
+/*MT6129C,D*/               else                             /* ARFCN : 580~597   */
+/*MT6129C,D*/               {  Nfrac = 45*(arfcn-580)+3055;
+/*MT6129C,D*/                  *rfN = (10L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129C,D*/                  mt6119_d_flag = 0;
+/*MT6129C,D*/               }
+/*MT6129C,D*/            }
+/*MT6129C,D*/            else
+/*MT6129C,D*/            {  if(arfcn<=697)                   /* ARFCN : 598~697   */
+/*MT6129C,D*/               {  Nfrac = 44*(arfcn-598)+428;
+/*MT6129C,D*/                  *rfN = (9L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129C,D*/                  mt6119_d_flag = 1;
+/*MT6129C,D*/               }
+/*MT6129C,D*/               else                             /* ARFCN : 698~715   */
+/*MT6129C,D*/               {  Nfrac = 45*(arfcn-698)+3165;
+/*MT6129C,D*/                  *rfN = (11L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129C,D*/                  mt6119_d_flag = 0;
+/*MT6129C,D*/               }
+/*MT6129C,D*/            }
+/*MT6129C,D*/         }
+/*MT6129C,D*/         else
+/*MT6129C,D*/         {  if(arfcn<=833)
+/*MT6129C,D*/            {  if(arfcn<=815)                   /* ARFCN : 716~815   */
+/*MT6129C,D*/               {  Nfrac = 44*(arfcn-716)+420;
+/*MT6129C,D*/                  *rfN = (10L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129C,D*/                  mt6119_d_flag = 1;
+/*MT6129C,D*/               }
+/*MT6129C,D*/               else                             /* ARFCN : 816~833   */
+/*MT6129C,D*/               {  Nfrac = 45*(arfcn-816)+3275;
+/*MT6129C,D*/                  *rfN = (12L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129C,D*/                  mt6119_d_flag = 0;
+/*MT6129C,D*/               }
+/*MT6129C,D*/            }
+/*MT6129C,D*/            else                                /* ARFCN : 834~885   */
+/*MT6129C,D*/            {  Nfrac = 44*(arfcn-834)+412;
+/*MT6129C,D*/               *rfN = (11L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129C,D*/               mt6119_d_flag = 1;
+/*MT6129C,D*/            }
+/*MT6129C,D*/         }
+/*MT6129C,D*/         break;
+/*MT6129C,D*/      }
+/*MT6129C,D*/      case  FrequencyBand1900 :
+/*MT6129C,D*/      {
+/*MT6129C,D*/         if(arfcn<=706)
+/*MT6129C,D*/         {  if(arfcn<=606)
+/*MT6129C,D*/            {  if(arfcn<=588)                /* ARFCN : 512~588   */
+/*MT6129C,D*/               {  Nfrac = 44*(arfcn-512)+1444;
+/*MT6129C,D*/                  *rfN = (14L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129C,D*/                  mt6119_d_flag = 1;
+/*MT6129C,D*/              }
+/*MT6129C,D*/              else
+/*MT6129C,D*/              {  Nfrac = 45*(arfcn-589)+3760;  /* ARFCN : 589~606   */
+/*MT6129C,D*/                  *rfN = (16L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129C,D*/                  mt6119_d_flag = 0;
+/*MT6129C,D*/               }
+/*MT6129C,D*/            }
+/*MT6129C,D*/            else                                /* ARFCN : 607~706   */
+/*MT6129C,D*/            {  Nfrac = 44*(arfcn-607)+424;
+/*MT6129C,D*/               *rfN = (15L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129C,D*/               mt6119_d_flag = 1;
+/*MT6129C,D*/            }
+/*MT6129C,D*/         }
+/*MT6129C,D*/         else
+/*MT6129C,D*/         {  if(arfcn<=724)                      /* ARFCN : 707~724   */
+/*MT6129C,D*/              {  Nfrac = 45*(arfcn-707)+3870;
+/*MT6129C,D*/               *rfN = (17L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129C,D*/               mt6119_d_flag = 0;
+/*MT6129C,D*/            }
+/*MT6129C,D*/            else                                /* ARFCN : 725~810   */
+/*MT6129C,D*/            {  Nfrac = 44*(arfcn-725)+416;
+/*MT6129C,D*/               *rfN = (16L<<17) | (Nfrac<<4) | 0x800001L;
+/*MT6129C,D*/               mt6119_d_flag = 1;
+/*MT6129C,D*/            }
+/*MT6129C,D*/         }
+/*MT6129C,D*/         break;
+/*MT6129C,D*/      }
+/*MT6129C,D*/      default :
+/*MT6129C,D*/      {
+/*MT6129C,D*/         break;
+/*MT6129C,D*/      }
+/*MT6129C,D*/   }
+/*MT6129C,D*/   *ifN = 0;
+/*MT6129C,D*/}
+/*MT6129C,D*//* =========================================================================== */
+#endif
+
+#if  (IS_RF_MT6139B)
+/*MT6139B*/void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6139B*/{
+/*MT6139B*/   switch(rf_band)
+/*MT6139B*/   {
+/*MT6139B*/      case  FrequencyBand850 :
+/*MT6139B*/      {
+/*MT6139B*/         if(arfcn<=201)
+/*MT6139B*/         {  if(arfcn<=136)
+/*MT6139B*/            {                                /* ARFCN : 128~136     */
+/*MT6139B*/             //   Nfrac = (arfcn-128)<<1+112;
+/*MT6139B*/             //   *rfN = (66L<<12) | (Nfrac<<4) | 0x00001L;
+/*MT6139B*/                *rfN = (66L<<12) | ((arfcn-72)<<5) | 0x000001L;
+/*MT6139B*/            }
+/*MT6139B*/            else
+/*MT6139B*/            {                              /* ARFCN : 137~201     */
+/*MT6139B*/                *rfN = (67L<<12) | ((arfcn-137)<<5) | 0x000001L;
+/*MT6139B*/            }
+/*MT6139B*/         }
+/*MT6139B*/         else
+/*MT6139B*/         {                                 /* ARFCN : 202~251     */
+/*MT6139B*/                *rfN = (68L<<12) | ((arfcn-202)<<5) | 0x000001L;
+/*MT6139B*/         }
+/*MT6139B*/
+/*MT6139B*/         break;
+/*MT6139B*/      }
+/*MT6139B*/      case  FrequencyBand900 :
+/*MT6139B*/      {
+/*MT6139B*/         if(arfcn<=69)
+/*MT6139B*/         {  if(arfcn<=4)
+/*MT6139B*/            {                                /* ARFCN : 0~4     */
+/*MT6139B*/                *rfN = (71L<<12) | ((arfcn+60)<<5) | 0x100001L;
+/*MT6139B*/            }
+/*MT6139B*/            else
+/*MT6139B*/            {                              /* ARFCN : 5~69     */
+/*MT6139B*/                *rfN = (72L<<12) | ((arfcn-5)<<5) | 0x100001L;
+/*MT6139B*/            }
+/*MT6139B*/         }
+/*MT6139B*/         else
+/*MT6139B*/         {  if(arfcn<=124)
+/*MT6139B*/            {                                /* ARFCN : 70~124     */
+/*MT6139B*/                *rfN = (73L<<12) | ((arfcn-70)<<5) | 0x100001L;
+/*MT6139B*/            }
+/*MT6139B*/            else
+/*MT6139B*/            {                              /* ARFCN : 975~1023     */
+/*MT6139B*/                *rfN = (71L<<12) | ((arfcn-964)<<5) | 0x100001L;
+/*MT6139B*/            }
+/*MT6139B*/         }
+/*MT6139B*/
+/*MT6139B*/         break;
+/*MT6139B*/      }
+/*MT6139B*/      case  FrequencyBand1800 :
+/*MT6139B*/      {
+/*MT6139B*/         if(arfcn<=715)
+/*MT6139B*/         {  if(arfcn<=585)
+/*MT6139B*/            {                                /* ARFCN : 512~585     */
+/*MT6139B*/                *rfN = (69L<<12) | ((arfcn-456)<<4) | 0x200001L;
+/*MT6139B*/            }
+/*MT6139B*/            else
+/*MT6139B*/            {                              /* ARFCN : 586~715     */
+/*MT6139B*/                *rfN = (70L<<12) | ((arfcn-586)<<4) | 0x200001L;
+/*MT6139B*/            }
+/*MT6139B*/         }
+/*MT6139B*/         else
+/*MT6139B*/         {  if(arfcn<=845)
+/*MT6139B*/            {                                /* ARFCN : 716~845     */
+/*MT6139B*/                *rfN = (71L<<12) | ((arfcn-716)<<4) | 0x200001L;
+/*MT6139B*/            }
+/*MT6139B*/            else
+/*MT6139B*/            {                              /* ARFCN : 846~885     */
+/*MT6139B*/                *rfN = (72L<<12) | ((arfcn-846)<<4) | 0x200001L;
+/*MT6139B*/            }
+/*MT6139B*/         }
+/*MT6139B*/
+/*MT6139B*/         break;
+/*MT6139B*/      }
+/*MT6139B*/      case  FrequencyBand1900 :
+/*MT6139B*/      {
+/*MT6139B*/         if(arfcn<=740)
+/*MT6139B*/         {  if(arfcn<=610)
+/*MT6139B*/            {                                /* ARFCN : 512~610     */
+/*MT6139B*/                *rfN = (74L<<12) | ((arfcn-481)<<4) | 0x300001L;
+/*MT6139B*/            }
+/*MT6139B*/            else
+/*MT6139B*/            {                               /* ARFCN : 611~740     */
+/*MT6139B*/                *rfN = (75L<<12) | ((arfcn-611)<<4) | 0x300001L;
+/*MT6139B*/            }
+/*MT6139B*/         }
+/*MT6139B*/         else
+/*MT6139B*/         {
+/*MT6139B*/                                            /* ARFCN : 741~810     */
+/*MT6139B*/            *rfN = (76L<<12) | ((arfcn-741)<<4) | 0x300001L;
+/*MT6139B*/
+/*MT6139B*/         }
+/*MT6139B*/
+/*MT6139B*/         break;
+/*MT6139B*/      }
+/*MT6139B*/      default :
+/*MT6139B*/      {
+/*MT6139B*/         break;
+/*MT6139B*/      }
+/*MT6139B*/   }
+/*MT6139B*/   *ifN = 0;
+/*MT6139B*/}
+/*MT6139B*//* =========================================================================== */
+/*MT6139B*/
+/*MT6139B*/void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6139B*/{
+/*MT6139B*/   switch(rf_band)
+/*MT6139B*/   {
+/*MT6139B*/      case  FrequencyBand850 :
+/*MT6139B*/      {
+/*MT6139B*/         if(arfcn<=231)
+/*MT6139B*/         {  if(arfcn<=166)
+/*MT6139B*/            {                                /* ARFCN : 128~166     */
+/*MT6139B*/             //   Nfrac = (arfcn-128)<<1+52;
+/*MT6139B*/             //   *rfN = (63L<<12) | (Nfrac<<4) | 0x80001L;
+/*MT6139B*/                *rfN = (63L<<12) | ((arfcn-102)<<5) | 0x080001L; /* 0x080001L; */
+/*MT6139B*/            }
+/*MT6139B*/            else
+/*MT6139B*/            {                              /* ARFCN : 167~231     */
+/*MT6139B*/                *rfN = (64L<<12) | ((arfcn-167)<<5) | 0x080001L; /* 0x080001L; */
+/*MT6139B*/            }
+/*MT6139B*/         }
+/*MT6139B*/         else
+/*MT6139B*/         {                                 /* ARFCN : 232~251     */
+/*MT6139B*/                *rfN = (65L<<12) | ((arfcn-232)<<5) | 0x080001L; /* 0x080001L; */
+/*MT6139B*/         }
+/*MT6139B*/
+/*MT6139B*/         break;
+/*MT6139B*/      }
+/*MT6139B*/      case  FrequencyBand900 :
+/*MT6139B*/      {
+/*MT6139B*/         if(arfcn<=124)
+/*MT6139B*/         {  if(arfcn<=99)
+/*MT6139B*/            {  if(arfcn<=34)
+/*MT6139B*/               {                                /* ARFCN : 0~34     */
+/*MT6139B*/                   *rfN = (68L<<12) | ((arfcn+30)<<5) | 0x180001L; /* 0x180001L; */
+/*MT6139B*/               }
+/*MT6139B*/               else
+/*MT6139B*/               {                                /* ARFCN : 35~99     */
+/*MT6139B*/                   *rfN = (69L<<12) | ((arfcn-35)<<5) | 0x180001L; /* 0x180001L; */
+/*MT6139B*/               }
+/*MT6139B*/            }
+/*MT6139B*/            else
+/*MT6139B*/            {                              /* ARFCN : 100~124     */
+/*MT6139B*/                *rfN = (70L<<12) | ((arfcn-100)<<5) | 0x180001L; /* 0x180001L; */
+/*MT6139B*/            }
+/*MT6139B*/         }
+/*MT6139B*/         else
+/*MT6139B*/         {  if(arfcn<=993)
+/*MT6139B*/            {                                /* ARFCN : 975~993     */
+/*MT6139B*/                *rfN = (67L<<12) | ((arfcn-929)<<5) | 0x180001L; /* 0x180001L; */
+/*MT6139B*/            }
+/*MT6139B*/            else
+/*MT6139B*/            {                              /* ARFCN : 994~1023     */
+/*MT6139B*/                *rfN = (68L<<12) | ((arfcn-994)<<5) | 0x180001L; /* 0x080001L; */
+/*MT6139B*/            }
+/*MT6139B*/         }
+/*MT6139B*/
+/*MT6139B*/         break;
+/*MT6139B*/      }
+/*MT6139B*/      case  FrequencyBand1800 :
+/*MT6139B*/      {
+/*MT6139B*/         if(arfcn<=670)
+/*MT6139B*/         {  if(arfcn<=540)
+/*MT6139B*/            {                                /* ARFCN : 512~540     */
+/*MT6139B*/                *rfN = (65L<<12) | ((arfcn-411)<<4) | 0x200001L; /* 0x280001L; */
+/*MT6139B*/            }
+/*MT6139B*/            else
+/*MT6139B*/            {                              /* ARFCN : 541~670     */
+/*MT6139B*/                *rfN = (66L<<12) | ((arfcn-541)<<4) | 0x200001L; /* 0x280001L; */
+/*MT6139B*/            }
+/*MT6139B*/         }
+/*MT6139B*/         else
+/*MT6139B*/         {  if(arfcn<=800)
+/*MT6139B*/            {                                /* ARFCN : 671~800     */
+/*MT6139B*/                *rfN = (67L<<12) | ((arfcn-671)<<4) | 0x200001L; /* 0x280001L; */
+/*MT6139B*/            }
+/*MT6139B*/            else
+/*MT6139B*/            {                              /* ARFCN : 801~885     */
+/*MT6139B*/                *rfN = (68L<<12) | ((arfcn-801)<<4) | 0x200001L; /* 0x280001L; */
+/*MT6139B*/            }
+/*MT6139B*/         }
+/*MT6139B*/
+/*MT6139B*/         break;
+/*MT6139B*/      }
+/*MT6139B*/      case  FrequencyBand1900 :
+/*MT6139B*/      {
+/*MT6139B*/         if(arfcn<=750)
+/*MT6139B*/         {  if(arfcn<=620)
+/*MT6139B*/            {                                /* ARFCN : 512~620     */
+/*MT6139B*/                *rfN = (71L<<12) | ((arfcn-491)<<4) | 0x300001L; /* 0x380001L; */
+/*MT6139B*/            }
+/*MT6139B*/            else
+/*MT6139B*/            {                               /* ARFCN : 621~750     */
+/*MT6139B*/                *rfN = (72L<<12) | ((arfcn-621)<<4) | 0x300001L; /* 0x380001L; */
+/*MT6139B*/            }
+/*MT6139B*/         }
+/*MT6139B*/         else
+/*MT6139B*/         {
+/*MT6139B*/                                            /* ARFCN : 751~810     */
+/*MT6139B*/            *rfN = (73L<<12) | ((arfcn-751)<<4) | 0x300001L; /* 0x380001L; */
+/*MT6139B*/
+/*MT6139B*/         }
+/*MT6139B*/
+/*MT6139B*/         break;
+/*MT6139B*/      }
+/*MT6139B*/      default :
+/*MT6139B*/      {
+/*MT6139B*/         break;
+/*MT6139B*/      }
+/*MT6139B*/   }
+/*MT6139B*/   *ifN = 0;
+/*MT6139B*/}
+/*MT6139B*//* =========================================================================== */
+#endif
+
+#if IS_RF_MT6139C
+/*MT6139C*/void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6139C*/{
+/*MT6139C*/   switch(rf_band)
+/*MT6139C*/   {
+/*MT6139C*/      case  FrequencyBand850 :
+/*MT6139C*/      {
+/*MT6139C*/         if(arfcn<=201)
+/*MT6139C*/         {  if(arfcn<=136)
+/*MT6139C*/            {                                /* ARFCN : 128~136     */
+/*MT6139C*/                *rfN = (66L<<12) | ((arfcn-72)<<5) | 0x000001L;
+/*MT6139C*/            }
+/*MT6139C*/            else
+/*MT6139C*/            {                              /* ARFCN : 137~201     */
+/*MT6139C*/                *rfN = (67L<<12) | ((arfcn-137)<<5) | 0x000001L;
+/*MT6139C*/            }
+/*MT6139C*/         }
+/*MT6139C*/         else
+/*MT6139C*/         {                                 /* ARFCN : 202~251     */
+/*MT6139C*/                *rfN = (68L<<12) | ((arfcn-202)<<5) | 0x000001L;
+/*MT6139C*/         }
+/*MT6139C*/
+/*MT6139C*/         break;
+/*MT6139C*/      }
+/*MT6139C*/      case  FrequencyBand900 :
+/*MT6139C*/      {
+/*MT6139C*/         if(arfcn<=69)
+/*MT6139C*/         {  if(arfcn<=4)
+/*MT6139C*/            {                                /* ARFCN : 0~4     */
+/*MT6139C*/                *rfN = (71L<<12) | ((arfcn+60)<<5) | 0x100001L;
+/*MT6139C*/            }
+/*MT6139C*/            else
+/*MT6139C*/            {                              /* ARFCN : 5~69     */
+/*MT6139C*/                *rfN = (72L<<12) | ((arfcn-5)<<5) | 0x100001L;
+/*MT6139C*/            }
+/*MT6139C*/         }
+/*MT6139C*/         else
+/*MT6139C*/         {  if(arfcn<=124)
+/*MT6139C*/            {                                /* ARFCN : 70~124     */
+/*MT6139C*/                *rfN = (73L<<12) | ((arfcn-70)<<5) | 0x100001L;
+/*MT6139C*/            }
+/*MT6139C*/            else
+/*MT6139C*/            {                              /* ARFCN : 975~1023     */
+/*MT6139C*/                *rfN = (71L<<12) | ((arfcn-964)<<5) | 0x100001L;
+/*MT6139C*/            }
+/*MT6139C*/         }
+/*MT6139C*/
+/*MT6139C*/         break;
+/*MT6139C*/      }
+/*MT6139C*/      case  FrequencyBand1800 :
+/*MT6139C*/      {
+/*MT6139C*/         if(arfcn<=715)
+/*MT6139C*/         {  if(arfcn<=585)
+/*MT6139C*/            {                                /* ARFCN : 512~585     */
+/*MT6139C*/                *rfN = (69L<<12) | ((arfcn-456)<<4) | 0x200001L;
+/*MT6139C*/            }
+/*MT6139C*/            else
+/*MT6139C*/            {                              /* ARFCN : 586~715     */
+/*MT6139C*/                *rfN = (70L<<12) | ((arfcn-586)<<4) | 0x200001L;
+/*MT6139C*/            }
+/*MT6139C*/         }
+/*MT6139C*/         else
+/*MT6139C*/         {  if(arfcn<=845)
+/*MT6139C*/            {                                /* ARFCN : 716~845     */
+/*MT6139C*/                *rfN = (71L<<12) | ((arfcn-716)<<4) | 0x200001L;
+/*MT6139C*/            }
+/*MT6139C*/            else
+/*MT6139C*/            {                              /* ARFCN : 846~885     */
+/*MT6139C*/                *rfN = (72L<<12) | ((arfcn-846)<<4) | 0x200001L;
+/*MT6139C*/            }
+/*MT6139C*/         }
+/*MT6139C*/
+/*MT6139C*/         break;
+/*MT6139C*/      }
+/*MT6139C*/      case  FrequencyBand1900 :
+/*MT6139C*/      {
+/*MT6139C*/         if(arfcn<=740)
+/*MT6139C*/         {  if(arfcn<=610)
+/*MT6139C*/            {                                /* ARFCN : 512~610     */
+/*MT6139C*/                *rfN = (74L<<12) | ((arfcn-481)<<4) | 0x300001L;
+/*MT6139C*/            }
+/*MT6139C*/            else
+/*MT6139C*/            {                               /* ARFCN : 611~740     */
+/*MT6139C*/                *rfN = (75L<<12) | ((arfcn-611)<<4) | 0x300001L;
+/*MT6139C*/            }
+/*MT6139C*/         }
+/*MT6139C*/         else
+/*MT6139C*/         {
+/*MT6139C*/                                            /* ARFCN : 741~810     */
+/*MT6139C*/            *rfN = (76L<<12) | ((arfcn-741)<<4) | 0x300001L;
+/*MT6139C*/
+/*MT6139C*/         }
+/*MT6139C*/
+/*MT6139C*/         break;
+/*MT6139C*/      }
+/*MT6139C*/      default :
+/*MT6139C*/      {
+/*MT6139C*/         break;
+/*MT6139C*/      }
+/*MT6139C*/   }
+/*MT6139C*/   *ifN = 0;
+/*MT6139C*/}
+/*MT6139C*//* =========================================================================== */
+/*MT6139C*/
+/*MT6139C*/void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6139C*/{
+/*MT6139C*/   switch(rf_band)
+/*MT6139C*/   {
+/*MT6139C*/      case  FrequencyBand850 :
+/*MT6139C*/      {
+/*MT6139C*/         if(arfcn<=231)
+/*MT6139C*/         {  if(arfcn<=166)
+/*MT6139C*/            {                                /* ARFCN : 128~166     */
+/*MT6139C*/                *rfN = (63L<<12) | ((arfcn-102)<<5) | 0x480001L; /* 0x080001L; */
+/*MT6139C*/            }
+/*MT6139C*/            else
+/*MT6139C*/            {                              /* ARFCN : 167~231     */
+/*MT6139C*/                *rfN = (64L<<12) | ((arfcn-167)<<5) | 0x480001L; /* 0x080001L; */
+/*MT6139C*/            }
+/*MT6139C*/         }
+/*MT6139C*/         else
+/*MT6139C*/         {                                 /* ARFCN : 232~251     */
+/*MT6139C*/                *rfN = (65L<<12) | ((arfcn-232)<<5) | 0x480001L; /* 0x080001L; */
+/*MT6139C*/         }
+/*MT6139C*/
+/*MT6139C*/         break;
+/*MT6139C*/      }
+/*MT6139C*/      case  FrequencyBand900 :
+/*MT6139C*/      {
+/*MT6139C*/         if(arfcn<=124)
+/*MT6139C*/         {  if(arfcn<=99)
+/*MT6139C*/            {  if(arfcn<=34)
+/*MT6139C*/               {                                /* ARFCN : 0~34     */
+/*MT6139C*/                   *rfN = (68L<<12) | ((arfcn+30)<<5) | 0x580001L; /* 0x180001L; */
+/*MT6139C*/               }
+/*MT6139C*/               else
+/*MT6139C*/               {                                /* ARFCN : 35~99     */
+/*MT6139C*/                   *rfN = (69L<<12) | ((arfcn-35)<<5) | 0x580001L; /* 0x180001L; */
+/*MT6139C*/               }
+/*MT6139C*/            }
+/*MT6139C*/            else
+/*MT6139C*/            {                              /* ARFCN : 100~124     */
+/*MT6139C*/                *rfN = (70L<<12) | ((arfcn-100)<<5) | 0x580001L; /* 0x180001L; */
+/*MT6139C*/            }
+/*MT6139C*/         }
+/*MT6139C*/         else
+/*MT6139C*/         {  if(arfcn<=993)
+/*MT6139C*/            {                                /* ARFCN : 975~993     */
+/*MT6139C*/                *rfN = (67L<<12) | ((arfcn-929)<<5) | 0x580001L; /* 0x180001L; */
+/*MT6139C*/            }
+/*MT6139C*/            else
+/*MT6139C*/            {                              /* ARFCN : 994~1023     */
+/*MT6139C*/                *rfN = (68L<<12) | ((arfcn-994)<<5) | 0x580001L; /* 0x080001L; */
+/*MT6139C*/            }
+/*MT6139C*/         }
+/*MT6139C*/
+/*MT6139C*/         break;
+/*MT6139C*/      }
+/*MT6139C*/      case  FrequencyBand1800 :
+/*MT6139C*/      {
+/*MT6139C*/         if(arfcn<=670)
+/*MT6139C*/         {  if(arfcn<=540)
+/*MT6139C*/            {                                /* ARFCN : 512~540     */
+/*MT6139C*/                *rfN = (65L<<12) | ((arfcn-411)<<4) | 0x680001L; /* 0x280001L; */
+/*MT6139C*/            }
+/*MT6139C*/            else
+/*MT6139C*/            {                              /* ARFCN : 541~670     */
+/*MT6139C*/                *rfN = (66L<<12) | ((arfcn-541)<<4) | 0x680001L; /* 0x280001L; */
+/*MT6139C*/            }
+/*MT6139C*/         }
+/*MT6139C*/         else
+/*MT6139C*/         {  if(arfcn<=800)
+/*MT6139C*/            {                                /* ARFCN : 671~800     */
+/*MT6139C*/                *rfN = (67L<<12) | ((arfcn-671)<<4) | 0x680001L; /* 0x280001L; */
+/*MT6139C*/            }
+/*MT6139C*/            else
+/*MT6139C*/            {                              /* ARFCN : 801~885     */
+/*MT6139C*/                *rfN = (68L<<12) | ((arfcn-801)<<4) | 0x680001L; /* 0x280001L; */
+/*MT6139C*/            }
+/*MT6139C*/         }
+/*MT6139C*/
+/*MT6139C*/         break;
+/*MT6139C*/      }
+/*MT6139C*/      case  FrequencyBand1900 :
+/*MT6139C*/      {
+/*MT6139C*/         if(arfcn<=750)
+/*MT6139C*/         {  if(arfcn<=620)
+/*MT6139C*/            {                                /* ARFCN : 512~620     */
+/*MT6139C*/                *rfN = (71L<<12) | ((arfcn-491)<<4) | 0x780001L; /* 0x380001L; */
+/*MT6139C*/            }
+/*MT6139C*/            else
+/*MT6139C*/            {                               /* ARFCN : 621~750     */
+/*MT6139C*/                *rfN = (72L<<12) | ((arfcn-621)<<4) | 0x780001L; /* 0x380001L; */
+/*MT6139C*/            }
+/*MT6139C*/         }
+/*MT6139C*/         else
+/*MT6139C*/         {
+/*MT6139C*/                                            /* ARFCN : 751~810     */
+/*MT6139C*/            *rfN = (73L<<12) | ((arfcn-751)<<4) | 0x780001L; /* 0x380001L; */
+/*MT6139C*/
+/*MT6139C*/         }
+/*MT6139C*/
+/*MT6139C*/         break;
+/*MT6139C*/      }
+/*MT6139C*/      default :
+/*MT6139C*/      {
+/*MT6139C*/         break;
+/*MT6139C*/      }
+/*MT6139C*/   }
+/*MT6139C*/   *ifN = 0;
+/*MT6139C*/}
+/*MT6139C*//* =========================================================================== */
+#endif
+
+#if IS_RF_MT6139E
+/*MT6139E*/void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6139E*/{
+/*MT6139E*/   switch(rf_band)
+/*MT6139E*/   {
+/*MT6139E*/      case  FrequencyBand850 :
+/*MT6139E*/      {
+/*MT6139E*/         if(arfcn<=201)
+/*MT6139E*/         {  if(arfcn<=136)
+/*MT6139E*/            {                                /* ARFCN : 128~136     */
+/*MT6139E*/                *rfN = (66L<<12) | ((arfcn-72)<<5) | 0x400001L;
+/*MT6139E*/            }
+/*MT6139E*/            else
+/*MT6139E*/            {                              /* ARFCN : 137~201     */
+/*MT6139E*/                *rfN = (67L<<12) | ((arfcn-137)<<5) | 0x400001L;
+/*MT6139E*/            }
+/*MT6139E*/         }
+/*MT6139E*/         else
+/*MT6139E*/         {                                 /* ARFCN : 202~251     */
+/*MT6139E*/                *rfN = (68L<<12) | ((arfcn-202)<<5) | 0x400001L;
+/*MT6139E*/         }
+/*MT6139E*/
+/*MT6139E*/         // Get GSM850 signal from GSM900 input pins if flag=1
+/*MT6139E*/         if( BBTXParameters.bbrx_gsm850_gsm900_swap ) *rfN |= 0x100000L;
+/*MT6139E*/         break;
+/*MT6139E*/      }
+/*MT6139E*/      case  FrequencyBand900 :
+/*MT6139E*/      {
+/*MT6139E*/         if(arfcn<=69)
+/*MT6139E*/         {  if(arfcn<=4)
+/*MT6139E*/            {                                /* ARFCN : 0~4     */
+/*MT6139E*/                *rfN = (71L<<12) | ((arfcn+60)<<5) | 0x100001L;
+/*MT6139E*/            }
+/*MT6139E*/            else
+/*MT6139E*/            {                              /* ARFCN : 5~69     */
+/*MT6139E*/                *rfN = (72L<<12) | ((arfcn-5)<<5) | 0x100001L;
+/*MT6139E*/            }
+/*MT6139E*/         }
+/*MT6139E*/         else
+/*MT6139E*/         {  if(arfcn<=124)
+/*MT6139E*/            {                                /* ARFCN : 70~124     */
+/*MT6139E*/                *rfN = (73L<<12) | ((arfcn-70)<<5) | 0x100001L;
+/*MT6139E*/            }
+/*MT6139E*/            else
+/*MT6139E*/            {                              /* ARFCN : 975~1023     */
+/*MT6139E*/                *rfN = (71L<<12) | ((arfcn-964)<<5) | 0x100001L;
+/*MT6139E*/            }
+/*MT6139E*/         }
+/*MT6139E*/
+/*MT6139E*/         // Get GSM900 signal from GSM850 input pins if flag=1
+/*MT6139E*/         if( BBTXParameters.bbrx_gsm850_gsm900_swap )  *rfN &= (~(0x100000L));
+/*MT6139E*/
+/*MT6139E*/         break;
+/*MT6139E*/      }
+/*MT6139E*/      case  FrequencyBand1800 :
+/*MT6139E*/      {
+/*MT6139E*/         if(arfcn<=715)
+/*MT6139E*/         {  if(arfcn<=585)
+/*MT6139E*/            {                                /* ARFCN : 512~585     */
+/*MT6139E*/                *rfN = (69L<<12) | ((arfcn-456)<<4) | 0x200001L;
+/*MT6139E*/            }
+/*MT6139E*/            else
+/*MT6139E*/            {                              /* ARFCN : 586~715     */
+/*MT6139E*/                *rfN = (70L<<12) | ((arfcn-586)<<4) | 0x200001L;
+/*MT6139E*/            }
+/*MT6139E*/         }
+/*MT6139E*/         else
+/*MT6139E*/         {  if(arfcn<=845)
+/*MT6139E*/            {                                /* ARFCN : 716~845     */
+/*MT6139E*/                *rfN = (71L<<12) | ((arfcn-716)<<4) | 0x200001L;
+/*MT6139E*/            }
+/*MT6139E*/            else
+/*MT6139E*/            {                              /* ARFCN : 846~885     */
+/*MT6139E*/                *rfN = (72L<<12) | ((arfcn-846)<<4) | 0x200001L;
+/*MT6139E*/            }
+/*MT6139E*/         }
+/*MT6139E*/
+/*MT6139E*/         // Get PCS1900 signal from DCS1800 input pins if flag=1
+/*MT6139E*/         if( BBTXParameters.bbrx_dcs1800_pcs1900_swap ) *rfN |= 0x100000L;
+/*MT6139E*/         break;
+/*MT6139E*/      }
+/*MT6139E*/      case  FrequencyBand1900 :
+/*MT6139E*/      {
+/*MT6139E*/         if(arfcn<=740)
+/*MT6139E*/         {  if(arfcn<=610)
+/*MT6139E*/            {                                /* ARFCN : 512~610     */
+/*MT6139E*/                *rfN = (74L<<12) | ((arfcn-481)<<4) | 0x300001L;
+/*MT6139E*/            }
+/*MT6139E*/            else
+/*MT6139E*/            {                               /* ARFCN : 611~740     */
+/*MT6139E*/                *rfN = (75L<<12) | ((arfcn-611)<<4) | 0x300001L;
+/*MT6139E*/            }
+/*MT6139E*/         }
+/*MT6139E*/         else
+/*MT6139E*/         {
+/*MT6139E*/                                            /* ARFCN : 741~810     */
+/*MT6139E*/            *rfN = (76L<<12) | ((arfcn-741)<<4) | 0x300001L;
+/*MT6139E*/
+/*MT6139E*/         }
+/*MT6139E*/
+/*MT6139E*/         // Get DCS1800 signal from PCS1900 input pins if flag=1
+/*MT6139E*/         if( BBTXParameters.bbrx_dcs1800_pcs1900_swap)  *rfN &= (~(0x100000L));
+/*MT6139E*/         break;
+/*MT6139E*/      }
+/*MT6139E*/      default :
+/*MT6139E*/      {
+/*MT6139E*/         break;
+/*MT6139E*/      }
+/*MT6139E*/   }
+/*MT6139E*/   *ifN = 0;
+/*MT6139E*/}
+/*MT6139E*//* =========================================================================== */
+/*MT6139E*/
+/*MT6139E*/void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6139E*/{
+/*MT6139E*/   switch(rf_band)
+/*MT6139E*/   {
+/*MT6139E*/      case  FrequencyBand850 :
+/*MT6139E*/      {
+/*MT6139E*/         if(arfcn<=231)
+/*MT6139E*/         {  if(arfcn<=166)
+/*MT6139E*/            {                                /* ARFCN : 128~166     */
+/*MT6139E*/                *rfN = (63L<<12) | ((arfcn-102)<<5) | 0x080001L; /* 0x080001L; */
+/*MT6139E*/            }
+/*MT6139E*/            else
+/*MT6139E*/            {                              /* ARFCN : 167~231     */
+/*MT6139E*/                *rfN = (64L<<12) | ((arfcn-167)<<5) | 0x080001L; /* 0x080001L; */
+/*MT6139E*/            }
+/*MT6139E*/         }
+/*MT6139E*/         else
+/*MT6139E*/         {                                 /* ARFCN : 232~251     */
+/*MT6139E*/                *rfN = (65L<<12) | ((arfcn-232)<<5) | 0x080001L; /* 0x080001L; */
+/*MT6139E*/         }
+/*MT6139E*/
+/*MT6139E*/         break;
+/*MT6139E*/      }
+/*MT6139E*/      case  FrequencyBand900 :
+/*MT6139E*/      {
+/*MT6139E*/         if(arfcn<=124)
+/*MT6139E*/         {  if(arfcn<=99)
+/*MT6139E*/            {  if(arfcn<=34)
+/*MT6139E*/               {                                /* ARFCN : 0~34     */
+/*MT6139E*/                   *rfN = (68L<<12) | ((arfcn+30)<<5) | 0x180001L; /* 0x180001L; */
+/*MT6139E*/               }
+/*MT6139E*/               else
+/*MT6139E*/               {                                /* ARFCN : 35~99     */
+/*MT6139E*/                   *rfN = (69L<<12) | ((arfcn-35)<<5) | 0x180001L; /* 0x180001L; */
+/*MT6139E*/               }
+/*MT6139E*/            }
+/*MT6139E*/            else
+/*MT6139E*/            {                              /* ARFCN : 100~124     */
+/*MT6139E*/                *rfN = (70L<<12) | ((arfcn-100)<<5) | 0x180001L; /* 0x180001L; */
+/*MT6139E*/            }
+/*MT6139E*/         }
+/*MT6139E*/         else
+/*MT6139E*/         {  if(arfcn<=993)
+/*MT6139E*/            {                                /* ARFCN : 975~993     */
+/*MT6139E*/                *rfN = (67L<<12) | ((arfcn-929)<<5) | 0x180001L; /* 0x180001L; */
+/*MT6139E*/            }
+/*MT6139E*/            else
+/*MT6139E*/            {                              /* ARFCN : 994~1023     */
+/*MT6139E*/                *rfN = (68L<<12) | ((arfcn-994)<<5) | 0x180001L; /* 0x080001L; */
+/*MT6139E*/            }
+/*MT6139E*/         }
+/*MT6139E*/
+/*MT6139E*/         break;
+/*MT6139E*/      }
+/*MT6139E*/      case  FrequencyBand1800 :
+/*MT6139E*/      {
+/*MT6139E*/         if(arfcn<=670)
+/*MT6139E*/         {  if(arfcn<=540)
+/*MT6139E*/            {                                /* ARFCN : 512~540     */
+/*MT6139E*/                *rfN = (65L<<12) | ((arfcn-411)<<4) | 0x680001L; /* 0x280001L; */
+/*MT6139E*/            }
+/*MT6139E*/            else
+/*MT6139E*/            {                              /* ARFCN : 541~670     */
+/*MT6139E*/                *rfN = (66L<<12) | ((arfcn-541)<<4) | 0x680001L; /* 0x280001L; */
+/*MT6139E*/            }
+/*MT6139E*/         }
+/*MT6139E*/         else
+/*MT6139E*/         {  if(arfcn<=800)
+/*MT6139E*/            {                                /* ARFCN : 671~800     */
+/*MT6139E*/                *rfN = (67L<<12) | ((arfcn-671)<<4) | 0x680001L; /* 0x280001L; */
+/*MT6139E*/            }
+/*MT6139E*/            else
+/*MT6139E*/            {                              /* ARFCN : 801~885     */
+/*MT6139E*/                *rfN = (68L<<12) | ((arfcn-801)<<4) | 0x680001L; /* 0x280001L; */
+/*MT6139E*/            }
+/*MT6139E*/         }
+/*MT6139E*/
+/*MT6139E*/         break;
+/*MT6139E*/      }
+/*MT6139E*/      case  FrequencyBand1900 :
+/*MT6139E*/      {
+/*MT6139E*/         if(arfcn<=750)
+/*MT6139E*/         {  if(arfcn<=620)
+/*MT6139E*/            {                                /* ARFCN : 512~620     */
+/*MT6139E*/                *rfN = (71L<<12) | ((arfcn-491)<<4) | 0x780001L; /* 0x380001L; */
+/*MT6139E*/            }
+/*MT6139E*/            else
+/*MT6139E*/            {                               /* ARFCN : 621~750     */
+/*MT6139E*/                *rfN = (72L<<12) | ((arfcn-621)<<4) | 0x780001L; /* 0x380001L; */
+/*MT6139E*/            }
+/*MT6139E*/         }
+/*MT6139E*/         else
+/*MT6139E*/         {
+/*MT6139E*/                                            /* ARFCN : 751~810     */
+/*MT6139E*/            *rfN = (73L<<12) | ((arfcn-751)<<4) | 0x780001L; /* 0x380001L; */
+/*MT6139E*/
+/*MT6139E*/         }
+/*MT6139E*/
+/*MT6139E*/         break;
+/*MT6139E*/      }
+/*MT6139E*/      default :
+/*MT6139E*/      {
+/*MT6139E*/         break;
+/*MT6139E*/      }
+/*MT6139E*/   }
+/*MT6139E*/   *ifN = 0;
+/*MT6139E*/}
+/*MT6139E*//* =========================================================================== */
+#endif
+
+#if IS_RF_MT6140A
+/*MT6140A*/void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6140A*/{
+/*MT6140A*/   switch(rf_band)
+/*MT6140A*/   {
+/*MT6140A*/      case  FrequencyBand850 :
+/*MT6140A*/      {
+/*MT6140A*/         if(arfcn<=201)
+/*MT6140A*/         {  if(arfcn<=136)
+/*MT6140A*/            {                                /* ARFCN : 128~136     */
+/*MT6140A*/                *rfN = (66L<<12) | ((arfcn-72)<<5) | 0x000001L;
+/*MT6140A*/            }
+/*MT6140A*/            else
+/*MT6140A*/            {                              /* ARFCN : 137~201     */
+/*MT6140A*/                *rfN = (67L<<12) | ((arfcn-137)<<5) | 0x000001L;
+/*MT6140A*/            }
+/*MT6140A*/         }
+/*MT6140A*/         else
+/*MT6140A*/         {                                 /* ARFCN : 202~251     */
+/*MT6140A*/                *rfN = (68L<<12) | ((arfcn-202)<<5) | 0x000001L;
+/*MT6140A*/         }
+/*MT6140A*/
+/*MT6140A*/         break;
+/*MT6140A*/      }
+/*MT6140A*/      case  FrequencyBand900 :
+/*MT6140A*/      {
+/*MT6140A*/         if(arfcn<=69)
+/*MT6140A*/         {  if(arfcn<=4)
+/*MT6140A*/            {                                /* ARFCN : 0~4     */
+/*MT6140A*/                *rfN = (71L<<12) | ((arfcn+60)<<5) | 0x100001L;
+/*MT6140A*/            }
+/*MT6140A*/            else
+/*MT6140A*/            {                              /* ARFCN : 5~69     */
+/*MT6140A*/                *rfN = (72L<<12) | ((arfcn-5)<<5) | 0x100001L;
+/*MT6140A*/            }
+/*MT6140A*/         }
+/*MT6140A*/         else
+/*MT6140A*/         {  if(arfcn<=124)
+/*MT6140A*/            {                                /* ARFCN : 70~124     */
+/*MT6140A*/                *rfN = (73L<<12) | ((arfcn-70)<<5) | 0x100001L;
+/*MT6140A*/            }
+/*MT6140A*/            else
+/*MT6140A*/            {                              /* ARFCN : 975~1023     */
+/*MT6140A*/                *rfN = (71L<<12) | ((arfcn-964)<<5) | 0x100001L;
+/*MT6140A*/            }
+/*MT6140A*/         }
+/*MT6140A*/
+/*MT6140A*/         break;
+/*MT6140A*/      }
+/*MT6140A*/      case  FrequencyBand1800 :
+/*MT6140A*/      {
+/*MT6140A*/         if(arfcn<=715)
+/*MT6140A*/         {  if(arfcn<=585)
+/*MT6140A*/            {                                /* ARFCN : 512~585     */
+/*MT6140A*/                *rfN = (69L<<12) | ((arfcn-456)<<4) | 0x200001L;
+/*MT6140A*/            }
+/*MT6140A*/            else
+/*MT6140A*/            {                              /* ARFCN : 586~715     */
+/*MT6140A*/                *rfN = (70L<<12) | ((arfcn-586)<<4) | 0x200001L;
+/*MT6140A*/            }
+/*MT6140A*/         }
+/*MT6140A*/         else
+/*MT6140A*/         {  if(arfcn<=845)
+/*MT6140A*/            {                                /* ARFCN : 716~845     */
+/*MT6140A*/                *rfN = (71L<<12) | ((arfcn-716)<<4) | 0x200001L;
+/*MT6140A*/            }
+/*MT6140A*/            else
+/*MT6140A*/            {                              /* ARFCN : 846~885     */
+/*MT6140A*/                *rfN = (72L<<12) | ((arfcn-846)<<4) | 0x200001L;
+/*MT6140A*/            }
+/*MT6140A*/         }
+/*MT6140A*/
+/*MT6140A*/         break;
+/*MT6140A*/      }
+/*MT6140A*/      case  FrequencyBand1900 :
+/*MT6140A*/      {
+/*MT6140A*/         if(arfcn<=740)
+/*MT6140A*/         {  if(arfcn<=610)
+/*MT6140A*/            {                                /* ARFCN : 512~610     */
+/*MT6140A*/                *rfN = (74L<<12) | ((arfcn-481)<<4) | 0x300001L;
+/*MT6140A*/            }
+/*MT6140A*/            else
+/*MT6140A*/            {                               /* ARFCN : 611~740     */
+/*MT6140A*/                *rfN = (75L<<12) | ((arfcn-611)<<4) | 0x300001L;
+/*MT6140A*/            }
+/*MT6140A*/         }
+/*MT6140A*/         else
+/*MT6140A*/         {
+/*MT6140A*/                                            /* ARFCN : 741~810     */
+/*MT6140A*/            *rfN = (76L<<12) | ((arfcn-741)<<4) | 0x300001L;
+/*MT6140A*/
+/*MT6140A*/         }
+/*MT6140A*/
+/*MT6140A*/         break;
+/*MT6140A*/      }
+/*MT6140A*/      default :
+/*MT6140A*/      {
+/*MT6140A*/         break;
+/*MT6140A*/      }
+/*MT6140A*/   }
+/*MT6140A*/   *ifN = 0;
+/*MT6140A*/}
+/*MT6140A*//* =========================================================================== */
+/*MT6140A*/
+/*MT6140A*/void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6140A*/{
+/*MT6140A*/   switch(rf_band)
+/*MT6140A*/   {
+/*MT6140A*/      case  FrequencyBand850 :
+/*MT6140A*/      {
+/*MT6140A*/         if(arfcn<=231)
+/*MT6140A*/         {  if(arfcn<=166)
+/*MT6140A*/            {                                /* ARFCN : 128~166     */
+/*MT6140A*/                *rfN = (63L<<12) | ((arfcn-102)<<5) | 0x480001L; /* 0x080001L; */
+/*MT6140A*/            }
+/*MT6140A*/            else
+/*MT6140A*/            {                              /* ARFCN : 167~231     */
+/*MT6140A*/                *rfN = (64L<<12) | ((arfcn-167)<<5) | 0x480001L; /* 0x080001L; */
+/*MT6140A*/            }
+/*MT6140A*/         }
+/*MT6140A*/         else
+/*MT6140A*/         {                                 /* ARFCN : 232~251     */
+/*MT6140A*/                *rfN = (65L<<12) | ((arfcn-232)<<5) | 0x480001L; /* 0x080001L; */
+/*MT6140A*/         }
+/*MT6140A*/
+/*MT6140A*/         break;
+/*MT6140A*/      }
+/*MT6140A*/      case  FrequencyBand900 :
+/*MT6140A*/      {
+/*MT6140A*/         if(arfcn<=124)
+/*MT6140A*/         {  if(arfcn<=99)
+/*MT6140A*/            {  if(arfcn<=34)
+/*MT6140A*/               {                                /* ARFCN : 0~34     */
+/*MT6140A*/                   *rfN = (68L<<12) | ((arfcn+30)<<5) | 0x580001L; /* 0x180001L; */
+/*MT6140A*/               }
+/*MT6140A*/               else
+/*MT6140A*/               {                                /* ARFCN : 35~99     */
+/*MT6140A*/                   *rfN = (69L<<12) | ((arfcn-35)<<5) | 0x580001L; /* 0x180001L; */
+/*MT6140A*/               }
+/*MT6140A*/            }
+/*MT6140A*/            else
+/*MT6140A*/            {                              /* ARFCN : 100~124     */
+/*MT6140A*/                *rfN = (70L<<12) | ((arfcn-100)<<5) | 0x580001L; /* 0x180001L; */
+/*MT6140A*/            }
+/*MT6140A*/         }
+/*MT6140A*/         else
+/*MT6140A*/         {  if(arfcn<=993)
+/*MT6140A*/            {                                /* ARFCN : 975~993     */
+/*MT6140A*/                *rfN = (67L<<12) | ((arfcn-929)<<5) | 0x580001L; /* 0x180001L; */
+/*MT6140A*/            }
+/*MT6140A*/            else
+/*MT6140A*/            {                              /* ARFCN : 994~1023     */
+/*MT6140A*/                *rfN = (68L<<12) | ((arfcn-994)<<5) | 0x580001L; /* 0x080001L; */
+/*MT6140A*/            }
+/*MT6140A*/         }
+/*MT6140A*/
+/*MT6140A*/         break;
+/*MT6140A*/      }
+/*MT6140A*/      case  FrequencyBand1800 :
+/*MT6140A*/      {
+/*MT6140A*/         if(arfcn<=670)
+/*MT6140A*/         {  if(arfcn<=540)
+/*MT6140A*/            {                                /* ARFCN : 512~540     */
+/*MT6140A*/                *rfN = (65L<<12) | ((arfcn-411)<<4) | 0x600001L; /* 0x280001L; */
+/*MT6140A*/            }
+/*MT6140A*/            else
+/*MT6140A*/            {                              /* ARFCN : 541~670     */
+/*MT6140A*/                *rfN = (66L<<12) | ((arfcn-541)<<4) | 0x600001L; /* 0x280001L; */
+/*MT6140A*/            }
+/*MT6140A*/         }
+/*MT6140A*/         else
+/*MT6140A*/         {  if(arfcn<=800)
+/*MT6140A*/            {                                /* ARFCN : 671~800     */
+/*MT6140A*/                *rfN = (67L<<12) | ((arfcn-671)<<4) | 0x600001L; /* 0x280001L; */
+/*MT6140A*/            }
+/*MT6140A*/            else
+/*MT6140A*/            {                              /* ARFCN : 801~885     */
+/*MT6140A*/                *rfN = (68L<<12) | ((arfcn-801)<<4) | 0x600001L; /* 0x280001L; */
+/*MT6140A*/            }
+/*MT6140A*/         }
+/*MT6140A*/
+/*MT6140A*/         break;
+/*MT6140A*/      }
+/*MT6140A*/      case  FrequencyBand1900 :
+/*MT6140A*/      {
+/*MT6140A*/         if(arfcn<=750)
+/*MT6140A*/         {  if(arfcn<=620)
+/*MT6140A*/            {                                /* ARFCN : 512~620     */
+/*MT6140A*/                *rfN = (71L<<12) | ((arfcn-491)<<4) | 0x700001L; /* 0x380001L; */
+/*MT6140A*/            }
+/*MT6140A*/            else
+/*MT6140A*/            {                               /* ARFCN : 621~750     */
+/*MT6140A*/                *rfN = (72L<<12) | ((arfcn-621)<<4) | 0x700001L; /* 0x380001L; */
+/*MT6140A*/            }
+/*MT6140A*/         }
+/*MT6140A*/         else
+/*MT6140A*/         {
+/*MT6140A*/                                            /* ARFCN : 751~810     */
+/*MT6140A*/            *rfN = (73L<<12) | ((arfcn-751)<<4) | 0x700001L; /* 0x380001L; */
+/*MT6140A*/
+/*MT6140A*/         }
+/*MT6140A*/
+/*MT6140A*/         break;
+/*MT6140A*/      }
+/*MT6140A*/      default :
+/*MT6140A*/      {
+/*MT6140A*/         break;
+/*MT6140A*/      }
+/*MT6140A*/   }
+/*MT6140A*/   *ifN = 0;
+/*MT6140A*/}
+/*MT6140A*//* =========================================================================== */
+#endif
+
+#if IS_RF_MT6140B
+/*MT6140B*/void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6140B*/{
+/*MT6140B*/   switch(rf_band)
+/*MT6140B*/   {
+/*MT6140B*/      case  FrequencyBand850 :
+/*MT6140B*/      {
+/*MT6140B*/         if(arfcn<=201)
+/*MT6140B*/         {  if(arfcn<=136)
+/*MT6140B*/            {                                /* ARFCN : 128~136     */
+/*MT6140B*/                *rfN = (66L<<12) | ((arfcn-72)<<5) | 0x000001L;
+/*MT6140B*/            }
+/*MT6140B*/            else
+/*MT6140B*/            {                              /* ARFCN : 137~201     */
+/*MT6140B*/                *rfN = (67L<<12) | ((arfcn-137)<<5) | 0x000001L;
+/*MT6140B*/            }
+/*MT6140B*/         }
+/*MT6140B*/         else
+/*MT6140B*/         {                                 /* ARFCN : 202~251     */
+/*MT6140B*/                *rfN = (68L<<12) | ((arfcn-202)<<5) | 0x000001L;
+/*MT6140B*/         }
+/*MT6140B*/
+/*MT6140B*/         break;
+/*MT6140B*/      }
+/*MT6140B*/      case  FrequencyBand900 :
+/*MT6140B*/      {
+/*MT6140B*/         if(arfcn<=69)
+/*MT6140B*/         {  if(arfcn<=4)
+/*MT6140B*/            {                                /* ARFCN : 0~4     */
+/*MT6140B*/                *rfN = (71L<<12) | ((arfcn+60)<<5) | 0x100001L;
+/*MT6140B*/            }
+/*MT6140B*/            else
+/*MT6140B*/            {                              /* ARFCN : 5~69     */
+/*MT6140B*/                *rfN = (72L<<12) | ((arfcn-5)<<5) | 0x100001L;
+/*MT6140B*/            }
+/*MT6140B*/         }
+/*MT6140B*/         else
+/*MT6140B*/         {  if(arfcn<=124)
+/*MT6140B*/            {                                /* ARFCN : 70~124     */
+/*MT6140B*/                *rfN = (73L<<12) | ((arfcn-70)<<5) | 0x100001L;
+/*MT6140B*/            }
+/*MT6140B*/            else
+/*MT6140B*/            {                              /* ARFCN : 975~1023     */
+/*MT6140B*/                *rfN = (71L<<12) | ((arfcn-964)<<5) | 0x100001L;
+/*MT6140B*/            }
+/*MT6140B*/         }
+/*MT6140B*/
+/*MT6140B*/         break;
+/*MT6140B*/      }
+/*MT6140B*/      case  FrequencyBand1800 :
+/*MT6140B*/      {
+/*MT6140B*/         if(arfcn<=715)
+/*MT6140B*/         {  if(arfcn<=585)
+/*MT6140B*/            {                                /* ARFCN : 512~585     */
+/*MT6140B*/                *rfN = (69L<<12) | ((arfcn-456)<<4) | 0x200001L;
+/*MT6140B*/            }
+/*MT6140B*/            else
+/*MT6140B*/            {                              /* ARFCN : 586~715     */
+/*MT6140B*/                *rfN = (70L<<12) | ((arfcn-586)<<4) | 0x200001L;
+/*MT6140B*/            }
+/*MT6140B*/         }
+/*MT6140B*/         else
+/*MT6140B*/         {  if(arfcn<=845)
+/*MT6140B*/            {                                /* ARFCN : 716~845     */
+/*MT6140B*/                *rfN = (71L<<12) | ((arfcn-716)<<4) | 0x200001L;
+/*MT6140B*/            }
+/*MT6140B*/            else
+/*MT6140B*/            {                              /* ARFCN : 846~885     */
+/*MT6140B*/                *rfN = (72L<<12) | ((arfcn-846)<<4) | 0x200001L;
+/*MT6140B*/            }
+/*MT6140B*/         }
+/*MT6140B*/
+/*MT6140B*/         break;
+/*MT6140B*/      }
+/*MT6140B*/      case  FrequencyBand1900 :
+/*MT6140B*/      {
+/*MT6140B*/         if(arfcn<=740)
+/*MT6140B*/         {  if(arfcn<=610)
+/*MT6140B*/            {                                /* ARFCN : 512~610     */
+/*MT6140B*/                *rfN = (74L<<12) | ((arfcn-481)<<4) | 0x300001L;
+/*MT6140B*/            }
+/*MT6140B*/            else
+/*MT6140B*/            {                               /* ARFCN : 611~740     */
+/*MT6140B*/                *rfN = (75L<<12) | ((arfcn-611)<<4) | 0x300001L;
+/*MT6140B*/            }
+/*MT6140B*/         }
+/*MT6140B*/         else
+/*MT6140B*/         {
+/*MT6140B*/                                            /* ARFCN : 741~810     */
+/*MT6140B*/            *rfN = (76L<<12) | ((arfcn-741)<<4) | 0x300001L;
+/*MT6140B*/
+/*MT6140B*/         }
+/*MT6140B*/
+/*MT6140B*/         break;
+/*MT6140B*/      }
+/*MT6140B*/      default :
+/*MT6140B*/      {
+/*MT6140B*/         break;
+/*MT6140B*/      }
+/*MT6140B*/   }
+/*MT6140B*/   *ifN = 0;
+/*MT6140B*/}
+/*MT6140B*//* =========================================================================== */
+/*MT6140B*/
+/*MT6140B*/void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6140B*/{
+/*MT6140B*/   switch(rf_band)
+/*MT6140B*/   {
+/*MT6140B*/      case  FrequencyBand850 :
+/*MT6140B*/      {
+/*MT6140B*/         if(arfcn<=231)
+/*MT6140B*/         {  if(arfcn<=166)
+/*MT6140B*/            {                                /* ARFCN : 128~166     */
+/*MT6140B*/                *rfN = (63L<<12) | ((arfcn-102)<<5) | 0x480001L; /* 0x080001L; */
+/*MT6140B*/            }
+/*MT6140B*/            else
+/*MT6140B*/            {                              /* ARFCN : 167~231     */
+/*MT6140B*/                *rfN = (64L<<12) | ((arfcn-167)<<5) | 0x480001L; /* 0x080001L; */
+/*MT6140B*/            }
+/*MT6140B*/         }
+/*MT6140B*/         else
+/*MT6140B*/         {                                 /* ARFCN : 232~251     */
+/*MT6140B*/                *rfN = (65L<<12) | ((arfcn-232)<<5) | 0x480001L; /* 0x080001L; */
+/*MT6140B*/         }
+/*MT6140B*/
+/*MT6140B*/         break;
+/*MT6140B*/      }
+/*MT6140B*/      case  FrequencyBand900 :
+/*MT6140B*/      {
+/*MT6140B*/         if(arfcn<=124)
+/*MT6140B*/         {  if(arfcn<=99)
+/*MT6140B*/            {  if(arfcn<=34)
+/*MT6140B*/               {                                /* ARFCN : 0~34     */
+/*MT6140B*/                   *rfN = (68L<<12) | ((arfcn+30)<<5) | 0x580001L; /* 0x180001L; */
+/*MT6140B*/               }
+/*MT6140B*/               else
+/*MT6140B*/               {                                /* ARFCN : 35~99     */
+/*MT6140B*/                   *rfN = (69L<<12) | ((arfcn-35)<<5) | 0x580001L; /* 0x180001L; */
+/*MT6140B*/               }
+/*MT6140B*/            }
+/*MT6140B*/            else
+/*MT6140B*/            {                              /* ARFCN : 100~124     */
+/*MT6140B*/                *rfN = (70L<<12) | ((arfcn-100)<<5) | 0x580001L; /* 0x180001L; */
+/*MT6140B*/            }
+/*MT6140B*/         }
+/*MT6140B*/         else
+/*MT6140B*/         {  if(arfcn<=993)
+/*MT6140B*/            {                                /* ARFCN : 975~993     */
+/*MT6140B*/                *rfN = (67L<<12) | ((arfcn-929)<<5) | 0x580001L; /* 0x180001L; */
+/*MT6140B*/            }
+/*MT6140B*/            else
+/*MT6140B*/            {                              /* ARFCN : 994~1023     */
+/*MT6140B*/                *rfN = (68L<<12) | ((arfcn-994)<<5) | 0x580001L; /* 0x080001L; */
+/*MT6140B*/            }
+/*MT6140B*/         }
+/*MT6140B*/
+/*MT6140B*/         break;
+/*MT6140B*/      }
+/*MT6140B*/      case  FrequencyBand1800 :
+/*MT6140B*/      {
+/*MT6140B*/         if(arfcn<=670)
+/*MT6140B*/         {  if(arfcn<=540)
+/*MT6140B*/            {                                /* ARFCN : 512~540     */
+/*MT6140B*/                *rfN = (65L<<12) | ((arfcn-411)<<4) | 0x680001L; /* 0x280001L; */
+/*MT6140B*/            }
+/*MT6140B*/            else
+/*MT6140B*/            {                              /* ARFCN : 541~670     */
+/*MT6140B*/                *rfN = (66L<<12) | ((arfcn-541)<<4) | 0x680001L; /* 0x280001L; */
+/*MT6140B*/            }
+/*MT6140B*/         }
+/*MT6140B*/         else
+/*MT6140B*/         {  if(arfcn<=800)
+/*MT6140B*/            {                                /* ARFCN : 671~800     */
+/*MT6140B*/                *rfN = (67L<<12) | ((arfcn-671)<<4) | 0x680001L; /* 0x280001L; */
+/*MT6140B*/            }
+/*MT6140B*/            else
+/*MT6140B*/            {                              /* ARFCN : 801~885     */
+/*MT6140B*/                *rfN = (68L<<12) | ((arfcn-801)<<4) | 0x680001L; /* 0x280001L; */
+/*MT6140B*/            }
+/*MT6140B*/         }
+/*MT6140B*/
+/*MT6140B*/         break;
+/*MT6140B*/      }
+/*MT6140B*/      case  FrequencyBand1900 :
+/*MT6140B*/      {
+/*MT6140B*/         if(arfcn<=750)
+/*MT6140B*/         {  if(arfcn<=620)
+/*MT6140B*/            {                                /* ARFCN : 512~620     */
+/*MT6140B*/                *rfN = (71L<<12) | ((arfcn-491)<<4) | 0x780001L; /* 0x380001L; */
+/*MT6140B*/            }
+/*MT6140B*/            else
+/*MT6140B*/            {                               /* ARFCN : 621~750     */
+/*MT6140B*/                *rfN = (72L<<12) | ((arfcn-621)<<4) | 0x780001L; /* 0x380001L; */
+/*MT6140B*/            }
+/*MT6140B*/         }
+/*MT6140B*/         else
+/*MT6140B*/         {
+/*MT6140B*/                                            /* ARFCN : 751~810     */
+/*MT6140B*/            *rfN = (73L<<12) | ((arfcn-751)<<4) | 0x780001L; /* 0x380001L; */
+/*MT6140B*/
+/*MT6140B*/         }
+/*MT6140B*/
+/*MT6140B*/         break;
+/*MT6140B*/      }
+/*MT6140B*/      default :
+/*MT6140B*/      {
+/*MT6140B*/         break;
+/*MT6140B*/      }
+/*MT6140B*/   }
+/*MT6140B*/   *ifN = 0;
+/*MT6140B*/}
+/*MT6140B*//* =========================================================================== */
+#endif
+
+#if IS_RF_MT6140C
+/*MT6140C*/void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6140C*/{
+/*MT6140C*/   switch(rf_band)
+/*MT6140C*/   {
+/*MT6140C*/      case  FrequencyBand850 :
+/*MT6140C*/      {
+/*MT6140C*/         if(arfcn<=201)
+/*MT6140C*/         {  if(arfcn<=136)
+/*MT6140C*/            {                                /* ARFCN : 128~136     */
+/*MT6140C*/                *rfN = (66L<<12) | ((arfcn-72)<<5) | 0x000001L;
+/*MT6140C*/            }
+/*MT6140C*/            else
+/*MT6140C*/            {                              /* ARFCN : 137~201     */
+/*MT6140C*/                *rfN = (67L<<12) | ((arfcn-137)<<5) | 0x000001L;
+/*MT6140C*/            }
+/*MT6140C*/         }
+/*MT6140C*/         else
+/*MT6140C*/         {                                 /* ARFCN : 202~251     */
+/*MT6140C*/                *rfN = (68L<<12) | ((arfcn-202)<<5) | 0x000001L;
+/*MT6140C*/         }
+/*MT6140C*/
+/*MT6140C*/         break;
+/*MT6140C*/      }
+/*MT6140C*/      case  FrequencyBand900 :
+/*MT6140C*/      {
+/*MT6140C*/         if(arfcn<=69)
+/*MT6140C*/         {  if(arfcn<=4)
+/*MT6140C*/            {                                /* ARFCN : 0~4     */
+/*MT6140C*/                *rfN = (71L<<12) | ((arfcn+60)<<5) | 0x100001L;
+/*MT6140C*/            }
+/*MT6140C*/            else
+/*MT6140C*/            {                              /* ARFCN : 5~69     */
+/*MT6140C*/                *rfN = (72L<<12) | ((arfcn-5)<<5) | 0x100001L;
+/*MT6140C*/            }
+/*MT6140C*/         }
+/*MT6140C*/         else
+/*MT6140C*/         {  if(arfcn<=124)
+/*MT6140C*/            {                                /* ARFCN : 70~124     */
+/*MT6140C*/                *rfN = (73L<<12) | ((arfcn-70)<<5) | 0x100001L;
+/*MT6140C*/            }
+/*MT6140C*/            else
+/*MT6140C*/            {                              /* ARFCN : 975~1023     */
+/*MT6140C*/                *rfN = (71L<<12) | ((arfcn-964)<<5) | 0x100001L;
+/*MT6140C*/            }
+/*MT6140C*/         }
+/*MT6140C*/
+/*MT6140C*/         break;
+/*MT6140C*/      }
+/*MT6140C*/      case  FrequencyBand1800 :
+/*MT6140C*/      {
+/*MT6140C*/         if(arfcn<=715)
+/*MT6140C*/         {  if(arfcn<=585)
+/*MT6140C*/            {                                /* ARFCN : 512~585     */
+/*MT6140C*/                *rfN = (69L<<12) | ((arfcn-456)<<4) | 0x200001L;
+/*MT6140C*/            }
+/*MT6140C*/            else
+/*MT6140C*/            {                              /* ARFCN : 586~715     */
+/*MT6140C*/                *rfN = (70L<<12) | ((arfcn-586)<<4) | 0x200001L;
+/*MT6140C*/            }
+/*MT6140C*/         }
+/*MT6140C*/         else
+/*MT6140C*/         {  if(arfcn<=845)
+/*MT6140C*/            {                                /* ARFCN : 716~845     */
+/*MT6140C*/                *rfN = (71L<<12) | ((arfcn-716)<<4) | 0x200001L;
+/*MT6140C*/            }
+/*MT6140C*/            else
+/*MT6140C*/            {                              /* ARFCN : 846~885     */
+/*MT6140C*/                *rfN = (72L<<12) | ((arfcn-846)<<4) | 0x200001L;
+/*MT6140C*/            }
+/*MT6140C*/         }
+/*MT6140C*/
+/*MT6140C*/         break;
+/*MT6140C*/      }
+/*MT6140C*/      case  FrequencyBand1900 :
+/*MT6140C*/      {
+/*MT6140C*/         if(arfcn<=740)
+/*MT6140C*/         {  if(arfcn<=610)
+/*MT6140C*/            {                                /* ARFCN : 512~610     */
+/*MT6140C*/                *rfN = (74L<<12) | ((arfcn-481)<<4) | 0x300001L;
+/*MT6140C*/            }
+/*MT6140C*/            else
+/*MT6140C*/            {                               /* ARFCN : 611~740     */
+/*MT6140C*/                *rfN = (75L<<12) | ((arfcn-611)<<4) | 0x300001L;
+/*MT6140C*/            }
+/*MT6140C*/         }
+/*MT6140C*/         else
+/*MT6140C*/         {
+/*MT6140C*/                                            /* ARFCN : 741~810     */
+/*MT6140C*/            *rfN = (76L<<12) | ((arfcn-741)<<4) | 0x300001L;
+/*MT6140C*/
+/*MT6140C*/         }
+/*MT6140C*/
+/*MT6140C*/         break;
+/*MT6140C*/      }
+/*MT6140C*/      default :
+/*MT6140C*/      {
+/*MT6140C*/         break;
+/*MT6140C*/      }
+/*MT6140C*/   }
+/*MT6140C*/   *ifN = 0;
+/*MT6140C*/}
+/*MT6140C*//* =========================================================================== */
+/*MT6140C*/
+/*MT6140C*/void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6140C*/{
+/*MT6140C*/   switch(rf_band)
+/*MT6140C*/   {
+/*MT6140C*/      case  FrequencyBand850 :
+/*MT6140C*/      {
+/*MT6140C*/         if(arfcn<=231)
+/*MT6140C*/         {  if(arfcn<=166)
+/*MT6140C*/            {                                /* ARFCN : 128~166     */
+/*MT6140C*/                *rfN = (63L<<12) | ((arfcn-102)<<5) | 0x480001L; /* 0x080001L; */
+/*MT6140C*/            }
+/*MT6140C*/            else
+/*MT6140C*/            {                              /* ARFCN : 167~231     */
+/*MT6140C*/                *rfN = (64L<<12) | ((arfcn-167)<<5) | 0x480001L; /* 0x080001L; */
+/*MT6140C*/            }
+/*MT6140C*/         }
+/*MT6140C*/         else
+/*MT6140C*/         {                                 /* ARFCN : 232~251     */
+/*MT6140C*/                *rfN = (65L<<12) | ((arfcn-232)<<5) | 0x480001L; /* 0x080001L; */
+/*MT6140C*/         }
+/*MT6140C*/
+/*MT6140C*/         break;
+/*MT6140C*/      }
+/*MT6140C*/      case  FrequencyBand900 :
+/*MT6140C*/      {
+/*MT6140C*/         if(arfcn<=124)
+/*MT6140C*/         {  if(arfcn<=99)
+/*MT6140C*/            {  if(arfcn<=34)
+/*MT6140C*/               {                                /* ARFCN : 0~34     */
+/*MT6140C*/                   *rfN = (68L<<12) | ((arfcn+30)<<5) | 0x580001L; /* 0x180001L; */
+/*MT6140C*/               }
+/*MT6140C*/               else
+/*MT6140C*/               {                                /* ARFCN : 35~99     */
+/*MT6140C*/                   *rfN = (69L<<12) | ((arfcn-35)<<5) | 0x580001L; /* 0x180001L; */
+/*MT6140C*/               }
+/*MT6140C*/            }
+/*MT6140C*/            else
+/*MT6140C*/            {                              /* ARFCN : 100~124     */
+/*MT6140C*/                *rfN = (70L<<12) | ((arfcn-100)<<5) | 0x580001L; /* 0x180001L; */
+/*MT6140C*/            }
+/*MT6140C*/         }
+/*MT6140C*/         else
+/*MT6140C*/         {  if(arfcn<=993)
+/*MT6140C*/            {                                /* ARFCN : 975~993     */
+/*MT6140C*/                *rfN = (67L<<12) | ((arfcn-929)<<5) | 0x580001L; /* 0x180001L; */
+/*MT6140C*/            }
+/*MT6140C*/            else
+/*MT6140C*/            {                              /* ARFCN : 994~1023     */
+/*MT6140C*/                *rfN = (68L<<12) | ((arfcn-994)<<5) | 0x580001L; /* 0x080001L; */
+/*MT6140C*/            }
+/*MT6140C*/         }
+/*MT6140C*/
+/*MT6140C*/         break;
+/*MT6140C*/      }
+/*MT6140C*/      case  FrequencyBand1800 :
+/*MT6140C*/      {
+/*MT6140C*/         if(arfcn<=670)
+/*MT6140C*/         {  if(arfcn<=540)
+/*MT6140C*/            {                                /* ARFCN : 512~540     */
+/*MT6140C*/                *rfN = (65L<<12) | ((arfcn-411)<<4) | 0x680001L; /* 0x280001L; */
+/*MT6140C*/            }
+/*MT6140C*/            else
+/*MT6140C*/            {                              /* ARFCN : 541~670     */
+/*MT6140C*/                *rfN = (66L<<12) | ((arfcn-541)<<4) | 0x680001L; /* 0x280001L; */
+/*MT6140C*/            }
+/*MT6140C*/         }
+/*MT6140C*/         else
+/*MT6140C*/         {  if(arfcn<=800)
+/*MT6140C*/            {                                /* ARFCN : 671~800     */
+/*MT6140C*/                *rfN = (67L<<12) | ((arfcn-671)<<4) | 0x680001L; /* 0x280001L; */
+/*MT6140C*/            }
+/*MT6140C*/            else
+/*MT6140C*/            {                              /* ARFCN : 801~885     */
+/*MT6140C*/                *rfN = (68L<<12) | ((arfcn-801)<<4) | 0x680001L; /* 0x280001L; */
+/*MT6140C*/            }
+/*MT6140C*/         }
+/*MT6140C*/
+/*MT6140C*/         break;
+/*MT6140C*/      }
+/*MT6140C*/      case  FrequencyBand1900 :
+/*MT6140C*/      {
+/*MT6140C*/         if(arfcn<=750)
+/*MT6140C*/         {  if(arfcn<=620)
+/*MT6140C*/            {                                /* ARFCN : 512~620     */
+/*MT6140C*/                *rfN = (71L<<12) | ((arfcn-491)<<4) | 0x780001L; /* 0x380001L; */
+/*MT6140C*/            }
+/*MT6140C*/            else
+/*MT6140C*/            {                               /* ARFCN : 621~750     */
+/*MT6140C*/                *rfN = (72L<<12) | ((arfcn-621)<<4) | 0x780001L; /* 0x380001L; */
+/*MT6140C*/            }
+/*MT6140C*/         }
+/*MT6140C*/         else
+/*MT6140C*/         {
+/*MT6140C*/                                            /* ARFCN : 751~810     */
+/*MT6140C*/            *rfN = (73L<<12) | ((arfcn-751)<<4) | 0x780001L; /* 0x380001L; */
+/*MT6140C*/
+/*MT6140C*/         }
+/*MT6140C*/
+/*MT6140C*/         break;
+/*MT6140C*/      }
+/*MT6140C*/      default :
+/*MT6140C*/      {
+/*MT6140C*/         break;
+/*MT6140C*/      }
+/*MT6140C*/   }
+/*MT6140C*/   *ifN = 0;
+/*MT6140C*/}
+/*MT6140C*//* =========================================================================== */
+#endif
+
+#if IS_RF_MT6140D
+/*MT6140D*/void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6140D*/{
+/*MT6140D*/   switch(rf_band)
+/*MT6140D*/   {
+/*MT6140D*/      case  FrequencyBand850 :
+/*MT6140D*/      {
+/*MT6140D*/         if(arfcn<=201)
+/*MT6140D*/         {  if(arfcn<=136)
+/*MT6140D*/            {                                /* ARFCN : 128~136     */
+/*MT6140D*/                *rfN = (66L<<12) | ((arfcn-72)<<5) | 0x000001L;
+/*MT6140D*/            }
+/*MT6140D*/            else
+/*MT6140D*/            {                              /* ARFCN : 137~201     */
+/*MT6140D*/                *rfN = (67L<<12) | ((arfcn-137)<<5) | 0x000001L;
+/*MT6140D*/            }
+/*MT6140D*/         }
+/*MT6140D*/         else
+/*MT6140D*/         {                                 /* ARFCN : 202~251     */
+/*MT6140D*/                *rfN = (68L<<12) | ((arfcn-202)<<5) | 0x000001L;
+/*MT6140D*/         }
+/*MT6140D*/
+/*MT6140D*/         // Get GSM850 signal from GSM900 input pins if flag=1
+/*MT6140D*/         if( BBTXParameters.bbrx_gsm850_gsm900_swap ) *rfN |= 0x100000L;
+/*MT6140D*/         break;
+/*MT6140D*/      }
+/*MT6140D*/      case  FrequencyBand900 :
+/*MT6140D*/      {
+/*MT6140D*/         if(arfcn<=69)
+/*MT6140D*/         {  if(arfcn<=4)
+/*MT6140D*/            {                                /* ARFCN : 0~4     */
+/*MT6140D*/                *rfN = (71L<<12) | ((arfcn+60)<<5) | 0x100001L;
+/*MT6140D*/            }
+/*MT6140D*/            else
+/*MT6140D*/            {                              /* ARFCN : 5~69     */
+/*MT6140D*/                *rfN = (72L<<12) | ((arfcn-5)<<5) | 0x100001L;
+/*MT6140D*/            }
+/*MT6140D*/         }
+/*MT6140D*/         else
+/*MT6140D*/         {  if(arfcn<=124)
+/*MT6140D*/            {                                /* ARFCN : 70~124     */
+/*MT6140D*/                *rfN = (73L<<12) | ((arfcn-70)<<5) | 0x100001L;
+/*MT6140D*/            }
+/*MT6140D*/            else
+/*MT6140D*/            {                              /* ARFCN : 975~1023     */
+/*MT6140D*/                *rfN = (71L<<12) | ((arfcn-964)<<5) | 0x100001L;
+/*MT6140D*/            }
+/*MT6140D*/         }
+/*MT6140D*/
+/*MT6140D*/         // Get GSM900 signal from GSM850 input pins if flag=1
+/*MT6140D*/         if( BBTXParameters.bbrx_gsm850_gsm900_swap )  *rfN &= (~(0x100000L));
+/*MT6140D*/         break;
+/*MT6140D*/      }
+/*MT6140D*/      case  FrequencyBand1800 :
+/*MT6140D*/      {
+/*MT6140D*/         if(arfcn<=715)
+/*MT6140D*/         {  if(arfcn<=585)
+/*MT6140D*/            {                                /* ARFCN : 512~585     */
+/*MT6140D*/                *rfN = (69L<<12) | ((arfcn-456)<<4) | 0x200001L;
+/*MT6140D*/            }
+/*MT6140D*/            else
+/*MT6140D*/            {                              /* ARFCN : 586~715     */
+/*MT6140D*/                *rfN = (70L<<12) | ((arfcn-586)<<4) | 0x200001L;
+/*MT6140D*/            }
+/*MT6140D*/         }
+/*MT6140D*/         else
+/*MT6140D*/         {  if(arfcn<=845)
+/*MT6140D*/            {                                /* ARFCN : 716~845     */
+/*MT6140D*/                *rfN = (71L<<12) | ((arfcn-716)<<4) | 0x200001L;
+/*MT6140D*/            }
+/*MT6140D*/            else
+/*MT6140D*/            {                              /* ARFCN : 846~885     */
+/*MT6140D*/                *rfN = (72L<<12) | ((arfcn-846)<<4) | 0x200001L;
+/*MT6140D*/            }
+/*MT6140D*/         }
+/*MT6140D*/
+/*MT6140D*/         // Get PCS1900 signal from DCS1800 input pins if flag=1
+/*MT6140D*/         if( BBTXParameters.bbrx_dcs1800_pcs1900_swap ) *rfN |= 0x100000L;
+/*MT6140D*/         break;
+/*MT6140D*/      }
+/*MT6140D*/      case  FrequencyBand1900 :
+/*MT6140D*/      {
+/*MT6140D*/         if(arfcn<=740)
+/*MT6140D*/         {  if(arfcn<=610)
+/*MT6140D*/            {                                /* ARFCN : 512~610     */
+/*MT6140D*/                *rfN = (74L<<12) | ((arfcn-481)<<4) | 0x300001L;
+/*MT6140D*/            }
+/*MT6140D*/            else
+/*MT6140D*/            {                               /* ARFCN : 611~740     */
+/*MT6140D*/                *rfN = (75L<<12) | ((arfcn-611)<<4) | 0x300001L;
+/*MT6140D*/            }
+/*MT6140D*/         }
+/*MT6140D*/         else
+/*MT6140D*/         {
+/*MT6140D*/                                            /* ARFCN : 741~810     */
+/*MT6140D*/            *rfN = (76L<<12) | ((arfcn-741)<<4) | 0x300001L;
+/*MT6140D*/
+/*MT6140D*/         }
+/*MT6140D*/
+/*MT6140D*/         // Get DCS1800 signal from PCS1900 input pins if flag=1
+/*MT6140D*/         if( BBTXParameters.bbrx_dcs1800_pcs1900_swap)  *rfN &= (~(0x100000L));
+/*MT6140D*/         break;
+/*MT6140D*/      }
+/*MT6140D*/      default :
+/*MT6140D*/      {
+/*MT6140D*/         break;
+/*MT6140D*/      }
+/*MT6140D*/   }
+/*MT6140D*/   *ifN = 0;
+/*MT6140D*/}
+/*MT6140D*//* =========================================================================== */
+/*MT6140D*/
+/*MT6140D*/void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6140D*/{
+/*MT6140D*/   switch(rf_band)
+/*MT6140D*/   {
+/*MT6140D*/      case  FrequencyBand850 :
+/*MT6140D*/      {
+/*MT6140D*/         if(arfcn<=231)
+/*MT6140D*/         {  if(arfcn<=166)
+/*MT6140D*/            {                                /* ARFCN : 128~166     */
+/*MT6140D*/                *rfN = (63L<<12) | ((arfcn-102)<<5) | 0x480001L; /* 0x080001L; */
+/*MT6140D*/            }
+/*MT6140D*/            else
+/*MT6140D*/            {                              /* ARFCN : 167~231     */
+/*MT6140D*/                *rfN = (64L<<12) | ((arfcn-167)<<5) | 0x480001L; /* 0x080001L; */
+/*MT6140D*/            }
+/*MT6140D*/         }
+/*MT6140D*/         else
+/*MT6140D*/         {                                 /* ARFCN : 232~251     */
+/*MT6140D*/                *rfN = (65L<<12) | ((arfcn-232)<<5) | 0x480001L; /* 0x080001L; */
+/*MT6140D*/         }
+/*MT6140D*/
+/*MT6140D*/         break;
+/*MT6140D*/      }
+/*MT6140D*/      case  FrequencyBand900 :
+/*MT6140D*/      {
+/*MT6140D*/         if(arfcn<=124)
+/*MT6140D*/         {  if(arfcn<=99)
+/*MT6140D*/            {  if(arfcn<=34)
+/*MT6140D*/               {                                /* ARFCN : 0~34     */
+/*MT6140D*/                   *rfN = (68L<<12) | ((arfcn+30)<<5) | 0x580001L; /* 0x180001L; */
+/*MT6140D*/               }
+/*MT6140D*/               else
+/*MT6140D*/               {                                /* ARFCN : 35~99     */
+/*MT6140D*/                   *rfN = (69L<<12) | ((arfcn-35)<<5) | 0x580001L; /* 0x180001L; */
+/*MT6140D*/               }
+/*MT6140D*/            }
+/*MT6140D*/            else
+/*MT6140D*/            {                              /* ARFCN : 100~124     */
+/*MT6140D*/                *rfN = (70L<<12) | ((arfcn-100)<<5) | 0x580001L; /* 0x180001L; */
+/*MT6140D*/            }
+/*MT6140D*/         }
+/*MT6140D*/         else
+/*MT6140D*/         {  if(arfcn<=993)
+/*MT6140D*/            {                                /* ARFCN : 975~993     */
+/*MT6140D*/                *rfN = (67L<<12) | ((arfcn-929)<<5) | 0x580001L; /* 0x180001L; */
+/*MT6140D*/            }
+/*MT6140D*/            else
+/*MT6140D*/            {                              /* ARFCN : 994~1023     */
+/*MT6140D*/                *rfN = (68L<<12) | ((arfcn-994)<<5) | 0x580001L; /* 0x080001L; */
+/*MT6140D*/            }
+/*MT6140D*/         }
+/*MT6140D*/
+/*MT6140D*/         break;
+/*MT6140D*/      }
+/*MT6140D*/      case  FrequencyBand1800 :
+/*MT6140D*/      {
+/*MT6140D*/         if(arfcn<=670)
+/*MT6140D*/         {  if(arfcn<=540)
+/*MT6140D*/            {                                /* ARFCN : 512~540     */
+/*MT6140D*/                *rfN = (65L<<12) | ((arfcn-411)<<4) | 0x680001L; /* 0x280001L; */
+/*MT6140D*/            }
+/*MT6140D*/            else
+/*MT6140D*/            {                              /* ARFCN : 541~670     */
+/*MT6140D*/                *rfN = (66L<<12) | ((arfcn-541)<<4) | 0x680001L; /* 0x280001L; */
+/*MT6140D*/            }
+/*MT6140D*/         }
+/*MT6140D*/         else
+/*MT6140D*/         {  if(arfcn<=800)
+/*MT6140D*/            {                                /* ARFCN : 671~800     */
+/*MT6140D*/                *rfN = (67L<<12) | ((arfcn-671)<<4) | 0x680001L; /* 0x280001L; */
+/*MT6140D*/            }
+/*MT6140D*/            else
+/*MT6140D*/            {                              /* ARFCN : 801~885     */
+/*MT6140D*/                *rfN = (68L<<12) | ((arfcn-801)<<4) | 0x680001L; /* 0x280001L; */
+/*MT6140D*/            }
+/*MT6140D*/         }
+/*MT6140D*/
+/*MT6140D*/         break;
+/*MT6140D*/      }
+/*MT6140D*/      case  FrequencyBand1900 :
+/*MT6140D*/      {
+/*MT6140D*/         if(arfcn<=750)
+/*MT6140D*/         {  if(arfcn<=620)
+/*MT6140D*/            {                                /* ARFCN : 512~620     */
+/*MT6140D*/                *rfN = (71L<<12) | ((arfcn-491)<<4) | 0x780001L; /* 0x380001L; */
+/*MT6140D*/            }
+/*MT6140D*/            else
+/*MT6140D*/            {                               /* ARFCN : 621~750     */
+/*MT6140D*/                *rfN = (72L<<12) | ((arfcn-621)<<4) | 0x780001L; /* 0x380001L; */
+/*MT6140D*/            }
+/*MT6140D*/         }
+/*MT6140D*/         else
+/*MT6140D*/         {
+/*MT6140D*/                                            /* ARFCN : 751~810     */
+/*MT6140D*/            *rfN = (73L<<12) | ((arfcn-751)<<4) | 0x780001L; /* 0x380001L; */
+/*MT6140D*/
+/*MT6140D*/         }
+/*MT6140D*/
+/*MT6140D*/         break;
+/*MT6140D*/      }
+/*MT6140D*/      default :
+/*MT6140D*/      {
+/*MT6140D*/         break;
+/*MT6140D*/      }
+/*MT6140D*/   }
+/*MT6140D*/   *ifN = 0;
+/*MT6140D*/}
+/*MT6140D*//* =========================================================================== */
+#endif
+
+#if IS_RF_CMOSEDGE
+/*CMOSEDGE*/void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*CMOSEDGE*/{ int Nfrac;
+/*CMOSEDGE*/   switch(rf_band)
+/*CMOSEDGE*/   {
+/*CMOSEDGE*/      case  FrequencyBand850 :
+/*CMOSEDGE*/      {
+/*CMOSEDGE*/         if(arfcn<=201)
+/*CMOSEDGE*/         {  if(arfcn<=169)
+/*CMOSEDGE*/            {  if(arfcn<=136)
+/*CMOSEDGE*/               {                                /* ARFCN : 128~136     */
+/*CMOSEDGE*/                   Nfrac = (arfcn-128)*258111+6065609;
+/*CMOSEDGE*/                   *rfN = (133L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/               }
+/*CMOSEDGE*/               else
+/*CMOSEDGE*/               {                                /* ARFCN : 137~169     */
+/*CMOSEDGE*/                   Nfrac = (arfcn-137)*258111;
+/*CMOSEDGE*/                   //if (Nfrac==0) Nfrac=1;
+/*CMOSEDGE*/                   *rfN = (134L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/               }
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/            else
+/*CMOSEDGE*/            {                              /* ARFCN : 170~201     */
+/*CMOSEDGE*/                Nfrac = (arfcn-170)*258111+129056;
+/*CMOSEDGE*/                *rfN = (135L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/         }
+/*CMOSEDGE*/         else
+/*CMOSEDGE*/         {  if(arfcn<=234)
+/*CMOSEDGE*/            {                                /* ARFCN : 202~234     */
+/*CMOSEDGE*/                Nfrac = (arfcn-202)*258111;
+/*CMOSEDGE*/                //if (Nfrac==0) Nfrac=1;
+/*CMOSEDGE*/                *rfN = (136L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/            else
+/*CMOSEDGE*/            {                                /* ARFCN : 235~251     */
+/*CMOSEDGE*/                 Nfrac = (arfcn-235)*258111+129056;
+/*CMOSEDGE*/                *rfN = (137L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/         }
+/*CMOSEDGE*/         *ifN = (Nfrac>>10);
+/*CMOSEDGE*/
+/*CMOSEDGE*/         // Get GSM850 signal from GSM900 input pins if flag=1
+/*CMOSEDGE*/         if( BBTXParameters.bbrx_gsm850_gsm900_swap ) *ifN |=0x0010000L ;
+/*CMOSEDGE*/         break;
+/*CMOSEDGE*/      }
+/*CMOSEDGE*/      case  FrequencyBand900 :
+/*CMOSEDGE*/      {
+/*CMOSEDGE*/         if(arfcn<=124)
+/*CMOSEDGE*/         {  if(arfcn<=69)
+/*CMOSEDGE*/            {  if(arfcn<=37)
+/*CMOSEDGE*/               {  if(arfcn<=4)
+/*CMOSEDGE*/                  {                                /* ARFCN : 0~4     */
+/*CMOSEDGE*/                      Nfrac = arfcn*258111+7098053;
+/*CMOSEDGE*/                      *rfN = (143L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/                  }
+/*CMOSEDGE*/                  else
+/*CMOSEDGE*/                  {                                /* ARFCN : 5~37     */
+/*CMOSEDGE*/                      Nfrac = (arfcn-5)*258111;
+/*CMOSEDGE*/                      //if (Nfrac==0) Nfrac=1;
+/*CMOSEDGE*/                      *rfN = (144L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/                  }
+/*CMOSEDGE*/               }
+/*CMOSEDGE*/               else
+/*CMOSEDGE*/               {                                /* ARFCN : 38~69     */
+/*CMOSEDGE*/                    Nfrac = (arfcn-38)*258111+129056;
+/*CMOSEDGE*/                   *rfN = (145L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/               }
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/            else
+/*CMOSEDGE*/            {  if(arfcn<=102)
+/*CMOSEDGE*/               {                                /* ARFCN : 70~102     */
+/*CMOSEDGE*/                    Nfrac = (arfcn-70)*258111;
+/*CMOSEDGE*/                    //if (Nfrac==0) Nfrac=1;
+/*CMOSEDGE*/                   *rfN = (146L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/               }
+/*CMOSEDGE*/               else
+/*CMOSEDGE*/               {                                /* ARFCN : 103~124     */
+/*CMOSEDGE*/                    Nfrac = (arfcn-103)*258111+129056;
+/*CMOSEDGE*/                   *rfN = (147L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/               }
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/         }
+/*CMOSEDGE*/         else
+/*CMOSEDGE*/         {  if(arfcn<=996)
+/*CMOSEDGE*/            {                                /* ARFCN : 975~996     */
+/*CMOSEDGE*/                Nfrac = (arfcn-975)*258111+2839221;
+/*CMOSEDGE*/                *rfN = (142L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/            else
+/*CMOSEDGE*/            {                              /* ARFCN : 997~1023     */
+/*CMOSEDGE*/                Nfrac = (arfcn-997)*258111+129056;
+/*CMOSEDGE*/                *rfN = (143L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/         }
+/*CMOSEDGE*/         *ifN = (Nfrac>>10) | 0x0010000L;
+/*CMOSEDGE*/
+/*CMOSEDGE*/         // Get GSM900 signal from GSM850 input pins if flag=1
+/*CMOSEDGE*/         if( BBTXParameters.bbrx_gsm850_gsm900_swap )  *ifN &= (~(0x0010000L));
+/*CMOSEDGE*/         break;
+/*CMOSEDGE*/      }
+/*CMOSEDGE*/      case  FrequencyBand1800 :
+/*CMOSEDGE*/      {
+/*CMOSEDGE*/         if(arfcn<=715)
+/*CMOSEDGE*/         {  if(arfcn<=585)
+/*CMOSEDGE*/            {  if(arfcn<=520)
+/*CMOSEDGE*/               {                                /* ARFCN : 512~520     */
+/*CMOSEDGE*/                   Nfrac=((arfcn-512)&0x1) ? ((arfcn-513)>>1)*258111+7356164:((arfcn-512)>>1)*258111+7227108;
+/*CMOSEDGE*/                   *rfN = (138L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/               }
+/*CMOSEDGE*/               else
+/*CMOSEDGE*/               {                               /* ARFCN : 521~585     */
+/*CMOSEDGE*/                   Nfrac=((arfcn-521)&0x1) ? ((arfcn-522)>>1)*258111+129056:((arfcn-521)>>1)*258111;
+/*CMOSEDGE*/                   //if (Nfrac==0) Nfrac=1;
+/*CMOSEDGE*/                   *rfN = (139L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/               }
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/            else
+/*CMOSEDGE*/            {  if(arfcn<=650)
+/*CMOSEDGE*/               {                                /* ARFCN : 586~650     */
+/*CMOSEDGE*/                    Nfrac=((arfcn-586)&0x1) ? ((arfcn-587)>>1)*258111+129056:((arfcn-586)>>1)*258111;
+/*CMOSEDGE*/                   //if (Nfrac==0) Nfrac=1;
+/*CMOSEDGE*/                   *rfN = (140L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/               }
+/*CMOSEDGE*/               else
+/*CMOSEDGE*/               {                                /* ARFCN : 651~715     */
+/*CMOSEDGE*/                   Nfrac=((arfcn-651)&0x1) ? ((arfcn-652)>>1)*258111+129056:((arfcn-651)>>1)*258111;
+/*CMOSEDGE*/                   //if (Nfrac==0) Nfrac=1;
+/*CMOSEDGE*/                   *rfN = (141L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/               }
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/         }
+/*CMOSEDGE*/         else
+/*CMOSEDGE*/         {  if(arfcn<=845)
+/*CMOSEDGE*/            {  if(arfcn<=780)
+/*CMOSEDGE*/               {                                /* ARFCN : 716~780     */
+/*CMOSEDGE*/                   Nfrac=((arfcn-716)&0x1) ? ((arfcn-717)>>1)*258111+129056:((arfcn-716)>>1)*258111;
+/*CMOSEDGE*/                   //if (Nfrac==0) Nfrac=1;
+/*CMOSEDGE*/                   *rfN = (142L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/                }
+/*CMOSEDGE*/                else
+/*CMOSEDGE*/                {                              /* ARFCN : 781~845     */
+/*CMOSEDGE*/                   Nfrac=((arfcn-781)&0x1) ? ((arfcn-782)>>1)*258111+129056:((arfcn-781)>>1)*258111;
+/*CMOSEDGE*/                   //if (Nfrac==0) Nfrac=1;
+/*CMOSEDGE*/                   *rfN = (143L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/                }
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/            else
+/*CMOSEDGE*/            {                              /* ARFCN : 846~885     */
+/*CMOSEDGE*/                 Nfrac=((arfcn-846)&0x1) ? ((arfcn-847)>>1)*258111+129056:((arfcn-846)>>1)*258111;
+/*CMOSEDGE*/                 //if (Nfrac==0) Nfrac=1;
+/*CMOSEDGE*/                *rfN = (144L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/         }
+/*CMOSEDGE*/         *ifN = (Nfrac>>10) | 0x0020000L;
+/*CMOSEDGE*/
+/*CMOSEDGE*/         // Get PCS1900 signal from DCS1800 input pins if flag=1
+/*CMOSEDGE*/         if( BBTXParameters.bbrx_dcs1800_pcs1900_swap ) *ifN |=0x0010000L ;
+/*CMOSEDGE*/         break;
+/*CMOSEDGE*/      }
+/*CMOSEDGE*/      case  FrequencyBand1900 :
+/*CMOSEDGE*/      {
+/*CMOSEDGE*/         if(arfcn<=675)
+/*CMOSEDGE*/         {  if(arfcn<=610)
+/*CMOSEDGE*/            {  if(arfcn<=545)
+/*CMOSEDGE*/               {                                /* ARFCN : 512~545     */
+/*CMOSEDGE*/                   Nfrac=((arfcn-512)&0x1) ? ((arfcn-513)>>1)*258111+4129776:((arfcn-512)>>1)*258111+4000721;
+/*CMOSEDGE*/                   *rfN = (148L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/               }
+/*CMOSEDGE*/               else
+/*CMOSEDGE*/               {                                /* ARFCN : 546~610     */
+/*CMOSEDGE*/                   Nfrac=((arfcn-546)&0x1) ? ((arfcn-547)>>1)*258111+129056:((arfcn-546)>>1)*258111;;
+/*CMOSEDGE*/                   //if (Nfrac==0) Nfrac=1;
+/*CMOSEDGE*/                   *rfN = (149L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/               }
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/            else
+/*CMOSEDGE*/            {                              /* ARFCN : 611~675     */
+/*CMOSEDGE*/                 Nfrac=((arfcn-611)&0x1) ? ((arfcn-612)>>1)*258111+129056:((arfcn-611)>>1)*258111;
+/*CMOSEDGE*/                 //if (Nfrac==0) Nfrac=1;
+/*CMOSEDGE*/                *rfN = (150L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/         }
+/*CMOSEDGE*/         else
+/*CMOSEDGE*/         {  if(arfcn<=805)
+/*CMOSEDGE*/            {  if(arfcn<=740)
+/*CMOSEDGE*/               {                                /* ARFCN : 676~740     */
+/*CMOSEDGE*/                   Nfrac=((arfcn-676)&0x1) ? ((arfcn-677)>>1)*258111+129056:((arfcn-676)>>1)*258111;
+/*CMOSEDGE*/                   //if (Nfrac==0) Nfrac=1;
+/*CMOSEDGE*/                   *rfN = (151L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/               }
+/*CMOSEDGE*/               else
+/*CMOSEDGE*/               {                                /* ARFCN : 741~805     */
+/*CMOSEDGE*/                   Nfrac=((arfcn-741)&0x1) ? ((arfcn-742)>>1)*258111+129056:((arfcn-741)>>1)*258111;
+/*CMOSEDGE*/                   //if (Nfrac==0) Nfrac=1;
+/*CMOSEDGE*/                   *rfN = (152L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/               }
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/            else
+/*CMOSEDGE*/            {                                /* ARFCN : 806~810     */
+/*CMOSEDGE*/                Nfrac=((arfcn-806)&0x1) ? ((arfcn-807)>>1)*258111+129056:((arfcn-806)>>1)*258111;
+/*CMOSEDGE*/                //if (Nfrac==0) Nfrac=1;
+/*CMOSEDGE*/                *rfN = (153L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/         }
+/*CMOSEDGE*/         *ifN = (Nfrac>>10) | 0x0030000L;
+/*CMOSEDGE*/
+/*CMOSEDGE*/         // Get DCS1800 signal from PCS1900 input pins if flag=1
+/*CMOSEDGE*/         if( BBTXParameters.bbrx_dcs1800_pcs1900_swap)  *ifN &= (~(0x0010000L));
+/*CMOSEDGE*/         break;
+/*CMOSEDGE*/      }
+/*CMOSEDGE*/      default :
+/*CMOSEDGE*/      {
+/*CMOSEDGE*/         break;
+/*CMOSEDGE*/      }
+/*CMOSEDGE*/   }
+/*CMOSEDGE*/}
+/*CMOSEDGE*//* =========================================================================== */
+/*CMOSEDGE*/
+/*CMOSEDGE*/void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*CMOSEDGE*/{  int Nfrac;
+/*CMOSEDGE*/   switch(rf_band)
+/*CMOSEDGE*/   {
+/*CMOSEDGE*/      case  FrequencyBand850 :
+/*CMOSEDGE*/      {
+/*CMOSEDGE*/         if(arfcn<=199)
+/*CMOSEDGE*/         {  if(arfcn<=166)
+/*CMOSEDGE*/            {  if(arfcn<=134)
+/*CMOSEDGE*/               {                                /* ARFCN : 128~134     */
+/*CMOSEDGE*/                   Nfrac = (arfcn-128)*258111+6710886;
+/*CMOSEDGE*/                   *rfN = (126L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/               }
+/*CMOSEDGE*/               else
+/*CMOSEDGE*/               {                                /* ARFCN : 135~166     */
+/*CMOSEDGE*/                   Nfrac = (arfcn-135)*258111+129056;
+/*CMOSEDGE*/                   *rfN = (127L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/               }
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/            else
+/*CMOSEDGE*/            {                              /* ARFCN : 167~199     */
+/*CMOSEDGE*/                 Nfrac = (arfcn-167)*258111;
+/*CMOSEDGE*/                 //if (Nfrac==0) Nfrac=1;
+/*CMOSEDGE*/                *rfN = (128L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/         }
+/*CMOSEDGE*/         else
+/*CMOSEDGE*/         {  if(arfcn<=231)
+/*CMOSEDGE*/            {                                /* ARFCN : 200~231     */
+/*CMOSEDGE*/                 Nfrac = (arfcn-200)*258111+129056;
+/*CMOSEDGE*/                *rfN = (129L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/            else
+/*CMOSEDGE*/            {                                /* ARFCN : 232~251     */
+/*CMOSEDGE*/                 Nfrac = (arfcn-232)*258111;
+/*CMOSEDGE*/                 //if (Nfrac==0) Nfrac=1;
+/*CMOSEDGE*/                *rfN = (130L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/         }
+/*CMOSEDGE*/         *ifN = (Nfrac>>10) | 0x0040000L |(arfcn<<20);
+/*CMOSEDGE*/
+/*CMOSEDGE*/         break;
+/*CMOSEDGE*/      }
+/*CMOSEDGE*/      case  FrequencyBand900 :
+/*CMOSEDGE*/      {
+/*CMOSEDGE*/         if(arfcn<=124)
+/*CMOSEDGE*/         {  if(arfcn<=67)
+/*CMOSEDGE*/            {  if(arfcn<=34)
+/*CMOSEDGE*/               {  if(arfcn<=2)
+/*CMOSEDGE*/                  {                                /* ARFCN : 0~2     */
+/*CMOSEDGE*/                      Nfrac =arfcn*258111+7743330;
+/*CMOSEDGE*/                      *rfN = (136L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/                  }
+/*CMOSEDGE*/                  else
+/*CMOSEDGE*/                  {                                /* ARFCN : 3~34     */
+/*CMOSEDGE*/                      Nfrac =(arfcn-3)*258111+129056;
+/*CMOSEDGE*/                      *rfN = (137L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/                  }
+/*CMOSEDGE*/               }
+/*CMOSEDGE*/               else
+/*CMOSEDGE*/               {                                /* ARFCN : 35~67     */
+/*CMOSEDGE*/                      Nfrac =(arfcn-35)*258111;
+/*CMOSEDGE*/                     // if (Nfrac==0) Nfrac=1;
+/*CMOSEDGE*/                      *rfN = (138L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/               }
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/            else
+/*CMOSEDGE*/            {  if(arfcn<=99)
+/*CMOSEDGE*/               {                                /* ARFCN : 68~99     */
+/*CMOSEDGE*/                    Nfrac =(arfcn-68)*258111+129056;
+/*CMOSEDGE*/                   *rfN = (139L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/               }
+/*CMOSEDGE*/               else
+/*CMOSEDGE*/               {                                /* ARFCN : 100~124     */
+/*CMOSEDGE*/                    Nfrac =(arfcn-100)*258111;
+/*CMOSEDGE*/                    //if (Nfrac==0) Nfrac=1;
+/*CMOSEDGE*/                   *rfN = (140L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/               }
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/         }
+/*CMOSEDGE*/         else
+/*CMOSEDGE*/         {  if(arfcn<=993)
+/*CMOSEDGE*/            {                                /* ARFCN : 975~993     */
+/*CMOSEDGE*/                Nfrac = (arfcn-975)*258111+3484499;
+/*CMOSEDGE*/                *rfN = (135L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/            else
+/*CMOSEDGE*/            {                              /* ARFCN : 994~1023     */
+/*CMOSEDGE*/                Nfrac = (arfcn-994)*258111;
+/*CMOSEDGE*/               // if (Nfrac==0) Nfrac=1;
+/*CMOSEDGE*/                *rfN = (136L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/         }
+/*CMOSEDGE*/         *ifN = (Nfrac>>10) | 0x0050000L |(arfcn<<20);
+/*CMOSEDGE*/
+/*CMOSEDGE*/         break;
+/*CMOSEDGE*/      }
+/*CMOSEDGE*/      case  FrequencyBand1800 :
+/*CMOSEDGE*/      {
+/*CMOSEDGE*/         if(arfcn<=735)
+/*CMOSEDGE*/         {  if(arfcn<=605)
+/*CMOSEDGE*/            {  if(arfcn<=540)
+/*CMOSEDGE*/               {                                /* ARFCN : 512~540     */
+/*CMOSEDGE*/                   Nfrac=((arfcn-512)&0x1) ? ((arfcn-513)>>1)*258111+4775054:((arfcn-512)>>1)*258111+4645998;
+/*CMOSEDGE*/                   *rfN = (131L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/               }
+/*CMOSEDGE*/               else
+/*CMOSEDGE*/               {                               /* ARFCN : 541~605     */
+/*CMOSEDGE*/                   Nfrac=((arfcn-541)&0x1) ? ((arfcn-542)>>1)*258111+129056:((arfcn-541)>>1)*258111;
+/*CMOSEDGE*/                   //if (Nfrac==0) Nfrac=1;
+/*CMOSEDGE*/                   *rfN = (132L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/               }
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/            else
+/*CMOSEDGE*/            {  if(arfcn<=670)
+/*CMOSEDGE*/               {                                /* ARFCN : 606~670     */
+/*CMOSEDGE*/                   Nfrac=((arfcn-606)&0x1) ? ((arfcn-607)>>1)*258111+129056:((arfcn-606)>>1)*258111;
+/*CMOSEDGE*/                   //if (Nfrac==0) Nfrac=1;
+/*CMOSEDGE*/                   *rfN = (133L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/               }
+/*CMOSEDGE*/               else
+/*CMOSEDGE*/               {                                /* ARFCN : 671~735     */
+/*CMOSEDGE*/                   Nfrac=((arfcn-671)&0x1) ? ((arfcn-672)>>1)*258111+129056:((arfcn-671)>>1)*258111;
+/*CMOSEDGE*/                   //if (Nfrac==0) Nfrac=1;
+/*CMOSEDGE*/                   *rfN = (134L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/               }
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/         }
+/*CMOSEDGE*/         else
+/*CMOSEDGE*/         {  if(arfcn<=865)
+/*CMOSEDGE*/            {  if(arfcn<=800)
+/*CMOSEDGE*/               {                                /* ARFCN : 736~800     */
+/*CMOSEDGE*/                   Nfrac=((arfcn-736)&0x1) ? ((arfcn-737)>>1)*258111+129056:((arfcn-736)>>1)*258111;
+/*CMOSEDGE*/                   //if (Nfrac==0) Nfrac=1;
+/*CMOSEDGE*/                   *rfN = (135L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/                }
+/*CMOSEDGE*/                else
+/*CMOSEDGE*/                {                              /* ARFCN : 801~865     */
+/*CMOSEDGE*/                   Nfrac=((arfcn-801)&0x1) ? ((arfcn-802)>>1)*258111+129056:((arfcn-801)>>1)*258111;
+/*CMOSEDGE*/                   //if (Nfrac==0) Nfrac=1;
+/*CMOSEDGE*/                   *rfN = (136L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/                }
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/            else
+/*CMOSEDGE*/            {                              /* ARFCN : 866~885     */
+/*CMOSEDGE*/                 Nfrac=((arfcn-866)&0x1) ? ((arfcn-867)>>1)*258111+129056:((arfcn-866)>>1)*258111;
+/*CMOSEDGE*/                 //if (Nfrac==0) Nfrac=1;
+/*CMOSEDGE*/                *rfN = (137L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/         }
+/*CMOSEDGE*/         *ifN = (Nfrac>>10) | 0x0060000L |(arfcn<<20);
+/*CMOSEDGE*/
+/*CMOSEDGE*/         break;
+/*CMOSEDGE*/      }
+/*CMOSEDGE*/      case  FrequencyBand1900 :
+/*CMOSEDGE*/      {
+/*CMOSEDGE*/         if(arfcn<=685)
+/*CMOSEDGE*/         {  if(arfcn<=620)
+/*CMOSEDGE*/            {  if(arfcn<=555)
+/*CMOSEDGE*/               {                                /* ARFCN : 512~555     */
+/*CMOSEDGE*/                   Nfrac=((arfcn-512)&0x1) ? ((arfcn-513)>>1)*258111+2839221:((arfcn-512)>>1)*258111+2710166;
+/*CMOSEDGE*/                   *rfN = (142L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/               }
+/*CMOSEDGE*/               else
+/*CMOSEDGE*/               {                                /* ARFCN : 556~620     */
+/*CMOSEDGE*/                   Nfrac=((arfcn-556)&0x1) ? ((arfcn-557)>>1)*258111+129056:((arfcn-556)>>1)*258111;
+/*CMOSEDGE*/                   //if (Nfrac==0) Nfrac=1;
+/*CMOSEDGE*/                   *rfN = (143L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/               }
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/            else
+/*CMOSEDGE*/            {                              /* ARFCN : 621~685     */
+/*CMOSEDGE*/                   Nfrac=((arfcn-621)&0x1) ? ((arfcn-622)>>1)*258111+129056:((arfcn-621)>>1)*258111;
+/*CMOSEDGE*/                   //if (Nfrac==0) Nfrac=1;
+/*CMOSEDGE*/                   *rfN = (144L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/         }
+/*CMOSEDGE*/         else
+/*CMOSEDGE*/         {  if(arfcn<=750)
+/*CMOSEDGE*/            {                                /* ARFCN : 686~750     */
+/*CMOSEDGE*/                 Nfrac=((arfcn-686)&0x1) ? ((arfcn-687)>>1)*258111+129056:((arfcn-686)>>1)*258111;
+/*CMOSEDGE*/                // if (Nfrac==0) Nfrac=1;
+/*CMOSEDGE*/                *rfN = (145L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/            else
+/*CMOSEDGE*/            {                                /* ARFCN : 751~810     */
+/*CMOSEDGE*/                 Nfrac=((arfcn-751)&0x1) ? ((arfcn-752)>>1)*258111+129056:((arfcn-751)>>1)*258111;
+/*CMOSEDGE*/                // if (Nfrac==0) Nfrac=1;
+/*CMOSEDGE*/                *rfN = (146L<<10) | (Nfrac&0x3FF) | 0x0100000L;
+/*CMOSEDGE*/            }
+/*CMOSEDGE*/         }
+/*CMOSEDGE*/         *ifN = (Nfrac>>10) | 0x0070000L |(arfcn<<20);
+/*CMOSEDGE*/
+/*CMOSEDGE*/         break;
+/*CMOSEDGE*/      }
+/*CMOSEDGE*/      default :
+/*CMOSEDGE*/      {
+/*CMOSEDGE*/         break;
+/*CMOSEDGE*/      }
+/*CMOSEDGE*/   }
+/*CMOSEDGE*/}
+/*CMOSEDGE*//* =========================================================================== */
+#endif
+
+#if IS_RF_MTKSOC1T
+/*MTKSOC1T*/void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MTKSOC1T*/{
+/*MTKSOC1T*/ int Nfrac, SDM_IFM = 1, OPLL_DIV4O5_DIV4 = 0;
+/*MTKSOC1T*/ long cw27 =0;
+/*MTKSOC1T*/ switch(rf_band)
+/*MTKSOC1T*/ {
+/*MTKSOC1T*/ case  FrequencyBand850 :
+/*MTKSOC1T*/    {
+/*MTKSOC1T*/       if(arfcn<=189)
+/*MTKSOC1T*/       {
+/*MTKSOC1T*/          if(arfcn<=160)
+/*MTKSOC1T*/          {
+/*MTKSOC1T*/             if(arfcn<=131)
+/*MTKSOC1T*/             {                                /* ARFCN : 128~131     */
+/*MTKSOC1T*/                Nfrac = (arfcn-128)*286790 + 7456540;
+/*MTKSOC1T*/                *rfN = (140L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/             }
+/*MTKSOC1T*/             else
+/*MTKSOC1T*/             {                                /* ARFCN : 132~160     */
+/*MTKSOC1T*/                Nfrac = (arfcn-132)*286790 + 215093;
+/*MTKSOC1T*/                *rfN = (141L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/             }
+/*MTKSOC1T*/          }
+/*MTKSOC1T*/          else
+/*MTKSOC1T*/          {                              /* ARFCN : 161~189     */
+/*MTKSOC1T*/             Nfrac = (arfcn-161)*286790 + 143395;
+/*MTKSOC1T*/             *rfN = (142L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/          }
+/*MTKSOC1T*/       }
+/*MTKSOC1T*/       else
+/*MTKSOC1T*/       {
+/*MTKSOC1T*/          if(arfcn<=218)
+/*MTKSOC1T*/          {                              /* ARFCN : 190~218     */
+/*MTKSOC1T*/             Nfrac = (arfcn-190)*286790 + 71698;
+/*MTKSOC1T*/             *rfN = (143L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/          }
+/*MTKSOC1T*/          else
+/*MTKSOC1T*/          {
+/*MTKSOC1T*/             if(arfcn<=248)
+/*MTKSOC1T*/             {                                /* ARFCN : 219~248     */
+/*MTKSOC1T*/                Nfrac = (arfcn-219)*286790;
+/*MTKSOC1T*/                *rfN = (144L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/
+/*MTKSOC1T*/                if(arfcn == 219)
+/*MTKSOC1T*/                   SDM_IFM = 0;
+/*MTKSOC1T*/             }
+/*MTKSOC1T*/             else
+/*MTKSOC1T*/             {                                /* ARFCN : 249~251     */
+/*MTKSOC1T*/                Nfrac = (arfcn-249)*286790 + 215093;
+/*MTKSOC1T*/                *rfN = (145L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/             }
+/*MTKSOC1T*/          }
+/*MTKSOC1T*/       }
+/*MTKSOC1T*/
+/*MTKSOC1T*/       *ifN = (Nfrac>>10) | 0x0242000L;                       /* N_FRAC[22:10] | (CW2|OPLL_DIV4O5_DIV4|TRX|BAND|MODE(warm_up mode))*/
+/*MTKSOC1T*/       *rfN |= ((Nfrac&0x3FF) | 0x0180000L | (SDM_IFM<<18) ); /* N_INT[7:0] | N_FRAC[9:0] | (CW1|OPLL_HLSIDE)| SDM_IFM)*/
+/*MTKSOC1T*/
+/*MTKSOC1T*/       break;
+/*MTKSOC1T*/    }
+/*MTKSOC1T*/ case  FrequencyBand900 :
+/*MTKSOC1T*/    {
+/*MTKSOC1T*/       if(arfcn<=112)
+/*MTKSOC1T*/       {
+/*MTKSOC1T*/          if(arfcn<=54)
+/*MTKSOC1T*/          {
+/*MTKSOC1T*/             if(arfcn<=25)
+/*MTKSOC1T*/             {                                /* ARFCN : 0~25     */
+/*MTKSOC1T*/                Nfrac = (arfcn)*286790 + 1147160;
+/*MTKSOC1T*/                *rfN = (152L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/             }
+/*MTKSOC1T*/             else
+/*MTKSOC1T*/             {                                /* ARFCN : 26~54     */
+/*MTKSOC1T*/                Nfrac = (arfcn-26)*286790 + 215093;
+/*MTKSOC1T*/                *rfN = (153L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/             }
+/*MTKSOC1T*/          }
+/*MTKSOC1T*/          else
+/*MTKSOC1T*/          {
+/*MTKSOC1T*/             if(arfcn<=83)
+/*MTKSOC1T*/             {                                /* ARFCN : 55~83     */
+/*MTKSOC1T*/                Nfrac = (arfcn-55)*286790 + 143395;
+/*MTKSOC1T*/                *rfN = (154L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/             }
+/*MTKSOC1T*/             else
+/*MTKSOC1T*/             {                                /* ARFCN : 84~112     */
+/*MTKSOC1T*/                Nfrac = (arfcn-84)*286790 + 71698;
+/*MTKSOC1T*/                *rfN = (155L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/             }
+/*MTKSOC1T*/          }
+/*MTKSOC1T*/       }
+/*MTKSOC1T*/       else
+/*MTKSOC1T*/       {
+/*MTKSOC1T*/          if(arfcn<=990)
+/*MTKSOC1T*/          {
+/*MTKSOC1T*/             if(arfcn<=124)
+/*MTKSOC1T*/             {                                /* ARFCN : 113~124     */
+/*MTKSOC1T*/                Nfrac = (arfcn-113)*286790;
+/*MTKSOC1T*/                *rfN = (156L<<10);
+/*MTKSOC1T*/
+/*MTKSOC1T*/                if(arfcn == 113)
+/*MTKSOC1T*/                   SDM_IFM = 0;
+/*MTKSOC1T*/
+/*MTKSOC1T*/             }
+/*MTKSOC1T*/             else
+/*MTKSOC1T*/             {                              /* ARFCN : 975~990     */
+/*MTKSOC1T*/                Nfrac = (arfcn-975)*286790 + 3871665;
+/*MTKSOC1T*/                *rfN = (150L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/             }
+/*MTKSOC1T*/          }
+/*MTKSOC1T*/          else
+/*MTKSOC1T*/          {
+/*MTKSOC1T*/             if(arfcn<=1019)
+/*MTKSOC1T*/             {                                /* ARFCN : 991~1019     */
+/*MTKSOC1T*/                Nfrac = (arfcn-991)*286790 + 71698;
+/*MTKSOC1T*/                *rfN = (151L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/             }
+/*MTKSOC1T*/             else
+/*MTKSOC1T*/             {                                /* ARFCN : 1020~1023     */
+/*MTKSOC1T*/                Nfrac = (arfcn-1020)*286790;
+/*MTKSOC1T*/                *rfN = (152L<<10);
+/*MTKSOC1T*/
+/*MTKSOC1T*/                if(arfcn == 1020)
+/*MTKSOC1T*/                   SDM_IFM = 0;
+/*MTKSOC1T*/             }
+/*MTKSOC1T*/          }
+/*MTKSOC1T*/       }
+/*MTKSOC1T*/       *ifN = (Nfrac>>10) | 0x0252000L;                       /* N_FRAC[22:10] | (CW2|OPLL_DIV4O5_DIV4|TRX|BAND|MODE(warm_up mode))*/
+/*MTKSOC1T*/       *rfN |= ((Nfrac&0x3FF) | 0x0180000L | (SDM_IFM<<18) ); /* N_INT[7:0] | N_FRAC[9:0] | (CW1|OPLL_HLSIDE)| SDM_IFM)*/
+/*MTKSOC1T*/
+/*MTKSOC1T*/       break;
+/*MTKSOC1T*/    }
+/*MTKSOC1T*/ case  FrequencyBand1800 :
+/*MTKSOC1T*/    {
+/*MTKSOC1T*/       if(arfcn<=670)
+/*MTKSOC1T*/       {
+/*MTKSOC1T*/          if(arfcn<=603)
+/*MTKSOC1T*/          {
+/*MTKSOC1T*/             if(arfcn<=547)
+/*MTKSOC1T*/             {
+/*MTKSOC1T*/                if(arfcn<=541)
+/*MTKSOC1T*/                { /* ARFCN : 512~541 */
+/*MTKSOC1T*/                   Nfrac = (arfcn-529)*135848 + 6316927;
+/*MTKSOC1T*/                   *rfN = (138L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/
+/*MTKSOC1T*/                   /*error compensation*/
+/*MTKSOC1T*/                    L1D_RF_Band1800_FrequecyFractionPartCompensation(arfcn, &Nfrac, 0, 0, 519, 529, 540, 542);
+/*MTKSOC1T*/                   /*End: error compensation*/
+/*MTKSOC1T*/
+/*MTKSOC1T*/                }
+/*MTKSOC1T*/                else
+/*MTKSOC1T*/                { /* ARFCN : 542~547 */
+/*MTKSOC1T*/                   Nfrac = (arfcn-542)*137659 + 6848546;
+/*MTKSOC1T*/                   *rfN = (140L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/                   OPLL_DIV4O5_DIV4 = 1;
+/*MTKSOC1T*/
+/*MTKSOC1T*/                   /*error compensation*/
+/*MTKSOC1T*/                   if(arfcn>=547)
+/*MTKSOC1T*/                      Nfrac++;
+/*MTKSOC1T*/                   /*End: error compensation*/
+/*MTKSOC1T*/
+/*MTKSOC1T*/                }
+/*MTKSOC1T*/
+/*MTKSOC1T*/             }
+/*MTKSOC1T*/             else
+/*MTKSOC1T*/             { /* ARFCN : 548~603 */
+/*MTKSOC1T*/                Nfrac = (arfcn-581)*135848 + 4992410;
+/*MTKSOC1T*/                *rfN = (139L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/
+/*MTKSOC1T*/                /*error compensation*/
+/*MTKSOC1T*/                L1D_RF_Band1800_FrequecyFractionPartCompensation(arfcn, &Nfrac, 550, 560, 570, 581, 591, 601);
+/*MTKSOC1T*/                /*End: error compensation*/
+/*MTKSOC1T*/
+/*MTKSOC1T*/             }
+/*MTKSOC1T*/          }
+/*MTKSOC1T*/          else
+/*MTKSOC1T*/          {
+/*MTKSOC1T*/             if(arfcn<=665)
+/*MTKSOC1T*/             {
+/*MTKSOC1T*/                if(arfcn<=608)
+/*MTKSOC1T*/                { /* ARFCN : 604~608 */
+/*MTKSOC1T*/                   Nfrac = (arfcn-604)*137659 + 6994809;
+/*MTKSOC1T*/                   *rfN = (141L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/                   OPLL_DIV4O5_DIV4 = 1;
+/*MTKSOC1T*/
+/*MTKSOC1T*/                   /*error compensation*/
+/*MTKSOC1T*/                   /*End: error compensation*/
+/*MTKSOC1T*/                }
+/*MTKSOC1T*/                else
+/*MTKSOC1T*/                { /* ARFCN : 609~665 */
+/*MTKSOC1T*/                   Nfrac = (arfcn-643)*135848 + 5026372;
+/*MTKSOC1T*/                   *rfN = (140L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/
+/*MTKSOC1T*/                   /*error compensation*/
+/*MTKSOC1T*/                   L1D_RF_Band1800_FrequecyFractionPartCompensation(arfcn, &Nfrac, 612, 622, 632, 643, 653, 663);
+/*MTKSOC1T*/                   /*End: error compensation*/
+/*MTKSOC1T*/                }
+/*MTKSOC1T*/             }
+/*MTKSOC1T*/             else
+/*MTKSOC1T*/             { /* ARFCN : 666~670 */
+/*MTKSOC1T*/                Nfrac = (arfcn-666)*137659 + 7141071;
+/*MTKSOC1T*/                *rfN = (142L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/                OPLL_DIV4O5_DIV4 = 1;
+/*MTKSOC1T*/
+/*MTKSOC1T*/                /*error compensation*/
+/*MTKSOC1T*/                if(arfcn>=667)
+/*MTKSOC1T*/                   Nfrac++;
+/*MTKSOC1T*/                /*End: error compensation*/
+/*MTKSOC1T*/             }
+/*MTKSOC1T*/          }
+/*MTKSOC1T*/       }
+/*MTKSOC1T*/       else
+/*MTKSOC1T*/       {
+/*MTKSOC1T*/          if(arfcn<=788)
+/*MTKSOC1T*/          {
+/*MTKSOC1T*/             if(arfcn<=732)
+/*MTKSOC1T*/             {
+/*MTKSOC1T*/                if(arfcn<=726)
+/*MTKSOC1T*/                {/* ARFCN : 671~726 */
+/*MTKSOC1T*/                   Nfrac = (arfcn-704)*135848 + 4924486;
+/*MTKSOC1T*/                   *rfN = (141L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/
+/*MTKSOC1T*/                   /*error compensation*/
+/*MTKSOC1T*/                   L1D_RF_Band1800_FrequecyFractionPartCompensation(arfcn, &Nfrac, 673, 684, 694, 704, 715, 725);
+/*MTKSOC1T*/                   /*End: error compensation*/
+/*MTKSOC1T*/                }
+/*MTKSOC1T*/                else
+/*MTKSOC1T*/                {/*ARFCN:727~732*/
+/*MTKSOC1T*/                   Nfrac = (arfcn-727)*137659 + 7149675;
+/*MTKSOC1T*/                   *rfN = (143L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/                   OPLL_DIV4O5_DIV4 = 1;
+/*MTKSOC1T*/
+/*MTKSOC1T*/                   /*error compensation*/
+/*MTKSOC1T*/                   if(arfcn>=729)
+/*MTKSOC1T*/                      Nfrac++;
+/*MTKSOC1T*/                   /*End: error compensation*/
+/*MTKSOC1T*/
+/*MTKSOC1T*/                }
+/*MTKSOC1T*/             }
+/*MTKSOC1T*/             else
+/*MTKSOC1T*/             {/*ARFCN:733~788*/
+/*MTKSOC1T*/                Nfrac = (arfcn-766)*135848 + 4958448;
+/*MTKSOC1T*/                *rfN = (142L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/
+/*MTKSOC1T*/                /*error compensation*/
+/*MTKSOC1T*/                L1D_RF_Band1800_FrequecyFractionPartCompensation(arfcn, &Nfrac, 735, 745, 756, 766, 776, 786);
+/*MTKSOC1T*/                /*End: error compensation*/
+/*MTKSOC1T*/             }
+/*MTKSOC1T*/          }
+/*MTKSOC1T*/          else
+/*MTKSOC1T*/          {
+/*MTKSOC1T*/             if(arfcn<=850)
+/*MTKSOC1T*/             {
+/*MTKSOC1T*/                if(arfcn<=794)
+/*MTKSOC1T*/                {/*ARFCN:789~794*/
+/*MTKSOC1T*/                   Nfrac = (arfcn-789)*137659 + 7295938;
+/*MTKSOC1T*/                   *rfN = (144L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/                   OPLL_DIV4O5_DIV4 = 1;
+/*MTKSOC1T*/
+/*MTKSOC1T*/                   /*error compensation*/
+/*MTKSOC1T*/                   if(arfcn>=792)
+/*MTKSOC1T*/                      Nfrac++;
+/*MTKSOC1T*/                   /*End: error compensation*/
+/*MTKSOC1T*/                }
+/*MTKSOC1T*/                else
+/*MTKSOC1T*/                {/*ARFCN:795~850*/
+/*MTKSOC1T*/                   Nfrac = (arfcn-828)*135848 + 4992410;
+/*MTKSOC1T*/                   *rfN = (143L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/                   /*error compensation*/
+/*MTKSOC1T*/                   L1D_RF_Band1800_FrequecyFractionPartCompensation(arfcn, &Nfrac, 797, 806, 817, 828, 838, 848);
+/*MTKSOC1T*/                   /*End:*error compensation*/
+/*MTKSOC1T*/                }
+/*MTKSOC1T*/             }
+/*MTKSOC1T*/             else
+/*MTKSOC1T*/             {
+/*MTKSOC1T*/                if(arfcn<=855)
+/*MTKSOC1T*/                {/*ARFCN:851~855*/
+/*MTKSOC1T*/                   Nfrac = (arfcn-851)*137659 + 7442201;
+/*MTKSOC1T*/                   *rfN = (145L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/                   OPLL_DIV4O5_DIV4 = 1;
+/*MTKSOC1T*/
+/*MTKSOC1T*/                   /*error compensation*/
+/*MTKSOC1T*/                   if(arfcn>=854)
+/*MTKSOC1T*/                      Nfrac++;
+/*MTKSOC1T*/                   /*End: error compensation*/
+/*MTKSOC1T*/                }
+/*MTKSOC1T*/                else
+/*MTKSOC1T*/                {/*ARFCN:856~885*/
+/*MTKSOC1T*/                   Nfrac = (arfcn-869)*135848 + 2173566;
+/*MTKSOC1T*/                   *rfN = (144L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/
+/*MTKSOC1T*/                   /*error compensation*/
+/*MTKSOC1T*/                   L1D_RF_Band1800_FrequecyFractionPartCompensation(arfcn, &Nfrac, 0, 0, 859, 869, 879, 885);
+/*MTKSOC1T*/                   /*End: error compensation*/
+/*MTKSOC1T*/                }
+/*MTKSOC1T*/             }
+/*MTKSOC1T*/          }
+/*MTKSOC1T*/       }
+/*MTKSOC1T*/       *ifN = (Nfrac>>10) | 0x0262000L | (OPLL_DIV4O5_DIV4<<19);                       /* N_FRAC[22:10] | (CW2|OPLL_DIV4O5_DIV4|TRX|BAND|MODE(warm_up mode))*/
+/*MTKSOC1T*/       *rfN |= ((Nfrac&0x3FF) | 0x01C0000L); /* N_INT[7:0] | N_FRAC[9:0] | (CW1|OPLL_HLSIDE)| SDM_IFM)*/
+/*MTKSOC1T*/       break;
+/*MTKSOC1T*/      }
+/*MTKSOC1T*/      case  FrequencyBand1900 :
+/*MTKSOC1T*/      {
+/*MTKSOC1T*/         if(arfcn<=676)
+/*MTKSOC1T*/         {
+/*MTKSOC1T*/            if(arfcn<=546)
+/*MTKSOC1T*/            {
+/*MTKSOC1T*/               if(arfcn<=540)
+/*MTKSOC1T*/               { /*ARFCN:512~540*/
+/*MTKSOC1T*/                  Nfrac = (arfcn-512)*122910 + 4578398;
+/*MTKSOC1T*/                  *rfN = (135L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/               }
+/*MTKSOC1T*/               else
+/*MTKSOC1T*/               { /*ARFCN:541~546*/
+/*MTKSOC1T*/                  Nfrac = (arfcn-541)*121464 + 3112515;
+/*MTKSOC1T*/                  *rfN = (134L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/                  OPLL_DIV4O5_DIV4 = 1;
+/*MTKSOC1T*/               }
+/*MTKSOC1T*/            }
+/*MTKSOC1T*/            else
+/*MTKSOC1T*/            {
+/*MTKSOC1T*/               if(arfcn<=614)
+/*MTKSOC1T*/               {
+/*MTKSOC1T*/                  if(arfcn<=608)
+/*MTKSOC1T*/                  { /*ARFCN:547~608*/
+/*MTKSOC1T*/                     Nfrac = (arfcn-547)*122910 + 491640;
+/*MTKSOC1T*/                     *rfN = (136L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/                  }
+/*MTKSOC1T*/                  else
+/*MTKSOC1T*/                  { /*ARFCN:609~614*/
+/*MTKSOC1T*/                     Nfrac = (arfcn-609)*121464 + 2983460;
+/*MTKSOC1T*/                     *rfN = (135L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/                     OPLL_DIV4O5_DIV4 = 1;
+/*MTKSOC1T*/                  }
+/*MTKSOC1T*/               }
+/*MTKSOC1T*/               else
+/*MTKSOC1T*/               { /*ARFCN:615~676*/
+/*MTKSOC1T*/                  Nfrac = (arfcn-615)*122910 + 460913;
+/*MTKSOC1T*/                  *rfN = (137L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/               }
+/*MTKSOC1T*/            }
+/*MTKSOC1T*/         }
+/*MTKSOC1T*/         else
+/*MTKSOC1T*/         {
+/*MTKSOC1T*/            if(arfcn<=744)
+/*MTKSOC1T*/            {
+/*MTKSOC1T*/               if(arfcn<=682)
+/*MTKSOC1T*/               {/*ARFCN:677~682*/
+/*MTKSOC1T*/                  Nfrac = (arfcn-677)*121464 + 2854404;
+/*MTKSOC1T*/                  *rfN = (136L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/                  OPLL_DIV4O5_DIV4 = 1;
+/*MTKSOC1T*/               }
+/*MTKSOC1T*/               else
+/*MTKSOC1T*/               { /*ARFCN:683~744*/
+/*MTKSOC1T*/                  Nfrac = (arfcn-683)*122910 + 430185;
+/*MTKSOC1T*/                  *rfN = (138L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/               }
+/*MTKSOC1T*/            }
+/*MTKSOC1T*/            else
+/*MTKSOC1T*/            {
+/*MTKSOC1T*/               if(arfcn<=750)
+/*MTKSOC1T*/               {/*ARFCN:745~750*/
+/*MTKSOC1T*/                  Nfrac = (arfcn-745)*121464 + 2725349;
+/*MTKSOC1T*/                  *rfN = (137L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/                  OPLL_DIV4O5_DIV4 = 1;
+/*MTKSOC1T*/               }
+/*MTKSOC1T*/               else
+/*MTKSOC1T*/               { /*ARFCN:751~810*/
+/*MTKSOC1T*/                  Nfrac = (arfcn-751)*122910 + 399458;
+/*MTKSOC1T*/                  *rfN = (139L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/               }
+/*MTKSOC1T*/            }
+/*MTKSOC1T*/         }
+/*MTKSOC1T*/
+/*MTKSOC1T*/         *ifN = (Nfrac>>10) | 0x0272000L | (OPLL_DIV4O5_DIV4<<19);                       /* N_FRAC[22:10] | (CW2|OPLL_DIV4O5_DIV4|TRX|BAND|MODE(warm_up mode))*/
+/*MTKSOC1T*/         *rfN |= ((Nfrac&0x3FF) | 0x0140000L); /* N_INT[7:0] | N_FRAC[9:0] | (CW1|OPLL_HLSIDE)| SDM_IFM)*/
+/*MTKSOC1T*/         break;
+/*MTKSOC1T*/      }
+/*MTKSOC1T*/      default :
+/*MTKSOC1T*/      {
+/*MTKSOC1T*/         break;
+/*MTKSOC1T*/      }
+/*MTKSOC1T*/   }
+/*MTKSOC1T*/   /*For CW27*/
+/*MTKSOC1T*/   L1D_RF_GetTX_SX_CAL_FBX_Setting(arfcn, rf_band, &cw27, MTKSOC1_SX_CAL_DMD_T, ((*ifN>>19) & 0x1) );
+/*MTKSOC1T*/   *ifN |= ( ( cw27     & 0x7F) << 25);
+/*MTKSOC1T*/   *rfN |= ( ((cw27>>7) & 0x3F) << 25);
+/*MTKSOC1T*/}
+/*MTKSOC1T*//* =============================================================== */
+/*MTKSOC1T*/
+/*MTKSOC1T*/void L1D_RF_Band1800_FrequecyFractionPartCompensation(int arfcn, int *Nfrac, short arfcn1, short arfcn2, short arfcn3, short arfcn4, short arfcn5, short arfcn6)
+/*MTKSOC1T*/{
+/*MTKSOC1T*/ if(arfcn<arfcn4)
+/*MTKSOC1T*/ {
+/*MTKSOC1T*/    if(arfcn<arfcn2)
+/*MTKSOC1T*/    {
+/*MTKSOC1T*/       if(arfcn<arfcn1)
+/*MTKSOC1T*/          *Nfrac+=4;
+/*MTKSOC1T*/       else
+/*MTKSOC1T*/          *Nfrac+=3;
+/*MTKSOC1T*/    }
+/*MTKSOC1T*/    else
+/*MTKSOC1T*/    {
+/*MTKSOC1T*/       if(arfcn<arfcn3)
+/*MTKSOC1T*/          *Nfrac+=2;
+/*MTKSOC1T*/       else
+/*MTKSOC1T*/          *Nfrac+=1;
+/*MTKSOC1T*/    }
+/*MTKSOC1T*/ }
+/*MTKSOC1T*/ else if (arfcn>=arfcn5)
+/*MTKSOC1T*/ {
+/*MTKSOC1T*/    if(arfcn<arfcn6)
+/*MTKSOC1T*/    {
+/*MTKSOC1T*/       *Nfrac-=1;
+/*MTKSOC1T*/    }
+/*MTKSOC1T*/    else
+/*MTKSOC1T*/    {
+/*MTKSOC1T*/       *Nfrac-=2;
+/*MTKSOC1T*/    }
+/*MTKSOC1T*/ }
+/*MTKSOC1T*/}
+/*MTKSOC1T*/
+/*MTKSOC1T*/void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MTKSOC1T*/{
+/*MTKSOC1T*/   int Nfrac, SDM_IFM = 1;
+/*MTKSOC1T*/ long cw27 = 0;
+/*MTKSOC1T*/   switch(rf_band)
+/*MTKSOC1T*/   {
+/*MTKSOC1T*/   case  FrequencyBand850 :
+/*MTKSOC1T*/      {
+/*MTKSOC1T*/         if(arfcn<=201)
+/*MTKSOC1T*/         {
+/*MTKSOC1T*/            if(arfcn<=169)
+/*MTKSOC1T*/            {
+/*MTKSOC1T*/               if(arfcn<=136)
+/*MTKSOC1T*/               {/*arfcn:128~136*/
+/*MTKSOC1T*/                  Nfrac = (arfcn-128)*258111 + 6065609;
+/*MTKSOC1T*/                  *rfN = (133L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/               }
+/*MTKSOC1T*/               else
+/*MTKSOC1T*/               {/*arfcn:137~169*/
+/*MTKSOC1T*/                  Nfrac = (arfcn-137)*258111;
+/*MTKSOC1T*/                  *rfN = (134L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/
+/*MTKSOC1T*/               }
+/*MTKSOC1T*/            }
+/*MTKSOC1T*/            else
+/*MTKSOC1T*/            {/*arfcn:170~201*/
+/*MTKSOC1T*/               Nfrac = (arfcn-170)*258111+129056;
+/*MTKSOC1T*/               *rfN = (135L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/            }
+/*MTKSOC1T*/         }
+/*MTKSOC1T*/         else
+/*MTKSOC1T*/         {
+/*MTKSOC1T*/            if(arfcn<=234)
+/*MTKSOC1T*/            {/*arfcn:202~234*/
+/*MTKSOC1T*/               Nfrac = (arfcn-202)*258111;
+/*MTKSOC1T*/               *rfN = (136L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/            }
+/*MTKSOC1T*/            else
+/*MTKSOC1T*/            {/*arfcn:235~251*/
+/*MTKSOC1T*/               Nfrac = (arfcn-235)*258111+129056;
+/*MTKSOC1T*/               *rfN = (137L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/            }
+/*MTKSOC1T*/         }
+/*MTKSOC1T*/         *ifN = (Nfrac>>10)|0x0202000;  /* CW2, TRX:0, BAND:0, MODE:1, N_RFC[22:10]*/
+/*MTKSOC1T*/         if(Nfrac==0) SDM_IFM = 0;
+/*MTKSOC1T*/         *rfN |= ((Nfrac&0x3FF) | 0x0180000L | (SDM_IFM<<18) ); /* N_INT[7:0] | N_FRAC[9:0] | (CW1|OPLL_HLSIDE)| SDM_IFM)*/
+/*MTKSOC1T*/
+/*MTKSOC1T*/         // Get GSM850 signal from GSM900 input pins if flag=1
+/*MTKSOC1T*/         if( BBTXParameters.bbrx_gsm850_gsm900_swap ) *ifN |=0x0010000L ;
+/*MTKSOC1T*/         break;
+/*MTKSOC1T*/      }
+/*MTKSOC1T*/   case  FrequencyBand900 :
+/*MTKSOC1T*/      {
+/*MTKSOC1T*/         if(arfcn<=102)
+/*MTKSOC1T*/         {
+/*MTKSOC1T*/            if(arfcn<=37)
+/*MTKSOC1T*/            {
+/*MTKSOC1T*/               if(arfcn<=4)
+/*MTKSOC1T*/               {/*arfcn:0~4*/
+/*MTKSOC1T*/                  Nfrac = (arfcn)*258111+7098053;
+/*MTKSOC1T*/                  *rfN = (143L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/               }
+/*MTKSOC1T*/               else
+/*MTKSOC1T*/               {/*arfcn:5~37*/
+/*MTKSOC1T*/                  Nfrac = (arfcn-5)*258111;
+/*MTKSOC1T*/                  *rfN = (144L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/               }
+/*MTKSOC1T*/            }
+/*MTKSOC1T*/            else
+/*MTKSOC1T*/            {
+/*MTKSOC1T*/               if(arfcn<=69)
+/*MTKSOC1T*/               {/*arfcn:38~69*/
+/*MTKSOC1T*/                  Nfrac = (arfcn-38)*258111+129056;
+/*MTKSOC1T*/                  *rfN = (145L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/               }
+/*MTKSOC1T*/               else
+/*MTKSOC1T*/               {/*arfcn:70~102*/
+/*MTKSOC1T*/                  Nfrac = (arfcn-70)*258111;
+/*MTKSOC1T*/                  *rfN = (146L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/               }
+/*MTKSOC1T*/            }
+/*MTKSOC1T*/         }
+/*MTKSOC1T*/         else
+/*MTKSOC1T*/         {
+/*MTKSOC1T*/            if(arfcn<=996)
+/*MTKSOC1T*/            {
+/*MTKSOC1T*/               if(arfcn<=124)
+/*MTKSOC1T*/               {/*arfcn:103~124*/
+/*MTKSOC1T*/                  Nfrac = (arfcn-103)*258111+129056;
+/*MTKSOC1T*/                  *rfN = (147L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/               }
+/*MTKSOC1T*/               else
+/*MTKSOC1T*/               {/*arfcn:975~996*/
+/*MTKSOC1T*/                  Nfrac = (arfcn-975)*258111+2839221;
+/*MTKSOC1T*/                  *rfN = (142L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/               }
+/*MTKSOC1T*/            }
+/*MTKSOC1T*/            else
+/*MTKSOC1T*/            {/*arfcn:997~1023*/
+/*MTKSOC1T*/               Nfrac = (arfcn-997)*258111+129056;
+/*MTKSOC1T*/               *rfN = (143L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/            }
+/*MTKSOC1T*/         }
+/*MTKSOC1T*/
+/*MTKSOC1T*/         *ifN = (Nfrac>>10)|0x0212000;  /* CW2, TRX:0, BAND:1, MODE:1, N_RFC[22:10]*/
+/*MTKSOC1T*/
+/*MTKSOC1T*/         if(Nfrac==0) SDM_IFM = 0;
+/*MTKSOC1T*/         *rfN |= ((Nfrac&0x3FF) | 0x0180000L | (SDM_IFM<<18) ); /* N_INT[7:0] | N_FRAC[9:0] | (CW1|OPLL_HLSIDE)| SDM_IFM)*/
+/*MTKSOC1T*/
+/*MTKSOC1T*/         // Get GSM900 signal from GSM850 input pins if flag=1
+/*MTKSOC1T*/         if( BBTXParameters.bbrx_gsm850_gsm900_swap )  *ifN &= (~(0x0010000L));
+/*MTKSOC1T*/         break;
+/*MTKSOC1T*/      }
+/*MTKSOC1T*/   case  FrequencyBand1800 :
+/*MTKSOC1T*/      {
+/*MTKSOC1T*/         if(arfcn<=715)
+/*MTKSOC1T*/         {
+/*MTKSOC1T*/            if(arfcn<=585)
+/*MTKSOC1T*/            {
+/*MTKSOC1T*/               if(arfcn<=520)
+/*MTKSOC1T*/               {/*arfcn:512~520*/
+/*MTKSOC1T*/                  L1D_RF_GetRxPLL_HB_FractionPart(&Nfrac, arfcn, 456);
+/*MTKSOC1T*/                  *rfN = (138L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/               }
+/*MTKSOC1T*/               else
+/*MTKSOC1T*/               {/*arfcn:521~585*/
+/*MTKSOC1T*/                  L1D_RF_GetRxPLL_HB_FractionPart(&Nfrac, arfcn, 521);
+/*MTKSOC1T*/                  *rfN = (139L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/               }
+/*MTKSOC1T*/            }
+/*MTKSOC1T*/            else
+/*MTKSOC1T*/            {
+/*MTKSOC1T*/               if(arfcn<=650)
+/*MTKSOC1T*/               {/*arfcn:586~650*/
+/*MTKSOC1T*/                  L1D_RF_GetRxPLL_HB_FractionPart(&Nfrac, arfcn, 586);
+/*MTKSOC1T*/                  *rfN = (140L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/               }
+/*MTKSOC1T*/               else
+/*MTKSOC1T*/               {/*arfcn:651~715*/
+/*MTKSOC1T*/                  L1D_RF_GetRxPLL_HB_FractionPart(&Nfrac, arfcn, 651);
+/*MTKSOC1T*/                  *rfN = (141L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/               }
+/*MTKSOC1T*/            }
+/*MTKSOC1T*/         }
+/*MTKSOC1T*/         else
+/*MTKSOC1T*/         {
+/*MTKSOC1T*/            if(arfcn<=845)
+/*MTKSOC1T*/            {
+/*MTKSOC1T*/               if(arfcn<=780)
+/*MTKSOC1T*/               {/*arfcn:716~780*/
+/*MTKSOC1T*/                  L1D_RF_GetRxPLL_HB_FractionPart(&Nfrac, arfcn, 716);
+/*MTKSOC1T*/                  *rfN = (142L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/               }
+/*MTKSOC1T*/               else
+/*MTKSOC1T*/               {/*arfcn:781~845*/
+/*MTKSOC1T*/                  L1D_RF_GetRxPLL_HB_FractionPart(&Nfrac, arfcn, 781);
+/*MTKSOC1T*/                  *rfN = (143L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/               }
+/*MTKSOC1T*/            }
+/*MTKSOC1T*/            else
+/*MTKSOC1T*/            {/*arfcn:846~885*/
+/*MTKSOC1T*/               L1D_RF_GetRxPLL_HB_FractionPart(&Nfrac, arfcn, 846);
+/*MTKSOC1T*/               *rfN = (144L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/            }
+/*MTKSOC1T*/         }
+/*MTKSOC1T*/
+/*MTKSOC1T*/
+/*MTKSOC1T*/         *ifN = (Nfrac>>10)|0x0222000;  /* CW2, TRX:0, BAND:2, MODE:1, N_RFC[22:10]*/
+/*MTKSOC1T*/
+/*MTKSOC1T*/         if(Nfrac==0) SDM_IFM = 0;
+/*MTKSOC1T*/         *rfN |= ((Nfrac&0x3FF) | 0x0180000L | (SDM_IFM<<18) ); /* N_INT[7:0] | N_FRAC[9:0] | (CW1|OPLL_HLSIDE)| SDM_IFM)*/
+/*MTKSOC1T*/
+/*MTKSOC1T*/         // Get PCS1900 signal from DCS1800 input pins if flag=1
+/*MTKSOC1T*/         if( BBTXParameters.bbrx_dcs1800_pcs1900_swap ) *ifN |=0x0010000L ;
+/*MTKSOC1T*/         break;
+/*MTKSOC1T*/      }
+/*MTKSOC1T*/   case  FrequencyBand1900 :
+/*MTKSOC1T*/      {
+/*MTKSOC1T*/         if(arfcn<=675)
+/*MTKSOC1T*/         {
+/*MTKSOC1T*/            if(arfcn<=610)
+/*MTKSOC1T*/            {
+/*MTKSOC1T*/               if(arfcn<=545)
+/*MTKSOC1T*/               {/*arfcn:512~545*/
+/*MTKSOC1T*/                  L1D_RF_GetRxPLL_HB_FractionPart(&Nfrac, arfcn, 481);
+/*MTKSOC1T*/                  *rfN = (148L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/               }
+/*MTKSOC1T*/               else
+/*MTKSOC1T*/               {/*arfcn:546~610*/
+/*MTKSOC1T*/                  L1D_RF_GetRxPLL_HB_FractionPart(&Nfrac, arfcn, 546);
+/*MTKSOC1T*/                  *rfN = (149L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/               }
+/*MTKSOC1T*/            }
+/*MTKSOC1T*/            else
+/*MTKSOC1T*/            {/*arfcn:611~675*/
+/*MTKSOC1T*/               L1D_RF_GetRxPLL_HB_FractionPart(&Nfrac, arfcn, 611);
+/*MTKSOC1T*/               *rfN = (150L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/            }
+/*MTKSOC1T*/         }
+/*MTKSOC1T*/         else
+/*MTKSOC1T*/         {
+/*MTKSOC1T*/            if(arfcn<=805)
+/*MTKSOC1T*/            {
+/*MTKSOC1T*/               if(arfcn<=740)
+/*MTKSOC1T*/               {/*arfcn:676~740*/
+/*MTKSOC1T*/                  L1D_RF_GetRxPLL_HB_FractionPart(&Nfrac, arfcn, 676);
+/*MTKSOC1T*/                  *rfN = (151L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/               }
+/*MTKSOC1T*/               else
+/*MTKSOC1T*/               {/*arfcn:741~805*/
+/*MTKSOC1T*/                  L1D_RF_GetRxPLL_HB_FractionPart(&Nfrac, arfcn, 741);
+/*MTKSOC1T*/                  *rfN = (152L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/               }
+/*MTKSOC1T*/            }
+/*MTKSOC1T*/            else
+/*MTKSOC1T*/            {/*arfcn:806~810*/
+/*MTKSOC1T*/               L1D_RF_GetRxPLL_HB_FractionPart(&Nfrac, arfcn, 806);
+/*MTKSOC1T*/               *rfN = (153L<<10); /* N_INT[7:0]*/
+/*MTKSOC1T*/            }
+/*MTKSOC1T*/         }
+/*MTKSOC1T*/
+/*MTKSOC1T*/         *ifN = (Nfrac>>10)|0x0232000;  /* CW2, TRX:0, BAND:2, MODE:1, N_RFC[22:10]*/
+/*MTKSOC1T*/
+/*MTKSOC1T*/         if(Nfrac==0) SDM_IFM = 0;
+/*MTKSOC1T*/         *rfN |= ((Nfrac&0x3FF) | 0x0180000L | (SDM_IFM<<18) ); /* N_INT[7:0] | N_FRAC[9:0] | (CW1|OPLL_HLSIDE)| SDM_IFM)*/
+/*MTKSOC1T*/         // Get DCS1800 signal from PCS1900 input pins if flag=1
+/*MTKSOC1T*/         if( BBTXParameters.bbrx_dcs1800_pcs1900_swap)  *ifN &= (~(0x0010000L));
+/*MTKSOC1T*/         break;
+/*MTKSOC1T*/      }
+/*MTKSOC1T*/   default :
+/*MTKSOC1T*/      {
+/*MTKSOC1T*/         break;
+/*MTKSOC1T*/      }
+/*MTKSOC1T*/   }
+/*MTKSOC1T*/   L1D_RF_GetRX_SX_CAL_FBX_Setting(arfcn, rf_band, &cw27, MTKSOC1_SX_CAL_DMD_T);
+/*MTKSOC1T*/   *ifN |= ( ( cw27     & 0x7F) << 25);
+/*MTKSOC1T*/   *rfN |= ( ((cw27>>7) & 0x3F) << 25);
+/*MTKSOC1T*/}
+/*MTKSOC1T*//* =============================================================== */
+/*MTKSOC1T*/
+/*MTKSOC1T*/void L1D_RF_GetRxPLL_HB_FractionPart(int *Nfrac, int arfcn, int arfcn_base)
+/*MTKSOC1T*/{
+/*MTKSOC1T*/   int Diff_arfcn;
+/*MTKSOC1T*/
+/*MTKSOC1T*/   Diff_arfcn = arfcn - arfcn_base;
+/*MTKSOC1T*/   *Nfrac = (Diff_arfcn >>1) * 258111;
+/*MTKSOC1T*/   if(Diff_arfcn & 0x1) *Nfrac += 129056;
+/*MTKSOC1T*/}
+/*MTKSOC1T*/
+/*MTKSOC1T*//*output: CW27 */
+/*MTKSOC1T*/void L1D_RF_GetRX_SX_CAL_FBX_Setting(int arfcn, int rf_band, long *cw27, short sx_cal_dmd_t)
+/*MTKSOC1T*/{
+/*MTKSOC1T*/ int N_sx_cal_fbx = 0;
+/*MTKSOC1T*/ if( !MTKSOC1_SX_CALSBA )
+/*MTKSOC1T*/ {
+/*MTKSOC1T*/     *cw27 = 0;
+/*MTKSOC1T*/      return;
+/*MTKSOC1T*/ }
+/*MTKSOC1T*/   if(sx_cal_dmd_t)
+/*MTKSOC1T*/   {
+/*MTKSOC1T*/      switch(rf_band)
+/*MTKSOC1T*/      {
+/*MTKSOC1T*/      case  FrequencyBand850 :
+/*MTKSOC1T*/         {
+/*MTKSOC1T*/            N_sx_cal_fbx = 468 + arfcn;
+/*MTKSOC1T*/            break;
+/*MTKSOC1T*/         }
+/*MTKSOC1T*/      case  FrequencyBand900 :
+/*MTKSOC1T*/         {
+/*MTKSOC1T*/            if(arfcn<=124)
+/*MTKSOC1T*/               N_sx_cal_fbx = 925 + arfcn;
+/*MTKSOC1T*/            else
+/*MTKSOC1T*/               N_sx_cal_fbx = -99 + arfcn;
+/*MTKSOC1T*/
+/*MTKSOC1T*/            break;
+/*MTKSOC1T*/         }
+/*MTKSOC1T*/      case  FrequencyBand1800 :
+/*MTKSOC1T*/         {
+/*MTKSOC1T*/            N_sx_cal_fbx = 251- ( (arfcn-512)>>1 )+ arfcn;
+/*MTKSOC1T*/            break;
+/*MTKSOC1T*/         }
+/*MTKSOC1T*/      case  FrequencyBand1900 :
+/*MTKSOC1T*/         {
+/*MTKSOC1T*/            N_sx_cal_fbx = 564- ( (arfcn-511)>>1 )+ arfcn;
+/*MTKSOC1T*/            break;
+/*MTKSOC1T*/         }
+/*MTKSOC1T*/      default:
+/*MTKSOC1T*/         break;
+/*MTKSOC1T*/      }
+/*MTKSOC1T*/
+/*MTKSOC1T*/   }
+/*MTKSOC1T*/   else
+/*MTKSOC1T*/   {
+/*MTKSOC1T*/      switch(rf_band)
+/*MTKSOC1T*/      {
+/*MTKSOC1T*/      case  FrequencyBand850 :
+/*MTKSOC1T*/         {
+/*MTKSOC1T*/            N_sx_cal_fbx = (int)( 348+ 1+ arfcn - (arfcn-130 +5)/5 ); /* 1- 5/5 =0 */
+/*MTKSOC1T*/            break;
+/*MTKSOC1T*/         }
+/*MTKSOC1T*/      case  FrequencyBand900 :
+/*MTKSOC1T*/         {
+/*MTKSOC1T*/            if(arfcn<=124)
+/*MTKSOC1T*/            {
+/*MTKSOC1T*/               N_sx_cal_fbx = (int)( 739+ 1+ arfcn -(arfcn-3+5)/5 ); /* 1- 5/5 =0 */
+/*MTKSOC1T*/            }
+/*MTKSOC1T*/            else
+/*MTKSOC1T*/            {
+/*MTKSOC1T*/               N_sx_cal_fbx = (int)( -275+ 1+ arfcn -(arfcn-977+5)/5 ); /* 1- 5/5 =0 */
+/*MTKSOC1T*/            }
+/*MTKSOC1T*/            break;
+/*MTKSOC1T*/         }
+/*MTKSOC1T*/      case  FrequencyBand1800 :
+/*MTKSOC1T*/         {
+/*MTKSOC1T*/            N_sx_cal_fbx = (int)( 98+ arfcn- ( (arfcn-512)/5 )*3 - ( ( (arfcn-512)%5 )>>1 ) );
+/*MTKSOC1T*/            break;
+/*MTKSOC1T*/         }
+/*MTKSOC1T*/      case  FrequencyBand1900 :
+/*MTKSOC1T*/         {
+/*MTKSOC1T*/            N_sx_cal_fbx = (int)( 348+ arfcn- ( (arfcn-512)/5 )*3 - ( ( (arfcn-512)%5 )>>1 ) );
+/*MTKSOC1T*/            break;
+/*MTKSOC1T*/         }
+/*MTKSOC1T*/      default:
+/*MTKSOC1T*/         break;
+/*MTKSOC1T*/      }
+/*MTKSOC1T*/
+/*MTKSOC1T*/   }
+/*MTKSOC1T*/ *cw27 = 0x1b00001L | (N_sx_cal_fbx<<2) | (sx_cal_dmd_t<<1); /*CW27 | sx_cal_fbx | sx_cal_dmd_t | sx_calsba*/
+/*MTKSOC1T*/}
+/*MTKSOC1T*/
+/*MTKSOC1T*//*output: CW27 */
+/*MTKSOC1T*/void L1D_RF_GetTX_SX_CAL_FBX_Setting(int arfcn, int rf_band, long *cw27, short sx_cal_dmd_t, short OPLL_DIV4O5_DIV4)
+/*MTKSOC1T*/{
+/*MTKSOC1T*/   int N_sx_cal_fbx = 0;
+/*MTKSOC1T*/   if(!MTKSOC1_SX_CALSBA)
+/*MTKSOC1T*/   {
+/*MTKSOC1T*/      *cw27 = 0;
+/*MTKSOC1T*/      return;
+/*MTKSOC1T*/   }
+/*MTKSOC1T*/   if(sx_cal_dmd_t)
+/*MTKSOC1T*/   {
+/*MTKSOC1T*/      switch(rf_band)
+/*MTKSOC1T*/      {
+/*MTKSOC1T*/      case  FrequencyBand850 :
+/*MTKSOC1T*/         {
+/*MTKSOC1T*/            N_sx_cal_fbx = (int)( 702 -1 +arfcn +(arfcn-134 +9)/9 ); /* 1- 9/9 =0 */
+/*MTKSOC1T*/            break;
+/*MTKSOC1T*/         }
+/*MTKSOC1T*/      case  FrequencyBand900 :
+/*MTKSOC1T*/         {
+/*MTKSOC1T*/            if(arfcn<=124)
+/*MTKSOC1T*/            {
+/*MTKSOC1T*/               N_sx_cal_fbx = (int)( 1195 -1 +arfcn +(arfcn-1+9)/9 ); /* 1- 9/9 =0 */
+/*MTKSOC1T*/            }
+/*MTKSOC1T*/            else
+/*MTKSOC1T*/            {
+/*MTKSOC1T*/               N_sx_cal_fbx = (int)( 166 -1 +arfcn +(arfcn-980+9)/9 ); /* 1- 9/9 =0 */
+/*MTKSOC1T*/            }
+/*MTKSOC1T*/
+/*MTKSOC1T*/            break;
+/*MTKSOC1T*/         }
+/*MTKSOC1T*/      case  FrequencyBand1800 :
+/*MTKSOC1T*/         {
+/*MTKSOC1T*/            if(OPLL_DIV4O5_DIV4)
+/*MTKSOC1T*/               N_sx_cal_fbx = (int) ((arfcn-512+8551)*2*16-3000*15*5+30)/(15*4); //DIV16
+/*MTKSOC1T*/            else
+/*MTKSOC1T*/               N_sx_cal_fbx = (int) ((arfcn-512+8551)*2*20-3000*19*5+38)/(19*4); //DIV20
+/*MTKSOC1T*/            break;
+/*MTKSOC1T*/         }
+/*MTKSOC1T*/      case  FrequencyBand1900 :
+/*MTKSOC1T*/         {
+/*MTKSOC1T*/            if(OPLL_DIV4O5_DIV4)
+/*MTKSOC1T*/               N_sx_cal_fbx = (int)( ( (arfcn-512+9251)*2*16 -3000*5*17 +34) /(4*17)); /* DIV16 (((Arfcn-512+1850.2*5)*2*16-3000*5*17+34)/(5*17*0.8)).*/
+/*MTKSOC1T*/            else
+/*MTKSOC1T*/               N_sx_cal_fbx = (int)( ( (arfcn-512+9251)*2*20 -3000*5*21 +42) /(4*21)); //DIV20 =INT(((A5-512+1850.2*5)*2*20-3000*5*21+42)/(5*21*0.8))
+/*MTKSOC1T*/            break;
+/*MTKSOC1T*/         }
+/*MTKSOC1T*/      default:
+/*MTKSOC1T*/         break;
+/*MTKSOC1T*/      }
+/*MTKSOC1T*/
+/*MTKSOC1T*/   }
+/*MTKSOC1T*/   else
+/*MTKSOC1T*/   {
+/*MTKSOC1T*/      switch(rf_band)
+/*MTKSOC1T*/      {
+/*MTKSOC1T*/      case  FrequencyBand850 :
+/*MTKSOC1T*/         {
+/*MTKSOC1T*/            N_sx_cal_fbx = (int)( 534+ 1+ arfcn - (arfcn-134 +9)/9 ); /* 1- 9/9 =0 */
+/*MTKSOC1T*/            break;
+/*MTKSOC1T*/         }
+/*MTKSOC1T*/      case  FrequencyBand900 :
+/*MTKSOC1T*/         {
+/*MTKSOC1T*/            if(arfcn<=124)
+/*MTKSOC1T*/            {
+/*MTKSOC1T*/               N_sx_cal_fbx = (int)( 955+ 1+ arfcn -(arfcn-1+9)/9 ); /* 1- 9/9 =0 */
+/*MTKSOC1T*/            }
+/*MTKSOC1T*/            else
+/*MTKSOC1T*/            {
+/*MTKSOC1T*/               N_sx_cal_fbx = (int)( -64+ 1+ arfcn -(arfcn-980+9)/9 ); /* 1- 9/9 =0 */
+/*MTKSOC1T*/            }
+/*MTKSOC1T*/            break;
+/*MTKSOC1T*/         }
+/*MTKSOC1T*/      case  FrequencyBand1800 :
+/*MTKSOC1T*/         {
+/*MTKSOC1T*/            if(OPLL_DIV4O5_DIV4)
+/*MTKSOC1T*/               N_sx_cal_fbx = (int)( ((arfcn-512+8551)*2*16-3000*15*5+37) / (15*5) ); /* DIV16 ( (arfcn-512+1710.2*5)*2*16-3000*15*5+37) / (15*5) ) (arfcn-512+1710.2*5)*2 is RFVCO freq. 37 is for round. 16/15 is div16.*/
+/*MTKSOC1T*/            else
+/*MTKSOC1T*/               N_sx_cal_fbx = (int)( ((arfcn-512+8551)*2*20-3000*19*5+47) / (19*5)); //DIV20
+/*MTKSOC1T*/            break;
+/*MTKSOC1T*/         }
+/*MTKSOC1T*/      case  FrequencyBand1900 :
+/*MTKSOC1T*/         {
+/*MTKSOC1T*/            if(OPLL_DIV4O5_DIV4)
+/*MTKSOC1T*/               N_sx_cal_fbx = (int)( ( (arfcn-512+9251)*2*16 -3000*5*17 + 42)/ (5*17)); /* DIV16 INT(((A5-512+1850.2*5)*2*16+42)/(5*17)-3000).*/
+/*MTKSOC1T*/            else
+/*MTKSOC1T*/               N_sx_cal_fbx = (int)( ( (arfcn-512+9251)*2*20 -3000*5*21 + 52)/ (5*21) ); //DIV20
+/*MTKSOC1T*/            break;
+/*MTKSOC1T*/         }
+/*MTKSOC1T*/      default:
+/*MTKSOC1T*/         break;
+/*MTKSOC1T*/      }
+/*MTKSOC1T*/
+/*MTKSOC1T*/   }
+/*MTKSOC1T*/ *cw27 = 0x1b00001L | (N_sx_cal_fbx<<2) | (sx_cal_dmd_t<<1); /*CW27 | sx_cal_fbx | sx_cal_dmd_t | sx_calsba*/
+/*MTKSOC1T*/}
+#endif
+
+#if IS_RF_MTKSOC1
+/*MTKSOC1*/void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MTKSOC1*/{
+/*MTKSOC1*/ int Nfrac, SDM_IFM = 1, OPLL_DIV4O5_DIV4 = 0;
+/*MTKSOC1*/ switch(rf_band)
+/*MTKSOC1*/ {
+/*MTKSOC1*/ case  FrequencyBand850 :
+/*MTKSOC1*/    {
+/*MTKSOC1*/       if(arfcn<=189)
+/*MTKSOC1*/       {
+/*MTKSOC1*/          if(arfcn<=160)
+/*MTKSOC1*/          {
+/*MTKSOC1*/             if(arfcn<=131)
+/*MTKSOC1*/             {                                /* ARFCN : 128~131     */
+/*MTKSOC1*/                Nfrac = (arfcn-128)*286790 + 7456540;
+/*MTKSOC1*/                *rfN = (140L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/             }
+/*MTKSOC1*/             else
+/*MTKSOC1*/             {                                /* ARFCN : 132~160     */
+/*MTKSOC1*/                Nfrac = (arfcn-132)*286790 + 215093;
+/*MTKSOC1*/                *rfN = (141L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/             }
+/*MTKSOC1*/          }
+/*MTKSOC1*/          else
+/*MTKSOC1*/          {                              /* ARFCN : 161~189     */
+/*MTKSOC1*/             Nfrac = (arfcn-161)*286790 + 143395;
+/*MTKSOC1*/             *rfN = (142L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/          }
+/*MTKSOC1*/       }
+/*MTKSOC1*/       else
+/*MTKSOC1*/       {
+/*MTKSOC1*/          if(arfcn<=218)
+/*MTKSOC1*/          {                              /* ARFCN : 190~218     */
+/*MTKSOC1*/             Nfrac = (arfcn-190)*286790 + 71698;
+/*MTKSOC1*/             *rfN = (143L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/          }
+/*MTKSOC1*/          else
+/*MTKSOC1*/          {
+/*MTKSOC1*/             if(arfcn<=248)
+/*MTKSOC1*/             {                                /* ARFCN : 219~248     */
+/*MTKSOC1*/                Nfrac = (arfcn-219)*286790;
+/*MTKSOC1*/                *rfN = (144L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/
+/*MTKSOC1*/                if(arfcn == 219)
+/*MTKSOC1*/                   SDM_IFM = 0;
+/*MTKSOC1*/             }
+/*MTKSOC1*/             else
+/*MTKSOC1*/             {                                /* ARFCN : 249~251     */
+/*MTKSOC1*/                Nfrac = (arfcn-249)*286790 + 215093;
+/*MTKSOC1*/                *rfN = (145L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/             }
+/*MTKSOC1*/          }
+/*MTKSOC1*/       }
+/*MTKSOC1*/
+/*MTKSOC1*/       *ifN = (Nfrac>>10) | 0x0242000L;                       /* N_FRAC[22:10] | (CW2|OPLL_DIV4O5_DIV4|TRX|BAND|MODE(warm_up mode))*/
+/*MTKSOC1*/       *rfN |= ((Nfrac&0x3FF) | 0x0180000L | (SDM_IFM<<18) ); /* N_INT[7:0] | N_FRAC[9:0] | (CW1|OPLL_HLSIDE)| SDM_IFM)*/
+/*MTKSOC1*/
+/*MTKSOC1*/       break;
+/*MTKSOC1*/    }
+/*MTKSOC1*/ case  FrequencyBand900 :
+/*MTKSOC1*/    {
+/*MTKSOC1*/       if(arfcn<=112)
+/*MTKSOC1*/       {
+/*MTKSOC1*/          if(arfcn<=54)
+/*MTKSOC1*/          {
+/*MTKSOC1*/             if(arfcn<=25)
+/*MTKSOC1*/             {                                /* ARFCN : 0~25     */
+/*MTKSOC1*/                Nfrac = (arfcn)*286790 + 1147160;
+/*MTKSOC1*/                *rfN = (152L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/             }
+/*MTKSOC1*/             else
+/*MTKSOC1*/             {                                /* ARFCN : 26~54     */
+/*MTKSOC1*/                Nfrac = (arfcn-26)*286790 + 215093;
+/*MTKSOC1*/                *rfN = (153L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/             }
+/*MTKSOC1*/          }
+/*MTKSOC1*/          else
+/*MTKSOC1*/          {
+/*MTKSOC1*/             if(arfcn<=83)
+/*MTKSOC1*/             {                                /* ARFCN : 55~83     */
+/*MTKSOC1*/                Nfrac = (arfcn-55)*286790 + 143395;
+/*MTKSOC1*/                *rfN = (154L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/             }
+/*MTKSOC1*/             else
+/*MTKSOC1*/             {                                /* ARFCN : 84~112     */
+/*MTKSOC1*/                Nfrac = (arfcn-84)*286790 + 71698;
+/*MTKSOC1*/                *rfN = (155L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/             }
+/*MTKSOC1*/          }
+/*MTKSOC1*/       }
+/*MTKSOC1*/       else
+/*MTKSOC1*/       {
+/*MTKSOC1*/          if(arfcn<=990)
+/*MTKSOC1*/          {
+/*MTKSOC1*/             if(arfcn<=124)
+/*MTKSOC1*/             {                                /* ARFCN : 113~124     */
+/*MTKSOC1*/                Nfrac = (arfcn-113)*286790;
+/*MTKSOC1*/                *rfN = (156L<<10);
+/*MTKSOC1*/
+/*MTKSOC1*/                if(arfcn == 113)
+/*MTKSOC1*/                   SDM_IFM = 0;
+/*MTKSOC1*/
+/*MTKSOC1*/             }
+/*MTKSOC1*/             else
+/*MTKSOC1*/             {                              /* ARFCN : 975~990     */
+/*MTKSOC1*/                Nfrac = (arfcn-975)*286790 + 3871665;
+/*MTKSOC1*/                *rfN = (150L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/             }
+/*MTKSOC1*/          }
+/*MTKSOC1*/          else
+/*MTKSOC1*/          {
+/*MTKSOC1*/             if(arfcn<=1019)
+/*MTKSOC1*/             {                                /* ARFCN : 991~1019     */
+/*MTKSOC1*/                Nfrac = (arfcn-991)*286790 + 71698;
+/*MTKSOC1*/                *rfN = (151L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/             }
+/*MTKSOC1*/             else
+/*MTKSOC1*/             {                                /* ARFCN : 1020~1023     */
+/*MTKSOC1*/                Nfrac = (arfcn-1020)*286790;
+/*MTKSOC1*/                *rfN = (152L<<10);
+/*MTKSOC1*/
+/*MTKSOC1*/                if(arfcn == 1020)
+/*MTKSOC1*/                   SDM_IFM = 0;
+/*MTKSOC1*/             }
+/*MTKSOC1*/          }
+/*MTKSOC1*/       }
+/*MTKSOC1*/       *ifN = (Nfrac>>10) | 0x0252000L;                       /* N_FRAC[22:10] | (CW2|OPLL_DIV4O5_DIV4|TRX|BAND|MODE(warm_up mode))*/
+/*MTKSOC1*/       *rfN |= ((Nfrac&0x3FF) | 0x0180000L | (SDM_IFM<<18) ); /* N_INT[7:0] | N_FRAC[9:0] | (CW1|OPLL_HLSIDE)| SDM_IFM)*/
+/*MTKSOC1*/
+/*MTKSOC1*/       break;
+/*MTKSOC1*/    }
+/*MTKSOC1*/ case  FrequencyBand1800 :
+/*MTKSOC1*/    {
+/*MTKSOC1*/       if(arfcn<=670)
+/*MTKSOC1*/       {
+/*MTKSOC1*/          if(arfcn<=603)
+/*MTKSOC1*/          {
+/*MTKSOC1*/             if(arfcn<=547)
+/*MTKSOC1*/             {
+/*MTKSOC1*/                if(arfcn<=541)
+/*MTKSOC1*/                { /* ARFCN : 512~541 */
+/*MTKSOC1*/                   Nfrac = (arfcn-529)*135848 + 6316927;
+/*MTKSOC1*/                   *rfN = (138L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/
+/*MTKSOC1*/                   /*error compensation*/
+/*MTKSOC1*/                    L1D_RF_Band1800_FrequecyFractionPartCompensation(arfcn, &Nfrac, 0, 0, 519, 529, 540, 542);
+/*MTKSOC1*/                   /*End: error compensation*/
+/*MTKSOC1*/
+/*MTKSOC1*/                }
+/*MTKSOC1*/                else
+/*MTKSOC1*/                { /* ARFCN : 542~547 */
+/*MTKSOC1*/                   Nfrac = (arfcn-542)*137659 + 6848546;
+/*MTKSOC1*/                   *rfN = (140L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/                   OPLL_DIV4O5_DIV4 = 1;
+/*MTKSOC1*/
+/*MTKSOC1*/                   /*error compensation*/
+/*MTKSOC1*/                   if(arfcn>=547)
+/*MTKSOC1*/                      Nfrac++;
+/*MTKSOC1*/                   /*End: error compensation*/
+/*MTKSOC1*/
+/*MTKSOC1*/                }
+/*MTKSOC1*/
+/*MTKSOC1*/             }
+/*MTKSOC1*/             else
+/*MTKSOC1*/             { /* ARFCN : 548~603 */
+/*MTKSOC1*/                Nfrac = (arfcn-581)*135848 + 4992410;
+/*MTKSOC1*/                *rfN = (139L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/
+/*MTKSOC1*/                /*error compensation*/
+/*MTKSOC1*/                L1D_RF_Band1800_FrequecyFractionPartCompensation(arfcn, &Nfrac, 550, 560, 570, 581, 591, 601);
+/*MTKSOC1*/                /*End: error compensation*/
+/*MTKSOC1*/
+/*MTKSOC1*/             }
+/*MTKSOC1*/          }
+/*MTKSOC1*/          else
+/*MTKSOC1*/          {
+/*MTKSOC1*/             if(arfcn<=665)
+/*MTKSOC1*/             {
+/*MTKSOC1*/                if(arfcn<=608)
+/*MTKSOC1*/                { /* ARFCN : 604~608 */
+/*MTKSOC1*/                   Nfrac = (arfcn-604)*137659 + 6994809;
+/*MTKSOC1*/                   *rfN = (141L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/                   OPLL_DIV4O5_DIV4 = 1;
+/*MTKSOC1*/
+/*MTKSOC1*/                   /*error compensation*/
+/*MTKSOC1*/                   /*End: error compensation*/
+/*MTKSOC1*/                }
+/*MTKSOC1*/                else
+/*MTKSOC1*/                { /* ARFCN : 609~665 */
+/*MTKSOC1*/                   Nfrac = (arfcn-643)*135848 + 5026372;
+/*MTKSOC1*/                   *rfN = (140L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/
+/*MTKSOC1*/                   /*error compensation*/
+/*MTKSOC1*/                   L1D_RF_Band1800_FrequecyFractionPartCompensation(arfcn, &Nfrac, 612, 622, 632, 643, 653, 663);
+/*MTKSOC1*/                   /*End: error compensation*/
+/*MTKSOC1*/                }
+/*MTKSOC1*/             }
+/*MTKSOC1*/             else
+/*MTKSOC1*/             { /* ARFCN : 666~670 */
+/*MTKSOC1*/                Nfrac = (arfcn-666)*137659 + 7141071;
+/*MTKSOC1*/                *rfN = (142L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/                OPLL_DIV4O5_DIV4 = 1;
+/*MTKSOC1*/
+/*MTKSOC1*/                /*error compensation*/
+/*MTKSOC1*/                if(arfcn>=667)
+/*MTKSOC1*/                   Nfrac++;
+/*MTKSOC1*/                /*End: error compensation*/
+/*MTKSOC1*/             }
+/*MTKSOC1*/          }
+/*MTKSOC1*/       }
+/*MTKSOC1*/       else
+/*MTKSOC1*/       {
+/*MTKSOC1*/          if(arfcn<=788)
+/*MTKSOC1*/          {
+/*MTKSOC1*/             if(arfcn<=732)
+/*MTKSOC1*/             {
+/*MTKSOC1*/                if(arfcn<=726)
+/*MTKSOC1*/                {/* ARFCN : 671~726 */
+/*MTKSOC1*/                   Nfrac = (arfcn-704)*135848 + 4924486;
+/*MTKSOC1*/                   *rfN = (141L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/
+/*MTKSOC1*/                   /*error compensation*/
+/*MTKSOC1*/                   L1D_RF_Band1800_FrequecyFractionPartCompensation(arfcn, &Nfrac, 673, 684, 694, 704, 715, 725);
+/*MTKSOC1*/                   /*End: error compensation*/
+/*MTKSOC1*/                }
+/*MTKSOC1*/                else
+/*MTKSOC1*/                {/*ARFCN:727~732*/
+/*MTKSOC1*/                   Nfrac = (arfcn-727)*137659 + 7149675;
+/*MTKSOC1*/                   *rfN = (143L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/                   OPLL_DIV4O5_DIV4 = 1;
+/*MTKSOC1*/
+/*MTKSOC1*/                   /*error compensation*/
+/*MTKSOC1*/                   if(arfcn>=729)
+/*MTKSOC1*/                      Nfrac++;
+/*MTKSOC1*/                   /*End: error compensation*/
+/*MTKSOC1*/
+/*MTKSOC1*/                }
+/*MTKSOC1*/             }
+/*MTKSOC1*/             else
+/*MTKSOC1*/             {/*ARFCN:733~788*/
+/*MTKSOC1*/                Nfrac = (arfcn-766)*135848 + 4958448;
+/*MTKSOC1*/                *rfN = (142L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/
+/*MTKSOC1*/                /*error compensation*/
+/*MTKSOC1*/                L1D_RF_Band1800_FrequecyFractionPartCompensation(arfcn, &Nfrac, 735, 745, 756, 766, 776, 786);
+/*MTKSOC1*/                /*End: error compensation*/
+/*MTKSOC1*/             }
+/*MTKSOC1*/          }
+/*MTKSOC1*/          else
+/*MTKSOC1*/          {
+/*MTKSOC1*/             if(arfcn<=850)
+/*MTKSOC1*/             {
+/*MTKSOC1*/                if(arfcn<=794)
+/*MTKSOC1*/                {/*ARFCN:789~794*/
+/*MTKSOC1*/                   Nfrac = (arfcn-789)*137659 + 7295938;
+/*MTKSOC1*/                   *rfN = (144L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/                   OPLL_DIV4O5_DIV4 = 1;
+/*MTKSOC1*/
+/*MTKSOC1*/                   /*error compensation*/
+/*MTKSOC1*/                   if(arfcn>=792)
+/*MTKSOC1*/                      Nfrac++;
+/*MTKSOC1*/                   /*End: error compensation*/
+/*MTKSOC1*/                }
+/*MTKSOC1*/                else
+/*MTKSOC1*/                {/*ARFCN:795~850*/
+/*MTKSOC1*/                   Nfrac = (arfcn-828)*135848 + 4992410;
+/*MTKSOC1*/                   *rfN = (143L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/                   /*error compensation*/
+/*MTKSOC1*/                   L1D_RF_Band1800_FrequecyFractionPartCompensation(arfcn, &Nfrac, 797, 806, 817, 828, 838, 848);
+/*MTKSOC1*/                   /*End:*error compensation*/
+/*MTKSOC1*/                }
+/*MTKSOC1*/             }
+/*MTKSOC1*/             else
+/*MTKSOC1*/             {
+/*MTKSOC1*/                if(arfcn<=855)
+/*MTKSOC1*/                {/*ARFCN:851~855*/
+/*MTKSOC1*/                   Nfrac = (arfcn-851)*137659 + 7442201;
+/*MTKSOC1*/                   *rfN = (145L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/                   OPLL_DIV4O5_DIV4 = 1;
+/*MTKSOC1*/
+/*MTKSOC1*/                   /*error compensation*/
+/*MTKSOC1*/                   if(arfcn>=854)
+/*MTKSOC1*/                      Nfrac++;
+/*MTKSOC1*/                   /*End: error compensation*/
+/*MTKSOC1*/                }
+/*MTKSOC1*/                else
+/*MTKSOC1*/                {/*ARFCN:856~885*/
+/*MTKSOC1*/                   Nfrac = (arfcn-869)*135848 + 2173566;
+/*MTKSOC1*/                   *rfN = (144L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/
+/*MTKSOC1*/                   /*error compensation*/
+/*MTKSOC1*/                   L1D_RF_Band1800_FrequecyFractionPartCompensation(arfcn, &Nfrac, 0, 0, 859, 869, 879, 885);
+/*MTKSOC1*/                   /*End: error compensation*/
+/*MTKSOC1*/                }
+/*MTKSOC1*/             }
+/*MTKSOC1*/          }
+/*MTKSOC1*/       }
+/*MTKSOC1*/       *ifN = (Nfrac>>10) | 0x0262000L | (OPLL_DIV4O5_DIV4<<19);                       /* N_FRAC[22:10] | (CW2|OPLL_DIV4O5_DIV4|TRX|BAND|MODE(warm_up mode))*/
+/*MTKSOC1*/       *rfN |= ((Nfrac&0x3FF) | 0x01C0000L); /* N_INT[7:0] | N_FRAC[9:0] | (CW1|OPLL_HLSIDE)| SDM_IFM)*/
+/*MTKSOC1*/       break;
+/*MTKSOC1*/      }
+/*MTKSOC1*/      case  FrequencyBand1900 :
+/*MTKSOC1*/      {
+/*MTKSOC1*/         if(arfcn<=676)
+/*MTKSOC1*/         {
+/*MTKSOC1*/            if(arfcn<=546)
+/*MTKSOC1*/            {
+/*MTKSOC1*/               if(arfcn<=540)
+/*MTKSOC1*/               { /*ARFCN:512~540*/
+/*MTKSOC1*/                  Nfrac = (arfcn-512)*122910 + 4578398;
+/*MTKSOC1*/                  *rfN = (135L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/               }
+/*MTKSOC1*/               else
+/*MTKSOC1*/               { /*ARFCN:541~546*/
+/*MTKSOC1*/                  Nfrac = (arfcn-541)*121464 + 3112515;
+/*MTKSOC1*/                  *rfN = (134L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/                  OPLL_DIV4O5_DIV4 = 1;
+/*MTKSOC1*/               }
+/*MTKSOC1*/            }
+/*MTKSOC1*/            else
+/*MTKSOC1*/            {
+/*MTKSOC1*/               if(arfcn<=614)
+/*MTKSOC1*/               {
+/*MTKSOC1*/                  if(arfcn<=608)
+/*MTKSOC1*/                  { /*ARFCN:547~608*/
+/*MTKSOC1*/                     Nfrac = (arfcn-547)*122910 + 491640;
+/*MTKSOC1*/                     *rfN = (136L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/                  }
+/*MTKSOC1*/                  else
+/*MTKSOC1*/                  { /*ARFCN:609~614*/
+/*MTKSOC1*/                     Nfrac = (arfcn-609)*121464 + 2983460;
+/*MTKSOC1*/                     *rfN = (135L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/                     OPLL_DIV4O5_DIV4 = 1;
+/*MTKSOC1*/                  }
+/*MTKSOC1*/               }
+/*MTKSOC1*/               else
+/*MTKSOC1*/               { /*ARFCN:615~676*/
+/*MTKSOC1*/                  Nfrac = (arfcn-615)*122910 + 460913;
+/*MTKSOC1*/                  *rfN = (137L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/               }
+/*MTKSOC1*/            }
+/*MTKSOC1*/         }
+/*MTKSOC1*/         else
+/*MTKSOC1*/         {
+/*MTKSOC1*/            if(arfcn<=744)
+/*MTKSOC1*/            {
+/*MTKSOC1*/               if(arfcn<=682)
+/*MTKSOC1*/               {/*ARFCN:677~682*/
+/*MTKSOC1*/                  Nfrac = (arfcn-677)*121464 + 2854404;
+/*MTKSOC1*/                  *rfN = (136L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/                  OPLL_DIV4O5_DIV4 = 1;
+/*MTKSOC1*/               }
+/*MTKSOC1*/               else
+/*MTKSOC1*/               { /*ARFCN:683~744*/
+/*MTKSOC1*/                  Nfrac = (arfcn-683)*122910 + 430185;
+/*MTKSOC1*/                  *rfN = (138L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/               }
+/*MTKSOC1*/            }
+/*MTKSOC1*/            else
+/*MTKSOC1*/            {
+/*MTKSOC1*/               if(arfcn<=750)
+/*MTKSOC1*/               {/*ARFCN:745~750*/
+/*MTKSOC1*/                  Nfrac = (arfcn-745)*121464 + 2725349;
+/*MTKSOC1*/                  *rfN = (137L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/                  OPLL_DIV4O5_DIV4 = 1;
+/*MTKSOC1*/               }
+/*MTKSOC1*/               else
+/*MTKSOC1*/               { /*ARFCN:751~810*/
+/*MTKSOC1*/                  Nfrac = (arfcn-751)*122910 + 399458;
+/*MTKSOC1*/                  *rfN = (139L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/               }
+/*MTKSOC1*/            }
+/*MTKSOC1*/         }
+/*MTKSOC1*/
+/*MTKSOC1*/         *ifN = (Nfrac>>10) | 0x0272000L | (OPLL_DIV4O5_DIV4<<19);                       /* N_FRAC[22:10] | (CW2|OPLL_DIV4O5_DIV4|TRX|BAND|MODE(warm_up mode))*/
+/*MTKSOC1*/         *rfN |= ((Nfrac&0x3FF) | 0x0140000L); /* N_INT[7:0] | N_FRAC[9:0] | (CW1|OPLL_HLSIDE)| SDM_IFM)*/
+/*MTKSOC1*/         break;
+/*MTKSOC1*/      }
+/*MTKSOC1*/      default :
+/*MTKSOC1*/      {
+/*MTKSOC1*/         break;
+/*MTKSOC1*/      }
+/*MTKSOC1*/   }
+/*MTKSOC1*/}
+/*MTKSOC1*//* =============================================================== */
+/*MTKSOC1*/
+/*MTKSOC1*/void L1D_RF_Band1800_FrequecyFractionPartCompensation(int arfcn, int *Nfrac, short arfcn1, short arfcn2, short arfcn3, short arfcn4, short arfcn5, short arfcn6)
+/*MTKSOC1*/{
+/*MTKSOC1*/ if(arfcn<arfcn4)
+/*MTKSOC1*/ {
+/*MTKSOC1*/    if(arfcn<arfcn2)
+/*MTKSOC1*/    {
+/*MTKSOC1*/       if(arfcn<arfcn1)
+/*MTKSOC1*/          *Nfrac+=4;
+/*MTKSOC1*/       else
+/*MTKSOC1*/          *Nfrac+=3;
+/*MTKSOC1*/    }
+/*MTKSOC1*/    else
+/*MTKSOC1*/    {
+/*MTKSOC1*/       if(arfcn<arfcn3)
+/*MTKSOC1*/          *Nfrac+=2;
+/*MTKSOC1*/       else
+/*MTKSOC1*/          *Nfrac+=1;
+/*MTKSOC1*/    }
+/*MTKSOC1*/ }
+/*MTKSOC1*/ else if (arfcn>=arfcn5)
+/*MTKSOC1*/ {
+/*MTKSOC1*/    if(arfcn<arfcn6)
+/*MTKSOC1*/    {
+/*MTKSOC1*/       *Nfrac-=1;
+/*MTKSOC1*/    }
+/*MTKSOC1*/    else
+/*MTKSOC1*/    {
+/*MTKSOC1*/       *Nfrac-=2;
+/*MTKSOC1*/    }
+/*MTKSOC1*/ }
+/*MTKSOC1*/}
+/*MTKSOC1*/
+/*MTKSOC1*/void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MTKSOC1*/{
+/*MTKSOC1*/   int Nfrac, SDM_IFM = 1;
+/*MTKSOC1*/   switch(rf_band)
+/*MTKSOC1*/   {
+/*MTKSOC1*/   case  FrequencyBand850 :
+/*MTKSOC1*/      {
+/*MTKSOC1*/         if(arfcn<=201)
+/*MTKSOC1*/         {
+/*MTKSOC1*/            if(arfcn<=169)
+/*MTKSOC1*/            {
+/*MTKSOC1*/               if(arfcn<=136)
+/*MTKSOC1*/               {/*arfcn:128~136*/
+/*MTKSOC1*/                  Nfrac = (arfcn-128)*258111 + 6065609;
+/*MTKSOC1*/                  *rfN = (133L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/               }
+/*MTKSOC1*/               else
+/*MTKSOC1*/               {/*arfcn:137~169*/
+/*MTKSOC1*/                  Nfrac = (arfcn-137)*258111;
+/*MTKSOC1*/                  *rfN = (134L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/
+/*MTKSOC1*/               }
+/*MTKSOC1*/            }
+/*MTKSOC1*/            else
+/*MTKSOC1*/            {/*arfcn:170~201*/
+/*MTKSOC1*/               Nfrac = (arfcn-170)*258111+129056;
+/*MTKSOC1*/               *rfN = (135L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/            }
+/*MTKSOC1*/         }
+/*MTKSOC1*/         else
+/*MTKSOC1*/         {
+/*MTKSOC1*/            if(arfcn<=234)
+/*MTKSOC1*/            {/*arfcn:202~234*/
+/*MTKSOC1*/               Nfrac = (arfcn-202)*258111;
+/*MTKSOC1*/               *rfN = (136L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/            }
+/*MTKSOC1*/            else
+/*MTKSOC1*/            {/*arfcn:235~251*/
+/*MTKSOC1*/               Nfrac = (arfcn-235)*258111+129056;
+/*MTKSOC1*/               *rfN = (137L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/            }
+/*MTKSOC1*/         }
+/*MTKSOC1*/         *ifN = (Nfrac>>10)|0x0202000;  /* CW2, TRX:0, BAND:0, MODE:1, N_RFC[22:10]*/
+/*MTKSOC1*/         if(Nfrac==0) SDM_IFM = 0;
+/*MTKSOC1*/         *rfN |= ((Nfrac&0x3FF) | 0x0180000L | (SDM_IFM<<18) ); /* N_INT[7:0] | N_FRAC[9:0] | (CW1|OPLL_HLSIDE)| SDM_IFM)*/
+/*MTKSOC1*/
+/*MTKSOC1*/         // Get GSM850 signal from GSM900 input pins if flag=1
+/*MTKSOC1*/         if( BBTXParameters.bbrx_gsm850_gsm900_swap ) *ifN |=0x0010000L ;
+/*MTKSOC1*/         break;
+/*MTKSOC1*/      }
+/*MTKSOC1*/   case  FrequencyBand900 :
+/*MTKSOC1*/      {
+/*MTKSOC1*/         if(arfcn<=102)
+/*MTKSOC1*/         {
+/*MTKSOC1*/            if(arfcn<=37)
+/*MTKSOC1*/            {
+/*MTKSOC1*/               if(arfcn<=4)
+/*MTKSOC1*/               {/*arfcn:0~4*/
+/*MTKSOC1*/                  Nfrac = (arfcn)*258111+7098053;
+/*MTKSOC1*/                  *rfN = (143L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/               }
+/*MTKSOC1*/               else
+/*MTKSOC1*/               {/*arfcn:5~37*/
+/*MTKSOC1*/                  Nfrac = (arfcn-5)*258111;
+/*MTKSOC1*/                  *rfN = (144L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/               }
+/*MTKSOC1*/            }
+/*MTKSOC1*/            else
+/*MTKSOC1*/            {
+/*MTKSOC1*/               if(arfcn<=69)
+/*MTKSOC1*/               {/*arfcn:38~69*/
+/*MTKSOC1*/                  Nfrac = (arfcn-38)*258111+129056;
+/*MTKSOC1*/                  *rfN = (145L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/               }
+/*MTKSOC1*/               else
+/*MTKSOC1*/               {/*arfcn:70~102*/
+/*MTKSOC1*/                  Nfrac = (arfcn-70)*258111;
+/*MTKSOC1*/                  *rfN = (146L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/               }
+/*MTKSOC1*/            }
+/*MTKSOC1*/         }
+/*MTKSOC1*/         else
+/*MTKSOC1*/         {
+/*MTKSOC1*/            if(arfcn<=996)
+/*MTKSOC1*/            {
+/*MTKSOC1*/               if(arfcn<=124)
+/*MTKSOC1*/               {/*arfcn:103~124*/
+/*MTKSOC1*/                  Nfrac = (arfcn-103)*258111+129056;
+/*MTKSOC1*/                  *rfN = (147L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/               }
+/*MTKSOC1*/               else
+/*MTKSOC1*/               {/*arfcn:975~996*/
+/*MTKSOC1*/                  Nfrac = (arfcn-975)*258111+2839221;
+/*MTKSOC1*/                  *rfN = (142L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/               }
+/*MTKSOC1*/            }
+/*MTKSOC1*/            else
+/*MTKSOC1*/            {/*arfcn:997~1023*/
+/*MTKSOC1*/               Nfrac = (arfcn-997)*258111+129056;
+/*MTKSOC1*/               *rfN = (143L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/            }
+/*MTKSOC1*/         }
+/*MTKSOC1*/
+/*MTKSOC1*/         *ifN = (Nfrac>>10)|0x0212000;  /* CW2, TRX:0, BAND:1, MODE:1, N_RFC[22:10]*/
+/*MTKSOC1*/
+/*MTKSOC1*/         if(Nfrac==0) SDM_IFM = 0;
+/*MTKSOC1*/         *rfN |= ((Nfrac&0x3FF) | 0x0180000L | (SDM_IFM<<18) ); /* N_INT[7:0] | N_FRAC[9:0] | (CW1|OPLL_HLSIDE)| SDM_IFM)*/
+/*MTKSOC1*/
+/*MTKSOC1*/         // Get GSM900 signal from GSM850 input pins if flag=1
+/*MTKSOC1*/         if( BBTXParameters.bbrx_gsm850_gsm900_swap )  *ifN &= (~(0x0010000L));
+/*MTKSOC1*/         break;
+/*MTKSOC1*/      }
+/*MTKSOC1*/   case  FrequencyBand1800 :
+/*MTKSOC1*/      {
+/*MTKSOC1*/         if(arfcn<=715)
+/*MTKSOC1*/         {
+/*MTKSOC1*/            if(arfcn<=585)
+/*MTKSOC1*/            {
+/*MTKSOC1*/               if(arfcn<=520)
+/*MTKSOC1*/               {/*arfcn:512~520*/
+/*MTKSOC1*/                  L1D_RF_GetRxPLL_HB_FractionPart(&Nfrac, arfcn, 456);
+/*MTKSOC1*/                  *rfN = (138L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/               }
+/*MTKSOC1*/               else
+/*MTKSOC1*/               {/*arfcn:521~585*/
+/*MTKSOC1*/                  L1D_RF_GetRxPLL_HB_FractionPart(&Nfrac, arfcn, 521);
+/*MTKSOC1*/                  *rfN = (139L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/               }
+/*MTKSOC1*/            }
+/*MTKSOC1*/            else
+/*MTKSOC1*/            {
+/*MTKSOC1*/               if(arfcn<=650)
+/*MTKSOC1*/               {/*arfcn:586~650*/
+/*MTKSOC1*/                  L1D_RF_GetRxPLL_HB_FractionPart(&Nfrac, arfcn, 586);
+/*MTKSOC1*/                  *rfN = (140L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/               }
+/*MTKSOC1*/               else
+/*MTKSOC1*/               {/*arfcn:651~715*/
+/*MTKSOC1*/                  L1D_RF_GetRxPLL_HB_FractionPart(&Nfrac, arfcn, 651);
+/*MTKSOC1*/                  *rfN = (141L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/               }
+/*MTKSOC1*/            }
+/*MTKSOC1*/         }
+/*MTKSOC1*/         else
+/*MTKSOC1*/         {
+/*MTKSOC1*/            if(arfcn<=845)
+/*MTKSOC1*/            {
+/*MTKSOC1*/               if(arfcn<=780)
+/*MTKSOC1*/               {/*arfcn:716~780*/
+/*MTKSOC1*/                  L1D_RF_GetRxPLL_HB_FractionPart(&Nfrac, arfcn, 716);
+/*MTKSOC1*/                  *rfN = (142L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/               }
+/*MTKSOC1*/               else
+/*MTKSOC1*/               {/*arfcn:781~845*/
+/*MTKSOC1*/                  L1D_RF_GetRxPLL_HB_FractionPart(&Nfrac, arfcn, 781);
+/*MTKSOC1*/                  *rfN = (143L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/               }
+/*MTKSOC1*/            }
+/*MTKSOC1*/            else
+/*MTKSOC1*/            {/*arfcn:846~885*/
+/*MTKSOC1*/               L1D_RF_GetRxPLL_HB_FractionPart(&Nfrac, arfcn, 846);
+/*MTKSOC1*/               *rfN = (144L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/            }
+/*MTKSOC1*/         }
+/*MTKSOC1*/
+/*MTKSOC1*/
+/*MTKSOC1*/         *ifN = (Nfrac>>10)|0x0222000;  /* CW2, TRX:0, BAND:2, MODE:1, N_RFC[22:10]*/
+/*MTKSOC1*/
+/*MTKSOC1*/         if(Nfrac==0) SDM_IFM = 0;
+/*MTKSOC1*/         *rfN |= ((Nfrac&0x3FF) | 0x0180000L | (SDM_IFM<<18) ); /* N_INT[7:0] | N_FRAC[9:0] | (CW1|OPLL_HLSIDE)| SDM_IFM)*/
+/*MTKSOC1*/
+/*MTKSOC1*/         // Get PCS1900 signal from DCS1800 input pins if flag=1
+/*MTKSOC1*/         if( BBTXParameters.bbrx_dcs1800_pcs1900_swap ) *ifN |=0x0010000L ;
+/*MTKSOC1*/         break;
+/*MTKSOC1*/      }
+/*MTKSOC1*/   case  FrequencyBand1900 :
+/*MTKSOC1*/      {
+/*MTKSOC1*/         if(arfcn<=675)
+/*MTKSOC1*/         {
+/*MTKSOC1*/            if(arfcn<=610)
+/*MTKSOC1*/            {
+/*MTKSOC1*/               if(arfcn<=545)
+/*MTKSOC1*/               {/*arfcn:512~545*/
+/*MTKSOC1*/                  L1D_RF_GetRxPLL_HB_FractionPart(&Nfrac, arfcn, 481);
+/*MTKSOC1*/                  *rfN = (148L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/               }
+/*MTKSOC1*/               else
+/*MTKSOC1*/               {/*arfcn:546~610*/
+/*MTKSOC1*/                  L1D_RF_GetRxPLL_HB_FractionPart(&Nfrac, arfcn, 546);
+/*MTKSOC1*/                  *rfN = (149L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/               }
+/*MTKSOC1*/            }
+/*MTKSOC1*/            else
+/*MTKSOC1*/            {/*arfcn:611~675*/
+/*MTKSOC1*/               L1D_RF_GetRxPLL_HB_FractionPart(&Nfrac, arfcn, 611);
+/*MTKSOC1*/               *rfN = (150L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/            }
+/*MTKSOC1*/         }
+/*MTKSOC1*/         else
+/*MTKSOC1*/         {
+/*MTKSOC1*/            if(arfcn<=805)
+/*MTKSOC1*/            {
+/*MTKSOC1*/               if(arfcn<=740)
+/*MTKSOC1*/               {/*arfcn:676~740*/
+/*MTKSOC1*/                  L1D_RF_GetRxPLL_HB_FractionPart(&Nfrac, arfcn, 676);
+/*MTKSOC1*/                  *rfN = (151L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/               }
+/*MTKSOC1*/               else
+/*MTKSOC1*/               {/*arfcn:741~805*/
+/*MTKSOC1*/                  L1D_RF_GetRxPLL_HB_FractionPart(&Nfrac, arfcn, 741);
+/*MTKSOC1*/                  *rfN = (152L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/               }
+/*MTKSOC1*/            }
+/*MTKSOC1*/            else
+/*MTKSOC1*/            {/*arfcn:806~810*/
+/*MTKSOC1*/               L1D_RF_GetRxPLL_HB_FractionPart(&Nfrac, arfcn, 806);
+/*MTKSOC1*/               *rfN = (153L<<10); /* N_INT[7:0]*/
+/*MTKSOC1*/            }
+/*MTKSOC1*/         }
+/*MTKSOC1*/
+/*MTKSOC1*/         *ifN = (Nfrac>>10)|0x0232000;  /* CW2, TRX:0, BAND:2, MODE:1, N_RFC[22:10]*/
+/*MTKSOC1*/
+/*MTKSOC1*/         if(Nfrac==0) SDM_IFM = 0;
+/*MTKSOC1*/         *rfN |= ((Nfrac&0x3FF) | 0x0180000L | (SDM_IFM<<18) ); /* N_INT[7:0] | N_FRAC[9:0] | (CW1|OPLL_HLSIDE)| SDM_IFM)*/
+/*MTKSOC1*/         // Get DCS1800 signal from PCS1900 input pins if flag=1
+/*MTKSOC1*/         if( BBTXParameters.bbrx_dcs1800_pcs1900_swap)  *ifN &= (~(0x0010000L));
+/*MTKSOC1*/         break;
+/*MTKSOC1*/      }
+/*MTKSOC1*/   default :
+/*MTKSOC1*/      {
+/*MTKSOC1*/         break;
+/*MTKSOC1*/      }
+/*MTKSOC1*/   }
+/*MTKSOC1*/}
+/*MTKSOC1*//* =============================================================== */
+/*MTKSOC1*/
+/*MTKSOC1*/void L1D_RF_GetRxPLL_HB_FractionPart(int *Nfrac, int arfcn, int arfcn_base)
+/*MTKSOC1*/{
+/*MTKSOC1*/   int Diff_arfcn;
+/*MTKSOC1*/
+/*MTKSOC1*/   Diff_arfcn = arfcn - arfcn_base;
+/*MTKSOC1*/   *Nfrac = (Diff_arfcn >>1) * 258111;
+/*MTKSOC1*/   if(Diff_arfcn & 0x1) *Nfrac += 129056;
+/*MTKSOC1*/}
+/*MTKSOC1*//* =============================================================== */
+#endif
+
+#if IS_RF_MT6252RF
+/*MT6252RF*/
+/*MT6252RF*/ static void  L1D_RF_GetRxPLLifNrfN( int rf_band, short K, long *ifN, long *rfN )
+/*MT6252RF*/ {
+/*MT6252RF*/    int Nfrac = 64527*K + ( ( 3*K + 2 ) >> 2 );
+/*MT6252RF*/
+/*MT6252RF*/    /* CW2, TRX:0, BAND:0, MODE:010, N_RFC[22:10]*/
+/*MT6252RF*/    *ifN = ( Nfrac >> 10) | 0x0204000L | ( ( rf_band - 1 ) << 16 );
+/*MT6252RF*/
+/*MT6252RF*/    *rfN |= ( ( Nfrac&0x3FF ) | 0x0100000L );
+/*MT6252RF*/ }
+/*MT6252RF*/ /* ============================================================================= */
+/*MT6252RF*/
+/*MT6252RF*/ void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6252RF*/ {
+/*MT6252RF*/    short D = 0, K = 0;
+/*MT6252RF*/    int Nfrac, DFM_LGCP_IOSTPOL;
+/*MT6252RF*/    switch(rf_band)
+/*MT6252RF*/    {
+/*MT6252RF*/       case  FrequencyBand850 :
+/*MT6252RF*/       {
+/*MT6252RF*/          D = arfcn - 128;
+/*MT6252RF*/          K = 104 + 4*D - 130*( ( 1653 + 63*D ) >> 11 );
+/*MT6252RF*/
+/*MT6252RF*/          // Nint = 126 + ( ( 1653 + 63*D ) >> 11 ); *rfN = Nint << 10;
+/*MT6252RF*/          *rfN = ( 126 << 10 ) + (long)( ( ( 1653 + 63*D ) >> 1 ) & 0xFC00 );
+/*MT6252RF*/          break;
+/*MT6252RF*/       }
+/*MT6252RF*/       case  FrequencyBand900 :
+/*MT6252RF*/       {
+/*MT6252RF*/	         D = ( arfcn > 974 ) ? ( arfcn - 1024 ) : arfcn;
+/*MT6252RF*/	         K = 250 + 4*D - 130*( ( 3953 + 63*D ) >> 11 );
+/*MT6252RF*/
+/*MT6252RF*/	         // Nint = 135 + ( ( 3953 + 63 D ) >> 11 ); *rfN = Nint << 10;
+/*MT6252RF*/          *rfN = ( 135 << 10 ) + (long)( ( ( 3953 + 63*D ) >> 1 ) & 0xFC00 );
+/*MT6252RF*/          break;
+/*MT6252RF*/       }
+/*MT6252RF*/       case  FrequencyBand1800 :
+/*MT6252RF*/       {
+/*MT6252RF*/          D = arfcn - 512;
+/*MT6252RF*/          K = 72 + 2*D - 130*( ( 2300 + 63*D ) >> 12 );
+/*MT6252RF*/
+/*MT6252RF*/          // Nint = 131 + ( ( 2300 + 63*D ) >> 12 ); *rfN = Nint << 10;
+/*MT6252RF*/          *rfN = ( 131 << 10 ) + (long)( ( ( 2300 + 63*D ) >> 2 ) & 0xFC00 );
+/*MT6252RF*/          break;
+/*MT6252RF*/       }
+/*MT6252RF*/       case  FrequencyBand1900 :
+/*MT6252RF*/       {
+/*MT6252RF*/          D = arfcn - 512;
+/*MT6252RF*/          K = 42 + 2*D - 130*( ( 1355 + 63*D ) >> 12 );
+/*MT6252RF*/
+/*MT6252RF*/          // Nint = 142 + ( ( 1355 + 63*D ) >> 12 ); *rfN = Nint << 10;
+/*MT6252RF*/          *rfN = ( 142 << 10 ) + (long)( ( ( 1355 + 63*D ) >> 2 ) & 0xFC00 );
+/*MT6252RF*/          break;
+/*MT6252RF*/       }
+/*MT6252RF*/       default :
+/*MT6252RF*/       {
+/*MT6252RF*/          break;
+/*MT6252RF*/       }
+/*MT6252RF*/    }
+/*MT6252RF*/    DFM_LGCP_IOSTPOL = (27 < K && K < 37) || (49 < K && K < 59) || (113 < K && K < 129) ? 1 : 0;
+/*MT6252RF*/    Nfrac = 64527*K + ( ( 3*K + 2 ) >> 2 );
+/*MT6252RF*/
+/*MT6252RF*/    /* CW2:      [27:20] |  [19:18] |   [17:16] |   [15:13]               |        [12:0] */
+/*MT6252RF*/    /*      Address[7:0] | TRX[1:0] | BAND[1:0] | MODE[2:0](warm_up mode) | N_FRAC[22:10] */
+/*MT6252RF*/    *ifN = ( Nfrac >> 10 ) | 0x0244000L | ( ( rf_band - 1 ) << 16 );
+/*MT6252RF*/
+/*MT6252RF*/    /* CW1:      [27:20] |          [19] |             [18] |    [17:10] |       [9:0]    */
+/*MT6252RF*/    /*      Address[7:0] | DFM_SDM_DI_EN | DFM_LGCP_IOSTPOL | N_INT[7:0] | N_FRAC[9:0]    */
+/*MT6252RF*/    *rfN |= ( ( Nfrac & 0x3FF ) | 0x0180000L | DFM_LGCP_IOSTPOL << 18 );
+/*MT6252RF*/ }
+/*MT6252RF*/ /* ============================================================================= */
+/*MT6252RF*/
+/*MT6252RF*/ void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6252RF*/ {
+/*MT6252RF*/    short D = 0, K = 0;
+/*MT6252RF*/    switch(rf_band)
+/*MT6252RF*/    {
+/*MT6252RF*/       case  FrequencyBand850 :
+/*MT6252RF*/       {
+/*MT6252RF*/          D = arfcn - 128;
+/*MT6252RF*/          K = 94 + 4*D - 130*( ( 1496 + 63*D ) >> 11 );
+/*MT6252RF*/
+/*MT6252RF*/          // Nint = 133 + ( ( 1496 + 63*D ) >> 11); *rfN = Nint << 10;
+/*MT6252RF*/          *rfN = ( 133 << 10 ) + (long)( ( ( 1496 + 63*D ) >> 1 ) & 0xFC00 );
+/*MT6252RF*/          L1D_RF_GetRxPLLifNrfN( rf_band, K, ifN, rfN );
+/*MT6252RF*/
+/*MT6252RF*/          // Get GSM850 signal from GSM900 input pins if flag = 1
+/*MT6252RF*/          if( BBTXParameters.bbrx_gsm850_gsm900_swap ) *ifN |=0x0010000L ;
+/*MT6252RF*/          break;
+/*MT6252RF*/       }
+/*MT6252RF*/       case  FrequencyBand900 :
+/*MT6252RF*/       {
+/*MT6252RF*/          D = ( arfcn > 974 ) ? ( arfcn - 1024 ) : arfcn;
+/*MT6252RF*/          K = 240 + 4*D - 130*( ( 3796 + 63*D ) >> 11 );
+/*MT6252RF*/
+/*MT6252RF*/          // Nint = 142 + ( ( 3796 + 63 D ) >> 11); *rfN = Nint << 10;
+/*MT6252RF*/          *rfN = ( 142 << 10 ) + (long)( ( ( 3796 + 63*D ) >> 1 ) & 0xFC00 );
+/*MT6252RF*/          L1D_RF_GetRxPLLifNrfN( rf_band, K, ifN, rfN );
+/*MT6252RF*/
+/*MT6252RF*/          // Get GSM900 signal from GSM850 input pins if flag = 1
+/*MT6252RF*/          if( BBTXParameters.bbrx_gsm850_gsm900_swap )  *ifN &= (~(0x0010000L));
+/*MT6252RF*/          break;
+/*MT6252RF*/       }
+/*MT6252RF*/       case  FrequencyBand1800 :
+/*MT6252RF*/       {
+/*MT6252RF*/          D = arfcn - 512;
+/*MT6252RF*/          K = 112 + 2*D - 130*( ( 3560 + 63*D ) >> 12 );
+/*MT6252RF*/
+/*MT6252RF*/          // Nint = 138 + ( (3560 + 63 D) >> 12); *rfN = Nint << 10;
+/*MT6252RF*/          *rfN = ( 138 << 10 ) + (long)( ( ( 3560 + 63*D ) >> 2 ) & 0xFC00 );
+/*MT6252RF*/          L1D_RF_GetRxPLLifNrfN( rf_band, K, ifN, rfN );
+/*MT6252RF*/
+/*MT6252RF*/          // Get PCS1900 signal from DCS1800 input pins if flag = 1
+/*MT6252RF*/          if( BBTXParameters.bbrx_dcs1800_pcs1900_swap ) *ifN |=0x0010000L ;
+/*MT6252RF*/          break;
+/*MT6252RF*/       }
+/*MT6252RF*/       case  FrequencyBand1900 :
+/*MT6252RF*/       {
+/*MT6252RF*/          D = arfcn - 512;
+/*MT6252RF*/          K = 62 + 2*D - 130*( ( 1985 + 63*D ) >> 12 );
+/*MT6252RF*/
+/*MT6252RF*/          // Nint = 148 + ( ( 1985 + 63*D ) >> 12); *rfN = Nint << 10;
+/*MT6252RF*/          *rfN = ( 148 << 10 ) + (long)( ( ( 1985 + 63*D ) >> 2 ) & 0xFC00 );
+/*MT6252RF*/          L1D_RF_GetRxPLLifNrfN( rf_band, K, ifN, rfN );
+/*MT6252RF*/
+/*MT6252RF*/          // Get DCS1800 signal from PCS1900 input pins if flag = 1
+/*MT6252RF*/          if( BBTXParameters.bbrx_dcs1800_pcs1900_swap)  *ifN &= (~(0x0010000L));
+/*MT6252RF*/          break;
+/*MT6252RF*/       }
+/*MT6252RF*/    }
+/*MT6252RF*/ }
+/*MT6252RF*/ /* ============================================================================= */
+#endif
+
+#if IS_RF_MT6256RF || IS_RF_MT6251RF || IS_RF_MT6255RF
+   #if IS_MT6256_DCR_MODE || IS_MT6251_DCR_MODE
+/*MT6256RF*/ //For DCR backup mode
+/*MT6256RF*/ void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6256RF*/ {  long *if_sel = ifN+1;
+/*MT6256RF*/    unsigned short Nint =0, CH_freq =0;
+/*MT6256RF*/    unsigned long  Nfrac=0, VCO_freq=0;
+/*MT6256RF*/
+/*MT6256RF*/    *if_sel = 2;
+/*MT6256RF*/    CH_freq = L1D_RF_ARFCN_CH_to_RxFreq( rf_band, arfcn );
+/*MT6256RF*/
+/*MT6256RF*/    if( rf_band < FrequencyBand1800 )
+/*MT6256RF*/    {  VCO_freq = 4*CH_freq;  }
+/*MT6256RF*/    else
+/*MT6256RF*/    {  VCO_freq = 2*CH_freq;  }
+/*MT6256RF*/
+/*MT6256RF*/    Nint  = VCO_freq/DCXO_FREQ;
+/*MT6256RF*/    Nfrac = ( ( (VCO_freq - Nint*DCXO_FREQ)<<23 ) + DCXO_FREQ/2 )/DCXO_FREQ;
+/*MT6256RF*/
+/*MT6256RF*/    // CW2, TRX:0, BAND, MODE: standby, N_RFC[22:10]
+/*MT6256RF*/    *ifN = BSI_CW( 0x02, 0x04000|(Nfrac>>10)|((rf_band-1)<<16) );
+/*MT6256RF*/    // CW1, DFM_LG_COE, N_INT[7:0], N_FRAC[9:0]
+/*MT6256RF*/    *rfN = BSI_CW( 0x01, 0xC0000|(Nfrac&0x3FF)|(Nint<<10) );
+/*MT6256RF*/
+/*MT6256RF*/    if( BBTXParameters.bbrx_gsm850_gsm900_swap || BBTXParameters.bbrx_dcs1800_pcs1900_swap )
+/*MT6256RF*/    {
+/*MT6256RF*/       switch( rf_band )
+/*MT6256RF*/       {
+/*MT6256RF*/          case FrequencyBand850 :
+/*MT6256RF*/          case FrequencyBand1800 :
+/*MT6256RF*/          {  *ifN |= 0x0010000L;
+/*MT6256RF*/             break;
+/*MT6256RF*/          }
+/*MT6256RF*/          case FrequencyBand900 :
+/*MT6256RF*/          case FrequencyBand1900 :
+/*MT6256RF*/          {  *ifN &= (~(0x0010000L));
+/*MT6256RF*/             break;
+/*MT6256RF*/          }
+/*MT6256RF*/          default:
+/*MT6256RF*/          {  break;
+/*MT6256RF*/          }
+/*MT6256RF*/       }
+/*MT6256RF*/    }
+/*MT6256RF*/ }
+/*MT6256RF*/ /* =========================================================================== */
+   #else
+/*MT6256RF*/ //For DLIF mode
+/*MT6256RF*/ void  L1D_RF_Cal_Synthesizer_Params( unsigned short* Nint, unsigned long* Nfrac, unsigned long  VCO_freq )
+/*MT6256RF*/ {
+/*MT6256RF*/    *Nint  = VCO_freq/(DCXO_FREQ*DLIF_SCALE);
+/*MT6256RF*/    //+195/2 is for rounding, 195=13*3*5, 5 is SYNTH_SCALE, 13 and 3 are related to DLIF
+/*MT6256RF*/    *Nfrac = ( ( (VCO_freq - *Nint*DCXO_FREQ*DLIF_SCALE)<<15 ) + 195/2 )/195;
+/*MT6256RF*/ }
+/*MT6256RF*/ /* =========================================================================== */
+/*MT6256RF*/
+/*MT6256RF*/ char  L1D_RF_Cal_IF_Synth_State( void )
+/*MT6256RF*/ {
+      #if IS_W_CANCELLATION_SUPPORT
+/*MT6256RF*/    if( L1D_CheckIfMetaMode() )
+/*MT6256RF*/    {  return l1d_rf.if_state;  }
+/*MT6256RF*/    else
+/*MT6256RF*/    {  return 0;  }
+      #else
+/*MT6256RF*/    return 0;
+      #endif                    
+/*MT6256RF*/ }
+/*MT6256RF*/ /* =========================================================================== */
+/*MT6256RF*/
+/*MT6256RF*/ void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6256RF*/ {  long *if_sel = ifN+1;
+/*MT6256RF*/    unsigned short Nint =0, CH_freq =0;
+/*MT6256RF*/    unsigned long  Nfrac=0, VCO_freq=0;
+/*MT6256RF*/    unsigned long  frac_spurs_thd0=0, frac_spurs_thd1=0;
+/*MT6256RF*/    unsigned char  IF_state=0;   //IF_state=0:default, IF_state=1:+IF, IF_state=2:-IF
+/*MT6256RF*/
+/*MT6256RF*/    IF_state = L1D_RF_Cal_IF_Synth_State();
+/*MT6256RF*/
+/*MT6256RF*/    CH_freq = L1D_RF_ARFCN_CH_to_RxFreq( rf_band, arfcn );
+/*MT6256RF*/
+/*MT6256RF*/    if( IF_state != 2 ) 
+/*MT6256RF*/    {
+/*MT6256RF*/       *if_sel = 0;
+/*MT6256RF*/       if( rf_band < FrequencyBand1800 )
+/*MT6256RF*/       {
+/*MT6256RF*/          VCO_freq = 4*(CH_freq*DLIF_SCALE - DLIF);  //High-side mixing
+/*MT6256RF*/          frac_spurs_thd0 = 193584;
+/*MT6256RF*/          frac_spurs_thd1 = 8195024;
+/*MT6256RF*/       }
+/*MT6256RF*/       else
+/*MT6256RF*/       {
+/*MT6256RF*/          VCO_freq = 2*(CH_freq*DLIF_SCALE - DLIF);  //High-side mixing
+/*MT6256RF*/          frac_spurs_thd0 = 96792;
+/*MT6256RF*/          frac_spurs_thd1 = 8291816;
+/*MT6256RF*/       }
+/*MT6256RF*/       L1D_RF_Cal_Synthesizer_Params( &Nint, &Nfrac, VCO_freq );
+/*MT6256RF*/    }
+/*MT6256RF*/  
+/*MT6256RF*/    if( IF_state != 1 )
+/*MT6256RF*/    {       
+/*MT6256RF*/       // check fractional spurs criterion (for run-time) or IRR state (for IRR calibration) 
+/*MT6256RF*/       if( ( Nfrac < frac_spurs_thd0 ) || ( Nfrac > frac_spurs_thd1) || ( Nfrac < 4258832 && Nfrac > 4129776 ) || ( IF_state == 2 ) )
+/*MT6256RF*/       {
+/*MT6256RF*/          *if_sel = 1;  //-170k
+/*MT6256RF*/          if( rf_band < FrequencyBand1800 )
+/*MT6256RF*/          {  VCO_freq = 4*(CH_freq*DLIF_SCALE + DLIF);  }  //Low-side mixing
+/*MT6256RF*/          else
+/*MT6256RF*/          {  VCO_freq = 2*(CH_freq*DLIF_SCALE + DLIF);  }  //Low-side mixing
+/*MT6256RF*/
+/*MT6256RF*/          L1D_RF_Cal_Synthesizer_Params( &Nint, &Nfrac, VCO_freq );
+/*MT6256RF*/       }
+/*MT6256RF*/    }  
+/*MT6256RF*/
+      #if IS_OBB_DETECTION_SUPPORT
+/*MT6256RF*/    if( !L1D_CheckIfMetaMode() )
+/*MT6256RF*/    {
+/*MT6256RF*/       if( l1d_rf.if_change == -1 && arfcn == l1d_rf.obb_arfcn )
+/*MT6256RF*/       {
+/*MT6256RF*/          signed short if_sign = l1d_rf.if_change*(*if_sel*2-1);
+/*MT6256RF*/
+/*MT6256RF*/          *if_sel = if_sign > 0 ? 1 : 0;
+/*MT6256RF*/          if( rf_band < FrequencyBand1800 )
+/*MT6256RF*/          {  VCO_freq = 4*(CH_freq*DLIF_SCALE + if_sign*DLIF);  }
+/*MT6256RF*/          else
+/*MT6256RF*/          {  VCO_freq = 2*(CH_freq*DLIF_SCALE + if_sign*DLIF);  }
+/*MT6256RF*/
+/*MT6256RF*/          L1D_RF_Cal_Synthesizer_Params( &Nint, &Nfrac, VCO_freq );
+/*MT6256RF*/       }
+/*MT6256RF*/    }
+      #endif
+/*MT6256RF*/    // CW2, TRX:0, BAND, MODE: standby, N_RFC[22:10]
+/*MT6256RF*/    *ifN = BSI_CW( 0x02, 0x04000|(Nfrac>>10)|((rf_band-1)<<16) );
+/*MT6256RF*/    // CW1, DFM_LG_COE, N_INT[7:0], N_FRAC[9:0]
+/*MT6256RF*/    *rfN = BSI_CW( 0x01, 0xC0000|(Nfrac&0x3FF)|(Nint<<10) );
+/*MT6256RF*/    
+/*MT6256RF*/    if( BBTXParameters.bbrx_gsm850_gsm900_swap || BBTXParameters.bbrx_dcs1800_pcs1900_swap ) 
+/*MT6256RF*/    {
+/*MT6256RF*/       switch( rf_band )
+/*MT6256RF*/       {
+/*MT6256RF*/          case FrequencyBand850 :
+/*MT6256RF*/          case FrequencyBand1800 :
+/*MT6256RF*/          {  *ifN |= 0x0010000L;
+/*MT6256RF*/             break;
+/*MT6256RF*/          }
+/*MT6256RF*/          case FrequencyBand900 :
+/*MT6256RF*/          case FrequencyBand1900 :
+/*MT6256RF*/          {  *ifN &= (~(0x0010000L));
+/*MT6256RF*/             break;
+/*MT6256RF*/          }
+/*MT6256RF*/          default:
+/*MT6256RF*/          {  break;
+/*MT6256RF*/          }
+/*MT6256RF*/       }
+/*MT6256RF*/    }
+/*MT6256RF*/ }
+/*MT6256RF*/ /* =========================================================================== */
+   #endif
+/*MT6256RF*/ void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6256RF*/ {
+/*MT6256RF*/    unsigned short Nint =0, CH_freq =0;
+/*MT6256RF*/    unsigned long  Nfrac=0, VCO_freq=0;
+/*MT6256RF*/
+/*MT6256RF*/    l1d_rf2.arfcn = arfcn;  //for L1D_RF_GetSData_ST2()
+/*MT6256RF*/    CH_freq = L1D_RF_ARFCN_CH_to_TxFreq( rf_band, arfcn );
+/*MT6256RF*/
+/*MT6256RF*/    if( rf_band < FrequencyBand1800 )
+/*MT6256RF*/    {  VCO_freq = 4*CH_freq;  }
+/*MT6256RF*/    else
+/*MT6256RF*/    {  VCO_freq = 2*CH_freq;  }
+/*MT6256RF*/
+/*MT6256RF*/    Nint  = VCO_freq/DCXO_FREQ;
+/*MT6256RF*/    Nfrac = ( ((VCO_freq-Nint*DCXO_FREQ)<<23) + DCXO_FREQ/2 )/DCXO_FREQ;  //+DCXO_freq/2 is for rounding
+/*MT6256RF*/
+/*MT6256RF*/    // CW2, TRX:1, BAND, MODE: standby, N_RFC[22:10]
+/*MT6256RF*/    *ifN = BSI_CW( 0x02, 0x44000|(Nfrac>>10)|((rf_band-1)<<16) );
+/*MT6256RF*/    // CW1, DFM_LG_COE, N_INT[7:0], N_FRAC[9:0]
+/*MT6256RF*/    *rfN = BSI_CW( 0x01, 0xC0000|(Nfrac&0x3FF)|(Nint<<10) );
+   #if IS_CHIP_MT6256_S00 || IS_CHIP_MT6251_S00
+   /* Do nothing */
+   #elif IS_CHIP_MT6256 || IS_CHIP_MT6255
+/*MT6256RF*/    if( ( Nfrac>=225847  && Nfrac<=419430  ) || ( Nfrac>=1000180 && Nfrac<=1193763 ) ||
+/*MT6256RF*/        ( Nfrac>=1903568 && Nfrac<=2097152 ) || ( Nfrac>=3452234 && Nfrac<=3645818 ) ||
+/*MT6256RF*/        ( Nfrac>=4484678 && Nfrac<=4678262 ) || ( Nfrac>=5000900 && Nfrac<=5065428 ) ||
+/*MT6256RF*/        ( Nfrac>=5517122 && Nfrac<=5581650 ) || ( Nfrac>=7452955 && Nfrac<=7904649 )
+/*MT6256RF*/      )
+/*MT6256RF*/    {  /*CW1, DFM_LG_COE = 0*/
+/*MT6256RF*/       *rfN &= ~(1<<19);
+/*MT6256RF*/    }
+   #elif IS_CHIP_MT6251
+/*MT6251RF*/    if( ( Nfrac>=1774513 && Nfrac<=2355264 ) || ( Nfrac>=2936012 && Nfrac<=3129597 ) ||
+/*MT6251RF*/        ( Nfrac>=3452235 && Nfrac<=3516763 ) || ( Nfrac>=3968457 && Nfrac<=4162041 ) ||
+/*MT6251RF*/        ( Nfrac>=6162401 && Nfrac<=6355983 ) || ( Nfrac>=6807678 && Nfrac<=7130316 ) ||
+/*MT6251RF*/        ( Nfrac>=7711067 && Nfrac<=8033705 ) )
+/*MT6251RF*/    {  /*CW1, DFM_LG_COE = 0*/
+/*MT6251RF*/       *rfN &= ~(1<<19);
+/*MT6251RF*/    }
+   #endif
+/*MT6256RF*/ }
+/*MT6256RF*/ /* =========================================================================== */
+/*MT6256RF*/
+/*MT6256RF*/ unsigned short L1D_RF_ARFCN_CH_to_RxFreq( int rf_band, int arfcn )
+/*MT6256RF*/ {
+/*MT6256RF*/    unsigned short freq=4450+225;
+/*MT6256RF*/    switch( rf_band )
+/*MT6256RF*/    {
+/*MT6256RF*/       case  FrequencyBand850 :
+/*MT6256RF*/       {
+/*MT6256RF*/          freq=4121+(arfcn-128)+225;     //freq = f_ch*SYNTH_SCALE
+/*MT6256RF*/          break;
+/*MT6256RF*/       }
+/*MT6256RF*/       case  FrequencyBand900 :
+/*MT6256RF*/       {
+/*MT6256RF*/          if( arfcn<=124 )
+/*MT6256RF*/          {  freq=4450+arfcn+225;  }
+/*MT6256RF*/          else
+/*MT6256RF*/          {  freq=4450+(arfcn-1024)+225;  }
+/*MT6256RF*/          break;
+/*MT6256RF*/       }
+/*MT6256RF*/       case  FrequencyBand1800 :
+/*MT6256RF*/       {
+/*MT6256RF*/          freq=8551+(arfcn-512)+475;
+/*MT6256RF*/          break;
+/*MT6256RF*/       }
+/*MT6256RF*/       case  FrequencyBand1900 :
+/*MT6256RF*/       {
+/*MT6256RF*/          freq=9251+(arfcn-512)+400;
+/*MT6256RF*/          break;
+/*MT6256RF*/       }
+/*MT6256RF*/       default :
+/*MT6256RF*/       {
+/*MT6256RF*/          break;
+/*MT6256RF*/       }
+/*MT6256RF*/    }
+/*MT6256RF*/
+/*MT6256RF*/    return freq;
+/*MT6256RF*/ }
+/*MT6256RF*/ /* =========================================================================== */
+/*MT6256RF*/
+/*MT6256RF*/ unsigned short L1D_RF_ARFCN_CH_to_TxFreq( int rf_band, int arfcn )
+/*MT6256RF*/ {
+/*MT6256RF*/    unsigned short freq=4450;
+/*MT6256RF*/    switch( rf_band )
+/*MT6256RF*/    {
+/*MT6256RF*/       case  FrequencyBand850 :
+/*MT6256RF*/       {
+/*MT6256RF*/          freq=4121+(arfcn-128);     //freq = f_ch*SYNTH_SCALE
+/*MT6256RF*/          break;
+/*MT6256RF*/       }
+/*MT6256RF*/       case  FrequencyBand900 :
+/*MT6256RF*/       {
+/*MT6256RF*/          if( arfcn<=124 )
+/*MT6256RF*/          {  freq=4450+arfcn;  }
+/*MT6256RF*/          else
+/*MT6256RF*/          {  freq=4450+(arfcn-1024);  }
+/*MT6256RF*/          break;
+/*MT6256RF*/       }
+/*MT6256RF*/       case  FrequencyBand1800 :
+/*MT6256RF*/       {
+/*MT6256RF*/          freq=8551+(arfcn-512);
+/*MT6256RF*/          break;
+/*MT6256RF*/       }
+/*MT6256RF*/       case  FrequencyBand1900 :
+/*MT6256RF*/       {
+/*MT6256RF*/          freq=9251+(arfcn-512);
+/*MT6256RF*/          break;
+/*MT6256RF*/       }
+/*MT6256RF*/       default :
+/*MT6256RF*/       {
+/*MT6256RF*/          break;
+/*MT6256RF*/       }
+/*MT6256RF*/    }
+/*MT6256RF*/
+/*MT6256RF*/    return freq;
+/*MT6256RF*/ }
+/*MT6256RF*/ /* =========================================================================== */
+#endif
+
+#if IS_RF_SKY74045
+/*SKY74045*/
+/*SKY74045*/ void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*SKY74045*/ {  int Nfrac=0;
+/*SKY74045*/
+/*SKY74045*/    switch(rf_band)
+/*SKY74045*/    {
+/*SKY74045*/       case  FrequencyBand850 :
+/*SKY74045*/       {
+/*SKY74045*/          if (arfcn <= 180)
+/*SKY74045*/          {  if (arfcn <= 136)                             /*  ARFCN :   128~136    */
+/*SKY74045*/             {   Nfrac = 3323179 + 96792*(arfcn-128) - ((arfcn-128)>>2) ;
+/*SKY74045*/                 *rfN = 0x008538 | (96L<<16);
+/*SKY74045*/             }
+/*SKY74045*/             else                                          /*  ARFCN :   137~180    */
+/*SKY74045*/             {   Nfrac = 96791*(arfcn-137) + ((arfcn-137)>>2) +3 ;
+/*SKY74045*/                 *rfN = 0x008538 | (97L<<16);
+/*SKY74045*/             }
+/*SKY74045*/          }
+/*SKY74045*/          else
+/*SKY74045*/          {  if (arfcn <= 223)                             /*  ARFCN :   181~223    */
+/*SKY74045*/             {  Nfrac = 64528 + 96792*(arfcn-181) - ((arfcn-181)>>2) -3 ;
+/*SKY74045*/                *rfN = 0x008538 | (98L<<16);
+/*SKY74045*/             }
+/*SKY74045*/             else                                          /*  ARFCN :   224~251    */
+/*SKY74045*/             {  Nfrac = 32264 + 96792*(arfcn-224) - ((arfcn-224)>>2) -2 ;
+/*SKY74045*/                *rfN = 0x008538 | (99L<<16);
+/*SKY74045*/             }
+/*SKY74045*/          }
+/*SKY74045*/          break;
+/*SKY74045*/       }
+/*SKY74045*/       case  FrequencyBand900 :
+/*SKY74045*/       {
+/*SKY74045*/          if (arfcn <=113)
+/*SKY74045*/          {  if (arfcn<=26)                                /*  ARFCN :   0~26    */
+/*SKY74045*/             {  Nfrac = 1613194 + 96792*arfcn - (arfcn>>2) - 2 ;
+/*SKY74045*/                *rfN = 0x008538 | (104L<<16);
+/*SKY74045*/             }
+/*SKY74045*/             else if (arfcn<=69)                           /*  ARFCN :   27~69   */
+/*SKY74045*/             {  Nfrac = 32264 + (96792*(arfcn-27)) - ((arfcn-27)>>2) - 3 ;
+/*SKY74045*/                *rfN = 0x008538 | (105L<<16);
+/*SKY74045*/             }
+/*SKY74045*/             else                                          /*  ARFCN :   70~113  */
+/*SKY74045*/             {  Nfrac = (96791*(arfcn-70)) + ((arfcn-70)>>1) + 3 ;
+/*SKY74045*/                *rfN = 0x008538 | (106L<<16);
+/*SKY74045*/             }
+/*SKY74045*/          }
+/*SKY74045*/          else
+/*SKY74045*/          {  if (arfcn<=1007)
+/*SKY74045*/             { if (arfcn<=124)                             /*  ARFCN :   114~124 */
+/*SKY74045*/               {  Nfrac = 64528 + (96792*(arfcn-114)) - ((arfcn-114)>>2) ;
+/*SKY74045*/                  *rfN = 0x008538 | (107L<<16);
+/*SKY74045*/               }
+/*SKY74045*/               else                                        /*  ARFCN :   975~1007   */
+/*SKY74045*/               {  Nfrac = 1064708 + (96792*(arfcn-975)) - ((arfcn-975)>>2) - 2 ;
+/*SKY74045*/                  *rfN = 0x008538 | (103L<<16);
+/*SKY74045*/               }
+/*SKY74045*/             }
+/*SKY74045*/             else                                          /*  ARFCN :   1008~1023 */
+/*SKY74045*/             {  Nfrac = 64528 + (96792*(arfcn-1008)) - ((arfcn-1008)>>2) - 2 ;
+/*SKY74045*/                *rfN = 0x008538 | (104L<<16);
+/*SKY74045*/             }
+/*SKY74045*/          }
+/*SKY74045*/          break;
+/*SKY74045*/       }
+/*SKY74045*/       case  FrequencyBand1800 :
+/*SKY74045*/       {
+/*SKY74045*/          if (arfcn<=715)
+/*SKY74045*/          {  if(arfcn<=542)                                /*  ARFCN : 512~542  */
+/*SKY74045*/             {  Nfrac = 2710166 + (48396*(arfcn-512)) - ((arfcn-512)>>2);
+/*SKY74045*/                *rfN = 0x008568 | (100L<<16);
+/*SKY74045*/             }
+/*SKY74045*/             else if (arfcn<=629)                          /*  ARFCN : 543~629  */
+/*SKY74045*/             {  Nfrac = 16132 + (48396*(arfcn-543)) - ((arfcn-543)>>2) +2 ;
+/*SKY74045*/                *rfN = 0x008568 | (101L<<16);
+/*SKY74045*/             }
+/*SKY74045*/             else                                          /*  ARFCN : 630~715  */
+/*SKY74045*/             {  Nfrac = 32264 + (48396*(arfcn-630)) - ((arfcn-630)>>2) +2 ;
+/*SKY74045*/                *rfN = 0x008568 | (102L<<16);
+/*SKY74045*/             }
+/*SKY74045*/          }
+/*SKY74045*/          else
+/*SKY74045*/          {  if (arfcn<=802)                               /*  ARFCN : 716~802  */
+/*SKY74045*/             {  Nfrac = (48396*(arfcn-716)) - ((arfcn-716)>>2) +2 ;
+/*SKY74045*/                *rfN = 0x008568 | (103L<<16);
+/*SKY74045*/             }
+/*SKY74045*/             else                                          /*  ARFCN : 803~885  */
+/*SKY74045*/             {  Nfrac = 16132 + (48396*(arfcn-803)) - ((arfcn-803)>>2) +2 ;
+/*SKY74045*/                *rfN = 0x008568 | (104L<<16);
+/*SKY74045*/             }
+/*SKY74045*/          }
+/*SKY74045*/          break;
+/*SKY74045*/       }
+/*SKY74045*/       case  FrequencyBand1900 :
+/*SKY74045*/       {
+/*SKY74045*/          if (arfcn<=697)
+/*SKY74045*/          {  if(arfcn<=524)                                /*  ARFCN : 512~524  */
+/*SKY74045*/             {  Nfrac = 3597422 + (48396*(arfcn-512)) - ((arfcn-512)>>2) ;
+/*SKY74045*/                *rfN = 0x008568 | (107L<<16);
+/*SKY74045*/             }
+/*SKY74045*/             else if (arfcn<=610)                          /*  ARFCN : 525~610  */
+/*SKY74045*/             {  Nfrac = 32264 + (48396*(arfcn-525)) - ((arfcn-525)>>2) +2 ;
+/*SKY74045*/                *rfN = 0x008568 | (108L<<16);
+/*SKY74045*/             }
+/*SKY74045*/             else                                          /*  ARFCN : 611~697  */
+/*SKY74045*/             {  Nfrac = (48396*(arfcn-611)) - ((arfcn-611)>>2) +2 ;
+/*SKY74045*/                *rfN = 0x008568 | (109L<<16);
+/*SKY74045*/             }
+/*SKY74045*/          }
+/*SKY74045*/          else
+/*SKY74045*/          {  if (arfcn<=784)                               /*  ARFCN : 698~784  */
+/*SKY74045*/             {  Nfrac = 16132 + (48396*(arfcn-698)) - ((arfcn-698)>>2) +2 ;
+/*SKY74045*/                *rfN = 0x008568 | (110L<<16);
+/*SKY74045*/             }
+/*SKY74045*/             else                                          /*  ARFCN : 785~810  */
+/*SKY74045*/             {  Nfrac = 32264 + (48396*(arfcn-785)) - ((arfcn-785)>>2) ;
+/*SKY74045*/                *rfN = 0x008568 | (111L<<16);
+/*SKY74045*/             }
+/*SKY74045*/          }
+/*SKY74045*/          break;
+/*SKY74045*/       }
+/*SKY74045*/       default :
+/*SKY74045*/       {
+/*SKY74045*/          break;
+/*SKY74045*/       }
+/*SKY74045*/    }
+/*SKY74045*/    *ifN = 0x2 | (Nfrac<<2);
+/*SKY74045*/ }
+/*SKY74045*/ /* =========================================================================== */
+/*SKY74045*/
+/*SKY74045*/ char SKY_d_flag = 0;
+/*SKY74045*/ char SKY_TXCP = 0;      //tx charge pump current choice
+/*SKY74045*/
+/*SKY74045*/ void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*SKY74045*/ {  int   Nfrac=0;
+/*SKY74045*/
+/*SKY74045*/    switch(rf_band)
+/*SKY74045*/    {
+/*SKY74045*/       case  FrequencyBand850 :
+/*SKY74045*/       {
+/*SKY74045*/          if (arfcn <= 186)
+/*SKY74045*/          {  if (arfcn <= 147)                             /*  ARFCN :   128~147    */
+/*SKY74045*/             {   SKY_d_flag = 0x0; //D = 9
+/*SKY74045*/                 Nfrac = 2044723 + 108891*(arfcn-128) - ((arfcn-128)>>2) -2 ;
+/*SKY74045*/                 *rfN = 0x008538 | (103L<<16);
+/*SKY74045*/             }
+/*SKY74045*/             else                                          /*  ARFCN :   148~186    */
+/*SKY74045*/             {  if ( (arfcn ==166) || (arfcn ==168) )
+/*SKY74045*/                {  SKY_d_flag = 0x2; //D = 10
+/*SKY74045*/                   Nfrac = 591504 + (arfcn - 166)*107546 ;
+/*SKY74045*/                   *rfN = 0x008538 | (103L<<16);
+/*SKY74045*/                }
+/*SKY74045*/                else
+/*SKY74045*/                {  SKY_d_flag = 0x0; //D = 9
+/*SKY74045*/                   Nfrac = 28231 + 108891*(arfcn-148) - ((arfcn-148)>>2) -4 ;
+/*SKY74045*/                   *rfN = 0x008538 | (104L<<16);
+/*SKY74045*/                }
+/*SKY74045*/             }
+/*SKY74045*/          }
+/*SKY74045*/          else
+/*SKY74045*/          {
+/*SKY74045*/             if (arfcn <= 224)                             /*  ARFCN :   187~224    */
+/*SKY74045*/             {  SKY_d_flag = 0x0; //D = 9
+/*SKY74045*/                Nfrac = 80660 + 108891*(arfcn-187) - ((arfcn-187)>>2) -4 ;
+/*SKY74045*/                *rfN = 0x008538 | (105L<<16);
+/*SKY74045*/             }
+/*SKY74045*/             else                                          /*  ARFCN :   225~251    */
+/*SKY74045*/             {  if ( (arfcn == 243) || (arfcn == 244) )
+/*SKY74045*/                {  SKY_d_flag = 0x2; //D = 10
+/*SKY74045*/                   Nfrac = 483958 + (arfcn - 243)*107546 ;
+/*SKY74045*/                   *rfN = 0x008538 | (105L<<16);
+/*SKY74045*/                }
+/*SKY74045*/                else
+/*SKY74045*/                {  SKY_d_flag = 0x0; //D = 9
+/*SKY74045*/                   Nfrac = 24198 + 108891*(arfcn-225) - ((arfcn-225)>>2) -3 ;
+/*SKY74045*/                   *rfN = 0x008538 | (106L<<16);
+/*SKY74045*/                }
+/*SKY74045*/             }
+/*SKY74045*/          }
+/*SKY74045*/          break;
+/*SKY74045*/       }
+/*SKY74045*/       case  FrequencyBand900 :
+/*SKY74045*/       {
+/*SKY74045*/          if(arfcn<=99)
+/*SKY74045*/          {  if(arfcn<=54)
+/*SKY74045*/             {  if(arfcn<=34)                              /*  ARFCN : 0~34  */
+/*SKY74045*/                {  if (arfcn == 18)
+/*SKY74045*/                   {  SKY_d_flag = 0x2; //D = 10
+/*SKY74045*/                      Nfrac = 268866;
+/*SKY74045*/                      *rfN = 0x008538 | (111L<<16);
+/*SKY74045*/                   }
+/*SKY74045*/                   else
+/*SKY74045*/                   {  SKY_d_flag = 0x0; //D = 9
+/*SKY74045*/                      Nfrac = 120990 + (108891*arfcn) - (arfcn>>2) -4 ;
+/*SKY74045*/                      *rfN = 0x008538 | (112L<<16);
+/*SKY74045*/                   }
+/*SKY74045*/                }
+/*SKY74045*/                else                                       /*  ARFCN : 35~54  */
+/*SKY74045*/                {  SKY_d_flag = 0x2; //D = 10
+/*SKY74045*/                   Nfrac = 2097152 + (107546*(arfcn-35)) - ((arfcn-35)>>2) ;
+/*SKY74045*/                   *rfN = 0x008538 | (111L<<16);
+/*SKY74045*/                }
+/*SKY74045*/             }
+/*SKY74045*/             else
+/*SKY74045*/             {  if(arfcn<=90)                              /*  ARFCN : 55~90  */
+/*SKY74045*/                {  SKY_d_flag = 0x2; //D = 10
+/*SKY74045*/                   Nfrac = 53773 + (107546*(arfcn-55)) - ((arfcn-55)>>2) ;
+/*SKY74045*/                   *rfN = 0x008538 | (112L<<16);
+/*SKY74045*/                }
+/*SKY74045*/                else                                       /*  ARFCN : 91~99  */
+/*SKY74045*/                {  SKY_d_flag = 0x1; //D = 11
+/*SKY74045*/                   Nfrac = 3236067 + (106471*(arfcn-91)) - ((arfcn-91)>>2) ;
+/*SKY74045*/                   *rfN = 0x008538 | (111L<<16);
+/*SKY74045*/                }
+/*SKY74045*/             }
+/*SKY74045*/          }
+/*SKY74045*/          else
+/*SKY74045*/          {  if(arfcn<=984)
+/*SKY74045*/             {  if(arfcn<=124)                             /*  ARFCN : 100~124  */
+/*SKY74045*/                {  SKY_d_flag = 0x1; //D = 11
+/*SKY74045*/                   Nfrac = (106471*(arfcn-100)) - ((arfcn-100)>>2) ;
+/*SKY74045*/                   *rfN = 0x008538 | (112L<<16);
+/*SKY74045*/                }
+/*SKY74045*/                else                                       /*  ARFCN : 975~984  */
+/*SKY74045*/                {  SKY_d_flag = 0x0; //D = 9
+/*SKY74045*/                   Nfrac = 3173959 + (108891*(arfcn-975)) - ((arfcn-975)>>2) -1 ;
+/*SKY74045*/                   *rfN = 0x008538 | (110L<<16);
+/*SKY74045*/                }
+/*SKY74045*/             }
+/*SKY74045*/             else
+/*SKY74045*/             {  if (arfcn == 1023)                         /*  ARFCN : 1023  */
+/*SKY74045*/                {  SKY_d_flag = 0x0; //D = 9
+/*SKY74045*/                   Nfrac = 12099;
+/*SKY74045*/                   *rfN = 0x008538 | (112L<<16);
+/*SKY74045*/                }
+/*SKY74045*/                else                                       /*  ARFCN : 985~1022  */
+/*SKY74045*/                {  SKY_d_flag = 0x0; //D = 9
+/*SKY74045*/                   Nfrac = 68561 + (108891*(arfcn-985)) - ((arfcn-985)>>2) -4 ;
+/*SKY74045*/                   *rfN = 0x008538 | (111L<<16);
+/*SKY74045*/                }
+/*SKY74045*/             }
+/*SKY74045*/          }
+/*SKY74045*/
+/*SKY74045*/          /* choose tx cp current */
+/*SKY74045*/          if (arfcn<100)
+/*SKY74045*/             SKY_TXCP = 0;
+/*SKY74045*/          else
+/*SKY74045*/             SKY_TXCP = 1;
+/*SKY74045*/
+/*SKY74045*/          break;
+/*SKY74045*/       }
+/*SKY74045*/       case  FrequencyBand1800 :
+/*SKY74045*/       {
+/*SKY74045*/          if (arfcn <= 740)
+/*SKY74045*/          {
+/*SKY74045*/             if(arfcn<=576)                                  /*  ARFCN : 512~576  */
+/*SKY74045*/             {
+/*SKY74045*/                if ( (arfcn == 534) || (arfcn == 538) )
+/*SKY74045*/                {
+/*SKY74045*/                   SKY_d_flag = 0x2; //D = 14
+/*SKY74045*/                   Nfrac = 77312 + (arfcn-534)*51135 ;
+/*SKY74045*/                   *rfN = 0x008568 | (101L<<16);
+/*SKY74045*/                }
+/*SKY74045*/                else
+/*SKY74045*/                {
+/*SKY74045*/                   SKY_d_flag = 0x0; //D = 13
+/*SKY74045*/                   Nfrac = 864540 + (51359*(arfcn-512)) - ((arfcn-512)>>2) +2 ;
+/*SKY74045*/                   *rfN = 0x008568 | (101L<<16);
+/*SKY74045*/                }
+/*SKY74045*/             }
+/*SKY74045*/             else if (arfcn <= 658)                          /*  ARFCN : 577~658  */
+/*SKY74045*/             {
+/*SKY74045*/                if ( (arfcn == 618) || (arfcn == 620) )
+/*SKY74045*/                {
+/*SKY74045*/                   SKY_d_flag = 0x2; //D = 14
+/*SKY74045*/                   Nfrac = 178364 + (arfcn-618)*51135 ;
+/*SKY74045*/                   *rfN = 0x008568 | (102L<<16);
+/*SKY74045*/                }
+/*SKY74045*/                else
+/*SKY74045*/                {
+/*SKY74045*/                   SKY_d_flag = 0x0; //D = 13
+/*SKY74045*/                   Nfrac = 8560 + (51359*(arfcn-577)) - ((arfcn-577)>>2) +3 ;
+/*SKY74045*/                   *rfN = 0x008568 | (102L<<16);
+/*SKY74045*/                }
+/*SKY74045*/             }
+/*SKY74045*/             else                           /*  ARFCN : 659~740  */
+/*SKY74045*/             {
+/*SKY74045*/                if ( (arfcn == 697) || (arfcn == 699) || (arfcn == 702) )
+/*SKY74045*/                {
+/*SKY74045*/                   SKY_d_flag = 0x2; //D = 14
+/*SKY74045*/                   Nfrac = 23741 + (arfcn-697)*51135 ;
+/*SKY74045*/                   *rfN = 0x008568 | (103L<<16);
+/*SKY74045*/                }
+/*SKY74045*/                else
+/*SKY74045*/                {
+/*SKY74045*/                   SKY_d_flag = 0x0; //D = 13
+/*SKY74045*/                   Nfrac = 25679 + (51359*(arfcn-659)) - ((arfcn-659)>>2) +3 ;
+/*SKY74045*/                   *rfN = 0x008568 | (103L<<16);
+/*SKY74045*/                }
+/*SKY74045*/             }
+/*SKY74045*/          }
+/*SKY74045*/          else
+/*SKY74045*/          {
+/*SKY74045*/             if (arfcn <= 821)                          /*  ARFCN : 741~821  */
+/*SKY74045*/             {
+/*SKY74045*/                if ( (arfcn == 779) || (arfcn == 783) || (arfcn == 791) )
+/*SKY74045*/                {
+/*SKY74045*/                   SKY_d_flag = 0x2; //D = 14
+/*SKY74045*/                   Nfrac = 22524 + (arfcn-779)*51135 ;
+/*SKY74045*/                   *rfN = 0x008568 | (104L<<16);
+/*SKY74045*/                }
+/*SKY74045*/                else
+/*SKY74045*/                {
+/*SKY74045*/                   SKY_d_flag = 0x0; //D = 13
+/*SKY74045*/                   Nfrac = 42799 + (51359*(arfcn-741)) - ((arfcn-741)>>2) +3 ;
+/*SKY74045*/                   *rfN = 0x008568 | (104L<<16);
+/*SKY74045*/                }
+/*SKY74045*/             }
+/*SKY74045*/             else                           /*  ARFCN : 822~885  */
+/*SKY74045*/             {
+/*SKY74045*/                if (arfcn == 860)
+/*SKY74045*/                {
+/*SKY74045*/                   SKY_d_flag = 0x2; //D = 14
+/*SKY74045*/                   Nfrac = 4164475;
+/*SKY74045*/                   *rfN = 0x008568 | (104L<<16);
+/*SKY74045*/                }
+/*SKY74045*/                else if ( (arfcn == 863) || (arfcn == 865) )
+/*SKY74045*/                {
+/*SKY74045*/                   SKY_d_flag = 0x2; //D = 14
+/*SKY74045*/                   Nfrac = 123577 + (arfcn-863)*51135 ;
+/*SKY74045*/                   *rfN = 0x008568 | (105L<<16);
+/*SKY74045*/                }
+/*SKY74045*/                else
+/*SKY74045*/                {
+/*SKY74045*/                   SKY_d_flag = 0x0; //D = 13
+/*SKY74045*/                   Nfrac = 8560 + (51359*(arfcn-822)) - ((arfcn-822)>>2) +1 ;
+/*SKY74045*/                   *rfN = 0x008568 | (105L<<16);
+/*SKY74045*/                }
+/*SKY74045*/             }
+/*SKY74045*/          }
+/*SKY74045*/          /* choose tx cp current */
+/*SKY74045*/          if (arfcn<661)
+/*SKY74045*/             SKY_TXCP = 0;
+/*SKY74045*/          else
+/*SKY74045*/             SKY_TXCP = 1;
+/*SKY74045*/
+/*SKY74045*/          break;
+/*SKY74045*/       }
+/*SKY74045*/       case  FrequencyBand1900 :
+/*SKY74045*/       {
+/*SKY74045*/          if(arfcn<=652)
+/*SKY74045*/          {
+/*SKY74045*/             if(arfcn<=570)                                  /*  ARFCN : 512~570  */
+/*SKY74045*/             {
+/*SKY74045*/                if ( (arfcn == 530) || (arfcn == 532) )
+/*SKY74045*/                {  SKY_d_flag = 0x3; //D = 16
+/*SKY74045*/                   Nfrac = 2977268 + (arfcn-530)*50776 ;
+/*SKY74045*/                   *rfN = 0x008568 | (108L<<16);
+/*SKY74045*/                }
+/*SKY74045*/                else
+/*SKY74045*/                {  SKY_d_flag = 0x2; //D = 14
+/*SKY74045*/                   Nfrac = 1192546 + (51135*(arfcn-512)) - ((arfcn-512)>>2) -1 ;
+/*SKY74045*/                   *rfN = 0x008568 | (109L<<16);
+/*SKY74045*/                }
+/*SKY74045*/             }
+/*SKY74045*/             else                              /*  ARFCN : 571~652  */
+/*SKY74045*/             {
+/*SKY74045*/                if ( (arfcn == 609) || (arfcn == 610) || (arfcn == 612) || (arfcn == 614) | (arfcn == 628))
+/*SKY74045*/                {  SKY_d_flag = 0x3; //D = 16
+/*SKY74045*/                   Nfrac = 2794263 + (arfcn-609)*50776 ;
+/*SKY74045*/                   *rfN = 0x008568 | (109L<<16);
+/*SKY74045*/                }
+/*SKY74045*/                else
+/*SKY74045*/                {  SKY_d_flag = 0x2; //D = 14
+/*SKY74045*/                   Nfrac = 15219 + (51135*(arfcn-571)) - ((arfcn-571)>>2) -2 ;
+/*SKY74045*/                   *rfN = 0x008568 | (110L<<16);
+/*SKY74045*/                }
+/*SKY74045*/             }
+/*SKY74045*/          }
+/*SKY74045*/          else
+/*SKY74045*/          {
+/*SKY74045*/             if(arfcn<=734)                             /*  ARFCN : 653~734  */
+/*SKY74045*/             {
+/*SKY74045*/                if ( (arfcn == 694) || (arfcn == 696) )
+/*SKY74045*/                {  SKY_d_flag = 0x3; //D = 16
+/*SKY74045*/                   Nfrac = 2915914 + (arfcn-694)*50776 ;
+/*SKY74045*/                   *rfN = 0x008568 | (110L<<16);
+/*SKY74045*/                }
+/*SKY74045*/                else
+/*SKY74045*/                {  SKY_d_flag = 0x2; //D = 14
+/*SKY74045*/                   Nfrac = 14001 + (51135*(arfcn-653)) - ((arfcn-653)>>2) -1 ;
+/*SKY74045*/                   *rfN = 0x008568 | (111L<<16);
+/*SKY74045*/                }
+/*SKY74045*/             }
+/*SKY74045*/             else                            /*  ARFCN : 735~810  */
+/*SKY74045*/             {
+/*SKY74045*/                if ( (arfcn == 773) || (arfcn == 774) || (arfcn == 776) || (arfcn == 778) )
+/*SKY74045*/                {  SKY_d_flag = 0x3; //D = 16
+/*SKY74045*/                   Nfrac = 2732909 + (arfcn-773)*50776 ;
+/*SKY74045*/                   *rfN = 0x008568 | (111L<<16);
+/*SKY74045*/                }
+/*SKY74045*/                else
+/*SKY74045*/                {  SKY_d_flag = 0x2; //D = 14
+/*SKY74045*/                   Nfrac = 12784 + (51135*(arfcn-735)) - ((arfcn-735)>>2) -2 ;
+/*SKY74045*/                   *rfN = 0x008568 | (112L<<16);
+/*SKY74045*/                }
+/*SKY74045*/             }
+/*SKY74045*/          }
+/*SKY74045*/
+/*SKY74045*/          /* choose tx cp current */
+/*SKY74045*/          if (arfcn<611)
+/*SKY74045*/             SKY_TXCP = 0;
+/*SKY74045*/          else
+/*SKY74045*/             SKY_TXCP = 1;
+/*SKY74045*/
+/*SKY74045*/          break;
+/*SKY74045*/       }
+/*SKY74045*/       default :
+/*SKY74045*/       {
+/*SKY74045*/          break;
+/*SKY74045*/       }
+/*SKY74045*/    }
+/*SKY74045*/    *ifN = 0x2 | (Nfrac<<2);
+/*SKY74045*/ }
+/*SKY74045*/ /* =========================================================================== */
+#endif
+
+#if IS_RF_AERO2
+/*AERO2*/ void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*AERO2*/ {
+/*AERO2*/    int BandInd = (~rf_band )& 0x01; /* 1:GSM/PCS, 0:GSM850/DCS */
+/*AERO2*/    *rfN = (BandInd<<16) | (arfcn<<6) | 0x00021L;
+/*AERO2*/    *ifN = 0;
+/*AERO2*/ }
+/*AERO2*/ /* =========================================================================== */
+/*AERO2*/
+/*AERO2*/ void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*AERO2*/ {
+/*AERO2*/    int BandInd = (~rf_band )& 0x01; /* 1:GSM/PCS, 0:GSM850/DCS */
+/*AERO2*/    *rfN = (BandInd<<16) | (arfcn<<6) | 0x00021L;
+/*AERO2*/    *ifN = 0;
+/*AERO2*/ }
+/*AERO2*/ /* =========================================================================== */
+#endif
+
+#if IS_RF_SKY74137
+/*SKY74137*/
+/*SKY74137*/ void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*SKY74137*/ {  int Nfrac=0;
+/*SKY74137*/
+/*SKY74137*/    switch(rf_band)
+/*SKY74137*/    {
+/*SKY74137*/       case  FrequencyBand850 :
+/*SKY74137*/       {
+/*SKY74137*/          if (arfcn <= 201)
+/*SKY74137*/          {  if (arfcn <= 158)                             /*  ARFCN :   128~158    */
+/*SKY74137*/             {   Nfrac = 1226027 + 96792*(arfcn-128) - ((arfcn-128)>>2) -2 ;
+/*SKY74137*/                 *rfN = 0xE20000 | (97L<<6);
+/*SKY74137*/             }
+/*SKY74137*/             else                                          /*  ARFCN :   159~201    */
+/*SKY74137*/             {   Nfrac = 32264 + 96791*(arfcn-159) + ((arfcn-159)>>1) +3 ;
+/*SKY74137*/                 *rfN = 0xE20000 | (98L<<6);
+/*SKY74137*/             }
+/*SKY74137*/          }
+/*SKY74137*/          else
+/*SKY74137*/          {  if (arfcn <= 245)                             /*  ARFCN :   202~245    */
+/*SKY74137*/             {  Nfrac = 96792*(arfcn-202) - ((arfcn-202)>>1) +2 ;
+/*SKY74137*/                *rfN = 0xE20000 | (99L<<6);
+/*SKY74137*/             }
+/*SKY74137*/             else                                          /*  ARFCN :   246~251    */
+/*SKY74137*/             {  Nfrac = 64528 + 96792*(arfcn-246) - ((arfcn-246)>>2) ;
+/*SKY74137*/                *rfN = 0xE20000 | (100L<<6);
+/*SKY74137*/             }
+/*SKY74137*/          }
+/*SKY74137*/          break;
+/*SKY74137*/       }
+/*SKY74137*/       case  FrequencyBand900 :
+/*SKY74137*/       {
+/*SKY74137*/          if (arfcn<=91)
+/*SKY74137*/          {  if (arfcn<=4)                                /*  ARFCN :   0~4   */
+/*SKY74137*/             {  Nfrac = 3710346 + 96792*arfcn - (arfcn>>2) ;
+/*SKY74137*/                *rfN = 0xE20000 | (104L<<6);
+/*SKY74137*/             }
+/*SKY74137*/             else if (arfcn<=48)                          /*  ARFCN :   5~48  */
+/*SKY74137*/             {  Nfrac = 0 + (96792*(arfcn-5)) - ((arfcn-5)>>1) +2 ;
+/*SKY74137*/                *rfN = 0xE20000 | (105L<<6);
+/*SKY74137*/             }
+/*SKY74137*/             else                                         /*  ARFCN :  49~91  */
+/*SKY74137*/             {  Nfrac = 64528 + (96792*(arfcn-49)) - ((arfcn-49)>>2) -3 ;
+/*SKY74137*/                *rfN = 0xE20000 | (106L<<6);
+/*SKY74137*/             }
+/*SKY74137*/          }
+/*SKY74137*/          else
+/*SKY74137*/          {  if (arfcn<=985)
+/*SKY74137*/             { if (arfcn<=124)                             /*  ARFCN :   92~124 */
+/*SKY74137*/               {  Nfrac = 32264 + (96791*(arfcn-92)) + ((arfcn-92)>>1) +2 ;
+/*SKY74137*/                  *rfN = 0xE20000 | (107L<<6);
+/*SKY74137*/               }
+/*SKY74137*/               else                                        /*  ARFCN :   975~985   */
+/*SKY74137*/               {  Nfrac = 3161860 + (96792*(arfcn-975)) - ((arfcn-975)>>2) - 1 ;
+/*SKY74137*/                  *rfN = 0xE20000 | (103L<<6);
+/*SKY74137*/               }
+/*SKY74137*/             }
+/*SKY74137*/             else                                          /*  ARFCN :   986~1023 */
+/*SKY74137*/             {  Nfrac = 32264 + (96792*(arfcn-986)) - ((arfcn-986)>>2) - 2 ;
+/*SKY74137*/                *rfN = 0xE20000 | (104L<<6);
+/*SKY74137*/             }
+/*SKY74137*/          }
+/*SKY74137*/          break;
+/*SKY74137*/       }
+/*SKY74137*/       case  FrequencyBand1800 :
+/*SKY74137*/       {
+/*SKY74137*/          if (arfcn<=759)
+/*SKY74137*/          {  if(arfcn<=585)                                /*  ARFCN : 512~585  */
+/*SKY74137*/             {  Nfrac = 613014 + (48396*(arfcn-512)) - ((arfcn-512)>>2) +2 ;
+/*SKY74137*/                *rfN = 0xE20000 | (101L<<6);
+/*SKY74137*/             }
+/*SKY74137*/             else if (arfcn<=672)                          /*  ARFCN : 586~672  */
+/*SKY74137*/             {  Nfrac = (48396*(arfcn-586)) - ((arfcn-586)>>2) +2 ;
+/*SKY74137*/                *rfN = 0xE20000 | (102L<<6);
+/*SKY74137*/             }
+/*SKY74137*/             else                                          /*  ARFCN : 673~759  */
+/*SKY74137*/             {  Nfrac = 16132 + (48396*(arfcn-673)) - ((arfcn-673)>>2) +2 ;
+/*SKY74137*/                *rfN = 0xE20000 | (103L<<6);
+/*SKY74137*/             }
+/*SKY74137*/          }
+/*SKY74137*/          else
+/*SKY74137*/          {  if (arfcn<=845)                               /*  ARFCN : 760~845  */
+/*SKY74137*/             {  Nfrac = 32264 + (48396*(arfcn-760)) - ((arfcn-760)>>2) +2 ;
+/*SKY74137*/                *rfN = 0xE20000 | (104L<<6);
+/*SKY74137*/             }
+/*SKY74137*/             else                                          /*  ARFCN : 846~885  */
+/*SKY74137*/             {  Nfrac = (48396*(arfcn-846)) - ((arfcn-846)>>2) +1 ;
+/*SKY74137*/                *rfN = 0xE20000 | (105L<<6);
+/*SKY74137*/             }
+/*SKY74137*/          }
+/*SKY74137*/          break;
+/*SKY74137*/       }
+/*SKY74137*/       case  FrequencyBand1900 :
+/*SKY74137*/       {
+/*SKY74137*/          if (arfcn<=654)
+/*SKY74137*/          {  if(arfcn<=567)                                /*  ARFCN : 512~567  */
+/*SKY74137*/             {  Nfrac = 1500270 + (48396*(arfcn-512)) - ((arfcn-512)>>2) +2 ;
+/*SKY74137*/                *rfN = 0xE20000 | (108L<<6);
+/*SKY74137*/             }
+/*SKY74137*/             else                                          /*  ARFCN : 568~654  */
+/*SKY74137*/             {  Nfrac = 16132 + (48396*(arfcn-568)) - ((arfcn-568)>>2) +2 ;
+/*SKY74137*/                *rfN = 0xE20000 | (109L<<6);
+/*SKY74137*/             }
+/*SKY74137*/          }
+/*SKY74137*/          else
+/*SKY74137*/          {  if (arfcn<=740)                               /*  ARFCN : 655~740  */
+/*SKY74137*/             {  Nfrac = 32264 + (48396*(arfcn-655)) - ((arfcn-655)>>2) +2 ;
+/*SKY74137*/                *rfN = 0xE20000 | (110L<<6);
+/*SKY74137*/             }
+/*SKY74137*/             else                                          /*  ARFCN : 741~810  */
+/*SKY74137*/             {  Nfrac = (48396*(arfcn-741)) - ((arfcn-741)>>2) +2 ;
+/*SKY74137*/                *rfN = 0xE20000 | (111L<<6);
+/*SKY74137*/             }
+/*SKY74137*/          }
+/*SKY74137*/          break;
+/*SKY74137*/       }
+/*SKY74137*/       default :
+/*SKY74137*/       {
+/*SKY74137*/          break;
+/*SKY74137*/       }
+/*SKY74137*/    }
+/*SKY74137*/    *ifN = 0x3 | (Nfrac<<2);
+/*SKY74137*/ }
+/*SKY74137*/ /* =========================================================================== */
+/*SKY74137*/
+/*SKY74137*/ char SKY_TXCP = 0;      //tx charge pump current choice
+/*SKY74137*/
+/*SKY74137*/ void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*SKY74137*/ {  int   Nfrac=0;
+/*SKY74137*/
+/*SKY74137*/    switch(rf_band)
+/*SKY74137*/    {
+/*SKY74137*/       case  FrequencyBand850 :
+/*SKY74137*/       {
+/*SKY74137*/          if (arfcn <= 185)
+/*SKY74137*/          {  if (arfcn <= 146)                             /*  ARFCN :   128~146    */
+/*SKY74137*/             {
+/*SKY74137*/                Nfrac = 2147484 + 108407*(arfcn-128) - ((arfcn-128)>>2) -2 ;
+/*SKY74137*/                *rfN = 0xE20000 | (103L<<6);
+/*SKY74137*/             }
+/*SKY74137*/             else                                          /*  ARFCN :   147~185    */
+/*SKY74137*/             {
+/*SKY74137*/                Nfrac = 12906 + 108407*(arfcn-147) - ((arfcn-147)>>2) -3 ;
+/*SKY74137*/                *rfN = 0xE20000 | (104L<<6);
+/*SKY74137*/             }
+/*SKY74137*/          }
+/*SKY74137*/          else
+/*SKY74137*/          {
+/*SKY74137*/             if (arfcn <= 224)                             /*  ARFCN :   186~224    */
+/*SKY74137*/             {
+/*SKY74137*/                Nfrac = 46460 + 108407*(arfcn-186) - ((arfcn-186)>>2) -3 ;
+/*SKY74137*/                *rfN = 0xE20000 | (105L<<6);
+/*SKY74137*/             }
+/*SKY74137*/             else                                          /*  ARFCN :   225~251    */
+/*SKY74137*/             {
+/*SKY74137*/                Nfrac = 80014 + 108407*(arfcn-225) - ((arfcn-225)>>2) -2 ;
+/*SKY74137*/                *rfN = 0xE20000 | (106L<<6);
+/*SKY74137*/             }
+/*SKY74137*/          }
+/*SKY74137*/
+/*SKY74137*/          SKY_TXCP = 1;
+/*SKY74137*/
+/*SKY74137*/          break;
+/*SKY74137*/       }
+/*SKY74137*/       case  FrequencyBand900 :
+/*SKY74137*/       {
+/*SKY74137*/          if(arfcn<=115)
+/*SKY74137*/          {  if(arfcn<=76)
+/*SKY74137*/             {  if(arfcn<=38)                              /*  ARFCN : 0~38  */
+/*SKY74137*/                {
+/*SKY74137*/                   Nfrac = 64528 + (108407*arfcn) - (arfcn>>2) -3 ;
+/*SKY74137*/                   *rfN = 0xE20000 | (112L<<6);
+/*SKY74137*/                }
+/*SKY74137*/                else                                       /*  ARFCN : 39~76  */
+/*SKY74137*/                {
+/*SKY74137*/                   Nfrac = 98082 + (108407*(arfcn-39)) - ((arfcn-39)>>2) -2 ;
+/*SKY74137*/                   *rfN = 0xE20000 | (113L<<6);
+/*SKY74137*/                }
+/*SKY74137*/             }
+/*SKY74137*/             else                                          /*  ARFCN : 77~115  */
+/*SKY74137*/             {
+/*SKY74137*/                Nfrac = 23230 + (108407*(arfcn-77)) - ((arfcn-77)>>2) -2 ;
+/*SKY74137*/                *rfN = 0xE20000 | (114L<<6);
+/*SKY74137*/             }
+/*SKY74137*/          }
+/*SKY74137*/          else
+/*SKY74137*/          {  if(arfcn<=984)
+/*SKY74137*/             {  if(arfcn<=124)                             /*  ARFCN : 116~124  */
+/*SKY74137*/                {
+/*SKY74137*/                   Nfrac = 56784 + (108407*(arfcn-116)) - ((arfcn-116)>>2) ;
+/*SKY74137*/                   *rfN = 0xE20000 | (115L<<6);
+/*SKY74137*/                }
+/*SKY74137*/                else                                       /*  ARFCN : 975~984  */
+/*SKY74137*/                {
+/*SKY74137*/                   Nfrac = 3141211 + (108407*(arfcn-975)) - ((arfcn-975)>>2) -1 ;
+/*SKY74137*/                   *rfN = 0xE20000 | (110L<<6);
+/*SKY74137*/                }
+/*SKY74137*/             }
+/*SKY74137*/             else                                          /*  ARFCN : 985~1023 */
+/*SKY74137*/             {
+/*SKY74137*/                Nfrac = 30973 + (108407*(arfcn-985)) - ((arfcn-985)>>2) -2 ;
+/*SKY74137*/                *rfN = 0xE20000 | (111L<<6);
+/*SKY74137*/             }
+/*SKY74137*/          }
+/*SKY74137*/
+/*SKY74137*/          SKY_TXCP = 1;
+/*SKY74137*/
+/*SKY74137*/          break;
+/*SKY74137*/       }
+/*SKY74137*/       case  FrequencyBand1800 :
+/*SKY74137*/       {
+/*SKY74137*/          if (arfcn <= 737)
+/*SKY74137*/          {
+/*SKY74137*/             if(arfcn<=655)
+/*SKY74137*/             {  if(arfcn <= 573)                             /*  ARFCN : 512~573  */
+/*SKY74137*/                {
+/*SKY74137*/                   Nfrac = 1049489 + (51135*(arfcn-512)) + ((arfcn-512)>>2) -2 ;
+/*SKY74137*/                   *rfN = 0xE20000 | (101L<<6);
+/*SKY74137*/                }
+/*SKY74137*/                else                                         /*  ARFCN : 574~655  */
+/*SKY74137*/                {
+/*SKY74137*/                   Nfrac = 25568 + (51135*(arfcn-574)) + ((arfcn-574)>>2) -2 ;
+/*SKY74137*/                   *rfN = 0xE20000 | (102L<<6);
+/*SKY74137*/                }
+/*SKY74137*/             }
+/*SKY74137*/             else                                            /*  ARFCN : 656~737  */
+/*SKY74137*/             {
+/*SKY74137*/                Nfrac = 24350 + (51135*(arfcn-656)) + ((arfcn-656)>>2) -2 ;
+/*SKY74137*/                *rfN = 0xE20000 | (103L<<6);
+/*SKY74137*/             }
+/*SKY74137*/          }
+/*SKY74137*/          else
+/*SKY74137*/          {
+/*SKY74137*/             if(arfcn <= 819)                               /*  ARFCN : 738~819  */
+/*SKY74137*/             {
+/*SKY74137*/                Nfrac = 23133 + (51135*(arfcn-738)) + ((arfcn-738)>>2) -2 ;
+/*SKY74137*/                *rfN = 0xE20000 | (104L<<6);
+/*SKY74137*/             }
+/*SKY74137*/             else                                            /*  ARFCN : 820~885  */
+/*SKY74137*/             {
+/*SKY74137*/                Nfrac = 21915 + (51135*(arfcn-820)) + ((arfcn-820)>>2) -2 ;
+/*SKY74137*/                *rfN = 0xE20000 | (105L<<6);
+/*SKY74137*/             }
+/*SKY74137*/          }
+/*SKY74137*/
+/*SKY74137*/          SKY_TXCP = 3;
+/*SKY74137*/
+/*SKY74137*/          break;
+/*SKY74137*/       }
+/*SKY74137*/       case  FrequencyBand1900 :
+/*SKY74137*/       {
+/*SKY74137*/          if (arfcn <= 693)
+/*SKY74137*/          {
+/*SKY74137*/             if(arfcn<=611)
+/*SKY74137*/             {  if(arfcn <= 529)                             /*  ARFCN : 512~529  */
+/*SKY74137*/                {
+/*SKY74137*/                   Nfrac = 3289698 + (51135*(arfcn-512)) + ((arfcn-512)>>2) ;
+/*SKY74137*/                   *rfN = 0xE20000 | (109L<<6);
+/*SKY74137*/                }
+/*SKY74137*/                else                                         /*  ARFCN : 530~611  */
+/*SKY74137*/                {
+/*SKY74137*/                   Nfrac = 15828 + (51135*(arfcn-530)) + ((arfcn-530)>>2) -2 ;
+/*SKY74137*/                   *rfN = 0xE20000 | (110L<<6);
+/*SKY74137*/                }
+/*SKY74137*/             }
+/*SKY74137*/             else                                            /*  ARFCN : 612~693  */
+/*SKY74137*/             {
+/*SKY74137*/                Nfrac = 14610 + (51135*(arfcn-612)) + ((arfcn-612)>>2) -2 ;
+/*SKY74137*/                *rfN = 0xE20000 | (111L<<6);
+/*SKY74137*/             }
+/*SKY74137*/          }
+/*SKY74137*/          else
+/*SKY74137*/          {
+/*SKY74137*/             if(arfcn <= 775)                               /*  ARFCN : 694~775  */
+/*SKY74137*/             {
+/*SKY74137*/                Nfrac = 13393 + (51135*(arfcn-694)) + ((arfcn-694)>>2) -2 ;
+/*SKY74137*/                *rfN = 0xE20000 | (112L<<6);
+/*SKY74137*/             }
+/*SKY74137*/             else                                            /*  ARFCN : 820~885  */
+/*SKY74137*/             {
+/*SKY74137*/                Nfrac = 12175 + (51135*(arfcn-776)) + ((arfcn-776)>>2) ;
+/*SKY74137*/                *rfN = 0xE20000 | (113L<<6);
+/*SKY74137*/             }
+/*SKY74137*/          }
+/*SKY74137*/
+/*SKY74137*/          SKY_TXCP = 3;
+/*SKY74137*/
+/*SKY74137*/          break;
+/*SKY74137*/       }
+/*SKY74137*/       default :
+/*SKY74137*/       {
+/*SKY74137*/          break;
+/*SKY74137*/       }
+/*SKY74137*/    }
+/*SKY74137*/    *ifN = 0x3 | (Nfrac<<2);
+/*SKY74137*/ }
+/*SKY74137*/ /* =========================================================================== */
+#endif
+
+#if IS_RF_GRF6201
+/*GRF6201*/void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*GRF6201*/{
+/*GRF6201*/   unsigned long PC;
+/*GRF6201*/   unsigned long SC;
+/*GRF6201*/   unsigned long MC;
+/*GRF6201*/
+/*GRF6201*/   switch(rf_band)
+/*GRF6201*/   {
+/*GRF6201*/      case FrequencyBand850:
+/*GRF6201*/      {
+/*GRF6201*/         if (arfcn<=201)
+/*GRF6201*/         {
+/*GRF6201*/            if (arfcn<=169)
+/*GRF6201*/            {
+/*GRF6201*/               if (arfcn<=136)   /* ARFCN : 128~136 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 16;
+/*GRF6201*/                  SC = 5;
+/*GRF6201*/                  MC = (unsigned long)( 4065248 - (136-arfcn)*129055 - ((136-arfcn)>>1) );
+/*GRF6201*/               }
+/*GRF6201*/               else         /* ARFCN : 137~169 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 16;
+/*GRF6201*/                  SC = 6;
+/*GRF6201*/                  MC = (unsigned long)( 4129776 - (169-arfcn)*129055 - ((169-arfcn)>>1) );
+/*GRF6201*/               }
+/*GRF6201*/            }
+/*GRF6201*/            else            /* ARFCN : 170~201 */
+/*GRF6201*/            {
+/*GRF6201*/               PC = 16;
+/*GRF6201*/               SC = 7;
+/*GRF6201*/               MC = (unsigned long)( 4065248 - (201-arfcn)*129055 - ((201-arfcn)>>1) );
+/*GRF6201*/            }
+/*GRF6201*/         }
+/*GRF6201*/         else
+/*GRF6201*/         {
+/*GRF6201*/            if (arfcn<=234)      /* ARFCN : 202~234 */
+/*GRF6201*/            {
+/*GRF6201*/               PC = 17;
+/*GRF6201*/               SC = 0;
+/*GRF6201*/               MC = (unsigned long)( 4129776 - (234-arfcn)*129055 - ((234-arfcn)>>1) );
+/*GRF6201*/            }
+/*GRF6201*/            else            /* ARFCN : 235~251 */
+/*GRF6201*/            {
+/*GRF6201*/               PC = 17;
+/*GRF6201*/               SC = 1;
+/*GRF6201*/               MC = (unsigned long)( 2129416 - (251-arfcn)*129056 + ((251-arfcn)>>1) );
+/*GRF6201*/            }
+/*GRF6201*/         }
+/*GRF6201*/         *rfN = ((MC&0x3E0000L)<<1) | (PC<<13) | (SC<<10) | (0x00L<<8) | (0x02L<<6);   /* MC/PC/SC/Band/Mode */
+/*GRF6201*/         *ifN = ((MC&0x1FFFFL)<<7 ) | 0x01L;                                 /* MC/Addr */
+/*GRF6201*/
+/*GRF6201*/         break;
+/*GRF6201*/      }
+/*GRF6201*/      case FrequencyBand900:
+/*GRF6201*/      {
+/*GRF6201*/         if (arfcn<=102)
+/*GRF6201*/         {
+/*GRF6201*/            if (arfcn<=37)
+/*GRF6201*/            {
+/*GRF6201*/               if (arfcn<=4)   /* ARFCN : 0~4 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 17;
+/*GRF6201*/                  SC = 7;
+/*GRF6201*/                  MC = (unsigned long)( 4065248 - (4-arfcn)*129055 - ((4-arfcn)>>1) );
+/*GRF6201*/               }
+/*GRF6201*/               else         /* ARFCN : 5~37 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 18;
+/*GRF6201*/                  SC = 0;
+/*GRF6201*/                  MC = (unsigned long)( 4129776 - (37-arfcn)*129055 - ((37-arfcn)>>1) );
+/*GRF6201*/               }
+/*GRF6201*/            }
+/*GRF6201*/            else
+/*GRF6201*/            {
+/*GRF6201*/               if (arfcn<=69)   /* ARFCN : 38~69 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 18;
+/*GRF6201*/                  SC = 1;
+/*GRF6201*/                  MC = (unsigned long)( 4065248 - (69-arfcn)*129055 - ((69-arfcn)>>1) );
+/*GRF6201*/               }
+/*GRF6201*/               else         /* ARFCN : 70~102 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 18;
+/*GRF6201*/                  SC = 2;
+/*GRF6201*/                  MC = (unsigned long)( 4129776 - (102-arfcn)*129055 - ((102-arfcn)>>1) );
+/*GRF6201*/               }
+/*GRF6201*/            }
+/*GRF6201*/         }
+/*GRF6201*/         else
+/*GRF6201*/         {
+/*GRF6201*/            if (arfcn<=124)      /* ARFCN : 103~124 */
+/*GRF6201*/            {
+/*GRF6201*/               PC = 18;
+/*GRF6201*/               SC = 3;
+/*GRF6201*/               MC = (unsigned long)( 2774693 - (124-arfcn)*129055 - ((124-arfcn)>>1) );
+/*GRF6201*/            }
+/*GRF6201*/            else
+/*GRF6201*/            {
+/*GRF6201*/               if (arfcn<=996)   /* ARFCN : 975~996 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 17;
+/*GRF6201*/                  SC = 6;
+/*GRF6201*/                  MC = (unsigned long)( 4129776 - (996-arfcn)*129055 - ((996-arfcn)>>1) );
+/*GRF6201*/               }
+/*GRF6201*/               else         /* ARFCN : 997~1023 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 17;
+/*GRF6201*/                  SC = 7;
+/*GRF6201*/                  MC = (unsigned long)( 3419971 - (1023-arfcn)*129056 + ((1023-arfcn)>>1) );
+/*GRF6201*/               }
+/*GRF6201*/            }
+/*GRF6201*/         }
+/*GRF6201*/         *rfN = ((MC&0x3E0000L)<<1) | (PC<<13) | (SC<<10) | (0x01L<<8) | (0x02L<<6);   /* MC/PC/SC/Band/Mode */
+/*GRF6201*/         *ifN = ((MC&0x1FFFFL)<<7 ) | 0x01L;                                 /* MC/Addr */
+/*GRF6201*/
+/*GRF6201*/         break;
+/*GRF6201*/      }
+/*GRF6201*/      case FrequencyBand1800:
+/*GRF6201*/      {
+/*GRF6201*/         if (arfcn<=715)
+/*GRF6201*/         {
+/*GRF6201*/            if (arfcn<=585)
+/*GRF6201*/            {
+/*GRF6201*/               if (arfcn<=520)   /* ARFCN : 512~520 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 17;
+/*GRF6201*/                  SC = 2;
+/*GRF6201*/                  MC = (unsigned long)( 3807137 + (arfcn-515)*64528 - ((arfcn-515)>>2) );
+/*GRF6201*/               }
+/*GRF6201*/               else         /* ARFCN : 521~585 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 17;
+/*GRF6201*/                  SC = 3;
+/*GRF6201*/                  MC = (unsigned long)( 2000360 + (arfcn-552)*64528 - ((arfcn-552)>>2) );
+/*GRF6201*/               }
+/*GRF6201*/            }
+/*GRF6201*/            else
+/*GRF6201*/            {
+/*GRF6201*/               if (arfcn<=650)   /* ARFCN : 586~650 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 17;
+/*GRF6201*/                  SC = 4;
+/*GRF6201*/                  MC = (unsigned long)( 2000360 + (arfcn-617)*64528 - ((arfcn-617)>>2) );
+/*GRF6201*/               }
+/*GRF6201*/               else         /* ARFCN : 651~715 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 17;
+/*GRF6201*/                  SC = 5;
+/*GRF6201*/                  MC = (unsigned long)( 2000360 + (arfcn-682)*64528 - ((arfcn-682)>>2) );
+/*GRF6201*/               }
+/*GRF6201*/            }
+/*GRF6201*/         }
+/*GRF6201*/         else
+/*GRF6201*/         {
+/*GRF6201*/            if (arfcn<=845)
+/*GRF6201*/            {
+/*GRF6201*/               if (arfcn<=780)   /* ARFCN : 716~780 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 17;
+/*GRF6201*/                  SC = 6;
+/*GRF6201*/                  MC = (unsigned long)( 2000360 + (arfcn-747)*64528 - ((arfcn-747)>>2) );
+/*GRF6201*/               }
+/*GRF6201*/               else         /* ARFCN : 781~845 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 17;
+/*GRF6201*/                  SC = 7;
+/*GRF6201*/                  MC = (unsigned long)( 2000360 + (arfcn-812)*64528 - ((arfcn-812)>>2) );
+/*GRF6201*/               }
+/*GRF6201*/            }
+/*GRF6201*/            else            /* ARFCN : 846~885 */
+/*GRF6201*/            {
+/*GRF6201*/               PC = 18;
+/*GRF6201*/               SC = 0;
+/*GRF6201*/               MC = (unsigned long)( 1226027 + (arfcn-865)*64528 - ((arfcn-865)>>2) );
+/*GRF6201*/            }
+/*GRF6201*/         }
+/*GRF6201*/         *rfN = ((MC&0x3E0000L)<<1) | (PC<<13) | (SC<<10) | (0x02L<<8) | (0x02L<<6);   /* MC/PC/SC/Band/Mode */
+/*GRF6201*/         *ifN = ((MC&0x1FFFFL)<<7 ) | 0x01L;                                 /* MC/Addr */
+/*GRF6201*/
+/*GRF6201*/         break;
+/*GRF6201*/      }
+/*GRF6201*/      case FrequencyBand1900:
+/*GRF6201*/      {
+/*GRF6201*/         if (arfcn<=675)
+/*GRF6201*/         {
+/*GRF6201*/            if (arfcn<=610)
+/*GRF6201*/            {
+/*GRF6201*/               if (arfcn<=545)   /* ARFCN : 512~545 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 18;
+/*GRF6201*/                  SC = 4;
+/*GRF6201*/                  MC = (unsigned long)( 3032804 + (arfcn-528)*64528 - ((arfcn-528)>>2) );
+/*GRF6201*/               }
+/*GRF6201*/               else         /* ARFCN : 546~610 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 18;
+/*GRF6201*/                  SC = 5;
+/*GRF6201*/                  MC = (unsigned long)( 2000360 + (arfcn-577)*64528 - ((arfcn-577)>>2) );
+/*GRF6201*/               }
+/*GRF6201*/            }
+/*GRF6201*/            else            /* ARFCN : 611~675 */
+/*GRF6201*/            {
+/*GRF6201*/               PC = 18;
+/*GRF6201*/               SC = 6;
+/*GRF6201*/               MC = (unsigned long)( 2000360 + (arfcn-642)*64528 - ((arfcn-642)>>2) );
+/*GRF6201*/            }
+/*GRF6201*/         }
+/*GRF6201*/         else
+/*GRF6201*/         {
+/*GRF6201*/            if (arfcn<=805)
+/*GRF6201*/            {
+/*GRF6201*/               if (arfcn<=740)   /* ARFCN : 676~740 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 18;
+/*GRF6201*/                  SC = 7;
+/*GRF6201*/                  MC = (unsigned long)( 2000360 + (arfcn-707)*64528 - ((arfcn-707)>>2) );
+/*GRF6201*/               }
+/*GRF6201*/               else         /* ARFCN : 741~805 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 19;
+/*GRF6201*/                  SC = 0;
+/*GRF6201*/                  MC = (unsigned long)( 2000360 + (arfcn-772)*64528 - ((arfcn-772)>>2) );
+/*GRF6201*/               }
+/*GRF6201*/            }
+/*GRF6201*/            else            /* ARFCN : 806~810 */
+/*GRF6201*/            {
+/*GRF6201*/               PC = 19;
+/*GRF6201*/               SC = 1;
+/*GRF6201*/               MC = (unsigned long)( 129055 + (arfcn-808)*64528 - ((arfcn-808)>>2) );
+/*GRF6201*/            }
+/*GRF6201*/         }
+/*GRF6201*/         *rfN = ((MC&0x3E0000L)<<1) | (PC<<13) | (SC<<10) | (0x03L<<8) | (0x02L<<6);   /* MC/PC/SC/Band/Mode */
+/*GRF6201*/         *ifN = ((MC&0x1FFFFL)<<7 ) | 0x01L;                                 /* MC/Addr */
+/*GRF6201*/
+/*GRF6201*/         break;
+/*GRF6201*/      }
+/*GRF6201*/   }
+/*GRF6201*/}
+/*GRF6201*//* =========================================================================== */
+/*GRF6201*/
+/*GRF6201*/void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*GRF6201*/{
+/*GRF6201*/   unsigned long PC;
+/*GRF6201*/   unsigned long SC;
+/*GRF6201*/   unsigned long MC;
+/*GRF6201*/   unsigned long special_ch;
+/*GRF6201*/
+/*GRF6201*/   special_ch = 0;
+/*GRF6201*/   switch(rf_band)
+/*GRF6201*/   {
+/*GRF6201*/      case FrequencyBand850:
+/*GRF6201*/      {
+/*GRF6201*/         if (arfcn<=199)
+/*GRF6201*/         {
+/*GRF6201*/            if (arfcn<=166)
+/*GRF6201*/            {
+/*GRF6201*/               if (arfcn<=134)   /* ARFCN : 128~134 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 15;
+/*GRF6201*/                  SC = 6;
+/*GRF6201*/                  MC = (unsigned long)( 4129776 - (134-arfcn)*129055 - ((134-arfcn)>>1) );
+/*GRF6201*/               }
+/*GRF6201*/               else         /* ARFCN : 135~166 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 15;
+/*GRF6201*/                  SC = 7;
+/*GRF6201*/                  MC = (unsigned long)( 4065248 - (166-arfcn)*129055 - ((166-arfcn)>>1) );
+/*GRF6201*/               }
+/*GRF6201*/            }
+/*GRF6201*/            else            /* ARFCN : 167~199 */
+/*GRF6201*/            {
+/*GRF6201*/               PC = 16;
+/*GRF6201*/               SC = 0;
+/*GRF6201*/               MC = (unsigned long)( 4129776 - (199-arfcn)*129055 - ((199-arfcn)>>1) );
+/*GRF6201*/            }
+/*GRF6201*/         }
+/*GRF6201*/         else
+/*GRF6201*/         {
+/*GRF6201*/            if (arfcn<=231)      /* ARFCN : 200~231 */
+/*GRF6201*/            {
+/*GRF6201*/               PC = 16;
+/*GRF6201*/               SC = 1;
+/*GRF6201*/               MC = (unsigned long)( 4065248 - (231-arfcn)*129055 - ((231-arfcn)>>1) );
+/*GRF6201*/            }
+/*GRF6201*/            else            /* ARFCN : 232~251 */
+/*GRF6201*/            {
+/*GRF6201*/               PC = 16;
+/*GRF6201*/               SC = 2;
+/*GRF6201*/               MC = (unsigned long)( 2452055 - (251-arfcn)*129056 + ((251-arfcn)>>1) );
+/*GRF6201*/            }
+/*GRF6201*/         }
+/*GRF6201*/         *rfN = ((MC&0x3E0000L)<<1) | (PC<<13) | (SC<<10) | (0x00L<<8) | (0x03L<<6);   /* MC/PC/SC/Band/Mode */
+/*GRF6201*/         *ifN = ((MC&0x1FFFFL)<<7 ) | 0x01L | (0x00L<<24);                     /* MC/Addr/TxCurMag */
+/*GRF6201*/
+/*GRF6201*/         break;
+/*GRF6201*/      }
+/*GRF6201*/      case FrequencyBand900:
+/*GRF6201*/      {
+/*GRF6201*/         if (arfcn<=99)
+/*GRF6201*/         {
+/*GRF6201*/            if (arfcn<=34)
+/*GRF6201*/            {
+/*GRF6201*/               if (arfcn<=2)   /* ARFCN : 0~2 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 17;
+/*GRF6201*/                  SC = 0;
+/*GRF6201*/                  MC = (unsigned long)( 4129776 - (2-arfcn)*129055 - ((2-arfcn)>>1) );
+/*GRF6201*/               }
+/*GRF6201*/               else         /* ARFCN : 3~34 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 17;
+/*GRF6201*/                  SC = 1;
+/*GRF6201*/                  MC = (unsigned long)( 4065248 - (34-arfcn)*129055 - ((34-arfcn)>>1) );
+/*GRF6201*/               }
+/*GRF6201*/            }
+/*GRF6201*/            else
+/*GRF6201*/            {
+/*GRF6201*/               if (arfcn<=67)   /* ARFCN : 35~67 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 17;
+/*GRF6201*/                  SC = 2;
+/*GRF6201*/                  MC = (unsigned long)( 4129776 - (67-arfcn)*129055 - ((67-arfcn)>>1) );
+/*GRF6201*/               }
+/*GRF6201*/               else         /* ARFCN : 68~99 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 17;
+/*GRF6201*/                  SC = 3;
+/*GRF6201*/                  MC = (unsigned long)( 4065248 - (99-arfcn)*129055 - ((99-arfcn)>>1) );
+/*GRF6201*/               }
+/*GRF6201*/            }
+/*GRF6201*/         }
+/*GRF6201*/         else
+/*GRF6201*/         {
+/*GRF6201*/            if (arfcn<=124)      /* ARFCN : 100~124 */
+/*GRF6201*/            {
+/*GRF6201*/               PC = 17;
+/*GRF6201*/               SC = 4;
+/*GRF6201*/               MC = (unsigned long)( 3097332 - (124-arfcn)*129055 - ((124-arfcn)>>1) );
+/*GRF6201*/            }
+/*GRF6201*/            else
+/*GRF6201*/            {
+/*GRF6201*/               if (arfcn<=993)   /* ARFCN : 975~993 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 16;
+/*GRF6201*/                  SC = 7;
+/*GRF6201*/                  MC = (unsigned long)( 4065248 - (993-arfcn)*129055 - ((993-arfcn)>>1) );
+/*GRF6201*/               }
+/*GRF6201*/               else         /* ARFCN : 994~1023 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 17;
+/*GRF6201*/                  SC = 0;
+/*GRF6201*/                  MC = (unsigned long)( 3742610 - (1023-arfcn)*129056 + ((1023-arfcn)>>1) );
+/*GRF6201*/               }
+/*GRF6201*/            }
+/*GRF6201*/         }
+/*GRF6201*/         *rfN = ((MC&0x3E0000L)<<1) | (PC<<13) | (SC<<10) | (0x01L<<8) | (0x03L<<6);   /* MC/PC/SC/Band/Mode */
+/*GRF6201*/         *ifN = ((MC&0x1FFFFL)<<7 ) | 0x01L | (0x00L<<24);                     /* MC/Addr/TxCurMag */
+/*GRF6201*/
+/*GRF6201*/         break;
+/*GRF6201*/      }
+/*GRF6201*/      case FrequencyBand1800:
+/*GRF6201*/      {
+/*GRF6201*/         if (arfcn<=735)
+/*GRF6201*/         {
+/*GRF6201*/            if (arfcn<=605)
+/*GRF6201*/            {
+/*GRF6201*/               if (arfcn<=540)   /* ARFCN : 512~540 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 16;
+/*GRF6201*/                  SC = 3;
+/*GRF6201*/                  MC = (unsigned long)( 3290915 + (arfcn-527)*64528 - ((arfcn-527)>>2) );
+/*GRF6201*/               }
+/*GRF6201*/               else         /* ARFCN : 541~605 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 16;
+/*GRF6201*/                  SC = 4;
+/*GRF6201*/                  MC = (unsigned long)( 2000360 + (arfcn-572)*64528 - ((arfcn-572)>>2) );
+/*GRF6201*/               }
+/*GRF6201*/            }
+/*GRF6201*/            else
+/*GRF6201*/            {
+/*GRF6201*/               if (arfcn<=670)   /* ARFCN : 606~670 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 16;
+/*GRF6201*/                  SC = 5;
+/*GRF6201*/                  MC = (unsigned long)( 2000360 + (arfcn-637)*64528 - ((arfcn-637)>>2) );
+/*GRF6201*/               }
+/*GRF6201*/               else         /* ARFCN : 671~735 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 16;
+/*GRF6201*/                  SC = 6;
+/*GRF6201*/                  MC = (unsigned long)( 2000360 + (arfcn-702)*64528 - ((arfcn-702)>>2) );
+/*GRF6201*/               }
+/*GRF6201*/            }
+/*GRF6201*/         }
+/*GRF6201*/         else
+/*GRF6201*/         {
+/*GRF6201*/            if (arfcn<=865)
+/*GRF6201*/            {
+/*GRF6201*/               if (arfcn<=800)   /* ARFCN : 736~800 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 16;
+/*GRF6201*/                  SC = 7;
+/*GRF6201*/                  MC = (unsigned long)( 2000360 + (arfcn-767)*64528 - ((arfcn-767)>>2) );
+/*GRF6201*/               }
+/*GRF6201*/               else         /* ARFCN : 801~865 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 17;
+/*GRF6201*/                  SC = 0;
+/*GRF6201*/                  MC = (unsigned long)( 2000360 + (arfcn-832)*64528 - ((arfcn-832)>>2) );
+/*GRF6201*/               }
+/*GRF6201*/            }
+/*GRF6201*/            else            /* ARFCN : 866~885 */
+/*GRF6201*/            {
+/*GRF6201*/               PC = 17;
+/*GRF6201*/               SC = 1;
+/*GRF6201*/               MC = (unsigned long)( 451694 + (arfcn-873)*64528 - ((arfcn-873)>>2) );
+/*GRF6201*/            }
+/*GRF6201*/         }
+/*GRF6201*/
+/*GRF6201*/         /* Special channel */
+/*GRF6201*/         if ( ((arfcn>=553) && (arfcn<=562)) ||
+/*GRF6201*/             ((arfcn>=615) && (arfcn<=624)) ||
+/*GRF6201*/             ((arfcn>=677) && (arfcn<=686)) ||
+/*GRF6201*/             ((arfcn>=740) && (arfcn<=748)) ||
+/*GRF6201*/             ((arfcn>=802) && (arfcn<=811)) ||
+/*GRF6201*/             ((arfcn>=864) && (arfcn<=885)) )
+/*GRF6201*/         {
+/*GRF6201*/            special_ch = 0x01L;
+/*GRF6201*/         }
+/*GRF6201*/         *rfN = ((MC&0x3E0000L)<<1) | (PC<<13) | (SC<<10) | (0x02L<<8) | (0x03L<<6);            /* MC/PC/SC/Band/Mode */
+/*GRF6201*/         *ifN = ((MC&0x1FFFFL)<<7 ) | (special_ch<<6) | 0x01L | (0x01L<<24) | (special_ch<<26);   /* MC/REV0/Addr/TxCurMag/REV1 */
+/*GRF6201*/
+/*GRF6201*/         break;
+/*GRF6201*/      }
+/*GRF6201*/      case FrequencyBand1900:
+/*GRF6201*/      {
+/*GRF6201*/         if (arfcn<=685)
+/*GRF6201*/         {
+/*GRF6201*/            if (arfcn<=620)
+/*GRF6201*/            {
+/*GRF6201*/               if (arfcn<=555)   /* ARFCN : 512~555 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 17;
+/*GRF6201*/                  SC = 6;
+/*GRF6201*/                  MC = (unsigned long)( 2774693 + (arfcn-534)*64528 - ((arfcn-534)>>2) );
+/*GRF6201*/               }
+/*GRF6201*/               else         /* ARFCN : 556~620 */
+/*GRF6201*/               {
+/*GRF6201*/                  PC = 17;
+/*GRF6201*/                  SC = 7;
+/*GRF6201*/                  MC = (unsigned long)( 2000360 + (arfcn-587)*64528 - ((arfcn-587)>>2) );
+/*GRF6201*/               }
+/*GRF6201*/            }
+/*GRF6201*/            else            /* ARFCN : 621~685 */
+/*GRF6201*/            {
+/*GRF6201*/               PC = 18;
+/*GRF6201*/               SC = 0;
+/*GRF6201*/               MC = (unsigned long)( 2000360 + (arfcn-652)*64528 - ((arfcn-652)>>2) );
+/*GRF6201*/            }
+/*GRF6201*/         }
+/*GRF6201*/         else
+/*GRF6201*/         {
+/*GRF6201*/            if (arfcn<=750)      /* ARFCN : 686~750 */
+/*GRF6201*/            {
+/*GRF6201*/               PC = 18;
+/*GRF6201*/               SC = 1;
+/*GRF6201*/               MC = (unsigned long)( 2000360 + (arfcn-717)*64528 - ((arfcn-717)>>2) );
+/*GRF6201*/            }
+/*GRF6201*/            else            /* ARFCN : 751~810 */
+/*GRF6201*/            {
+/*GRF6201*/               PC = 18;
+/*GRF6201*/               SC = 2;
+/*GRF6201*/               MC = (unsigned long)( 2000360 + (arfcn-782)*64528 - ((arfcn-782)>>2) );
+/*GRF6201*/            }
+/*GRF6201*/         }
+/*GRF6201*/
+/*GRF6201*/         /* Special channel */
+/*GRF6201*/         if ( ((arfcn>=538) && (arfcn<=547)) ||
+/*GRF6201*/             ((arfcn>=600) && (arfcn<=609)) ||
+/*GRF6201*/             ((arfcn>=663) && (arfcn<=671)) ||
+/*GRF6201*/             ((arfcn>=725) && (arfcn<=737)) ||
+/*GRF6201*/             ((arfcn>=787) && (arfcn<=796)) )
+/*GRF6201*/         {
+/*GRF6201*/            special_ch = 0x01L;
+/*GRF6201*/         }
+/*GRF6201*/         *rfN = ((MC&0x3E0000L)<<1) | (PC<<13) | (SC<<10) | (0x03L<<8) | (0x03L<<6);            /* MC/PC/SC/Band/Mode */
+/*GRF6201*/         *ifN = ((MC&0x1FFFFL)<<7 ) | (special_ch<<6) | 0x01L | (0x01L<<24) | (special_ch<<26);   /* MC/REV0/Addr/TxCurMag/REV1 */
+/*GRF6201*/
+/*GRF6201*/         break;
+/*GRF6201*/      }
+/*GRF6201*/   }
+/*GRF6201*/}
+/*GRF6201*//* =========================================================================== */
+#endif
+
+#if IS_RF_IRFS3001
+/*IRFS3001*/#define IRFS3001_MOD10( _in )  (( (_in*51)+76 ) >> 9);
+/*IRFS3001*/
+/*IRFS3001*/void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*IRFS3001*/{
+/*IRFS3001*/   unsigned short x1, x2;
+/*IRFS3001*/
+/*IRFS3001*/   switch(rf_band)
+/*IRFS3001*/   {
+/*IRFS3001*/      case  FrequencyBand850 :
+/*IRFS3001*/      {
+/*IRFS3001*/         x1 = (arfcn - 127) << 1;   // x1 = (ARFCN-127)*2
+/*IRFS3001*/         x2 = IRFS3001_MOD10( x1 );          // x2 = x1 mod 10
+/*IRFS3001*/         *rfN = ( (x2+869) << 10 ) | ( (x1-x2*10) << 6 ) | 0x04;
+/*IRFS3001*/         break;
+/*IRFS3001*/      }
+/*IRFS3001*/      case  FrequencyBand900 :
+/*IRFS3001*/      {
+/*IRFS3001*/         if( arfcn<125 )// ARFCN = 0~124
+/*IRFS3001*/         {
+/*IRFS3001*/            x1 = arfcn << 1;           // x1 = ARFCN * 2
+/*IRFS3001*/            x2 = IRFS3001_MOD10( x1 );          // x2 = x1 mod 10
+/*IRFS3001*/            *rfN = ( (x2+935) << 10 ) | ( (x1-x2*10) << 6 ) | 0x04;
+/*IRFS3001*/         }
+/*IRFS3001*/         else           // ARFCN = 975~1023
+/*IRFS3001*/         {
+/*IRFS3001*/            x1 = (arfcn-974) << 1;           // x1 = (ARFCN-974) * 2
+/*IRFS3001*/            x2 = IRFS3001_MOD10( x1 );                // x2 = x1 mod 10
+/*IRFS3001*/            *rfN = ( (x2+925) << 10 ) | ( (x1-x2*10) << 6 ) | 0x04;
+/*IRFS3001*/         }
+/*IRFS3001*/         break;
+/*IRFS3001*/      }
+/*IRFS3001*/      case  FrequencyBand1800 :
+/*IRFS3001*/      {
+/*IRFS3001*/         if( arfcn<701 )// ARFCN = 512~700
+/*IRFS3001*/         {
+/*IRFS3001*/            x1 = (arfcn-511) << 1;           // x1 = (ARFCN-511) * 2
+/*IRFS3001*/            x2 = IRFS3001_MOD10( x1 );                // x2 = x1 mod 10
+/*IRFS3001*/            *rfN = ( (x2+1805) << 10 ) | ( (x1-x2*10) << 6 ) | 0x04;
+/*IRFS3001*/         }
+/*IRFS3001*/         else           // ARFCN = 701~885
+/*IRFS3001*/         {
+/*IRFS3001*/            x1 = (arfcn-701) << 1;           // x1 = (ARFCN-701) * 2
+/*IRFS3001*/            x2 = IRFS3001_MOD10( x1 );                // x2 = x1 mod 10
+/*IRFS3001*/            *rfN = ( (x2+1843) << 10 ) | ( (x1-x2*10) << 6 ) | 0x04;
+/*IRFS3001*/         }
+/*IRFS3001*/         break;
+/*IRFS3001*/      }
+/*IRFS3001*/      case  FrequencyBand1900 :
+/*IRFS3001*/      {
+/*IRFS3001*/         if( arfcn<661 )// ARFCN = 512~660
+/*IRFS3001*/         {
+/*IRFS3001*/            x1 = (arfcn-511) << 1;           // x1 = (ARFCN-511) * 2
+/*IRFS3001*/            x2 = IRFS3001_MOD10( x1 );          // x2 = x1 mod 10
+/*IRFS3001*/            *rfN = ( (x2+1930) << 10 ) | ( (x1-x2*10) << 6 ) | 0x04;
+/*IRFS3001*/         }
+/*IRFS3001*/         else           // ARFCN = 661~810
+/*IRFS3001*/         {
+/*IRFS3001*/            x1 = (arfcn-661) << 1;           // x1 = (ARFCN-701) * 2
+/*IRFS3001*/            x2 = IRFS3001_MOD10( x1 );                // x2 = x1 mod 10
+/*IRFS3001*/            *rfN = ( (x2+1960) << 10 ) | ( (x1-x2*10) << 6 ) | 0x04;
+/*IRFS3001*/         }
+/*IRFS3001*/         break;
+/*IRFS3001*/      }
+/*IRFS3001*/      default :
+/*IRFS3001*/      {
+/*IRFS3001*/         break;
+/*IRFS3001*/      }
+/*IRFS3001*/   }
+/*IRFS3001*/
+/*IRFS3001*/   *ifN = 0;
+/*IRFS3001*/}
+/*IRFS3001*//* =========================================================================== */
+/*IRFS3001*/
+/*IRFS3001*/void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*IRFS3001*/{
+/*IRFS3001*/   unsigned short x1, x2;
+/*IRFS3001*/
+/*IRFS3001*/   switch(rf_band)
+/*IRFS3001*/   {
+/*IRFS3001*/      case  FrequencyBand850 :
+/*IRFS3001*/      {
+/*IRFS3001*/         x1 = (arfcn - 127) << 1;   // x1 = (ARFCN-127)*2
+/*IRFS3001*/         x2 = IRFS3001_MOD10( x1 );          // x2 = x1 mod 10
+/*IRFS3001*/         *rfN = ( (x2+824) << 10 ) | ( (x1-x2*10) << 6 ) | 0x05;
+/*IRFS3001*/         break;
+/*IRFS3001*/      }
+/*IRFS3001*/      case  FrequencyBand900 :
+/*IRFS3001*/      {
+/*IRFS3001*/         if( arfcn<125 )// ARFCN = 0~124
+/*IRFS3001*/         {
+/*IRFS3001*/            x1 = arfcn << 1;           // x1 = ARFCN * 2
+/*IRFS3001*/            x2 = IRFS3001_MOD10( x1 );          // x2 = x1 mod 10
+/*IRFS3001*/            *rfN = ( (x2+890) << 10 ) | ( (x1-x2*10) << 6 ) | 0x05;
+/*IRFS3001*/         }
+/*IRFS3001*/         else           // ARFCN = 975~1023
+/*IRFS3001*/         {
+/*IRFS3001*/            x1 = (arfcn-974) << 1;           // x1 = (ARFCN-974) * 2
+/*IRFS3001*/            x2 = IRFS3001_MOD10( x1 );                // x2 = x1 mod 10
+/*IRFS3001*/            *rfN = ( (x2+880) << 10 ) | ( (x1-x2*10) << 6 ) | 0x05;
+/*IRFS3001*/         }
+/*IRFS3001*/         break;
+/*IRFS3001*/      }
+/*IRFS3001*/      case  FrequencyBand1800 :
+/*IRFS3001*/      {
+/*IRFS3001*/         if( arfcn<701 )// ARFCN = 512~700
+/*IRFS3001*/         {
+/*IRFS3001*/            x1 = (arfcn-511) << 1;           // x1 = (ARFCN-511) * 2
+/*IRFS3001*/            x2 = IRFS3001_MOD10( x1 );                // x2 = x1 mod 10
+/*IRFS3001*/            *rfN = ( (x2+1710) << 10 ) | ( (x1-x2*10) << 6 ) | 0x05;
+/*IRFS3001*/         }
+/*IRFS3001*/         else           // ARFCN = 701~885
+/*IRFS3001*/         {
+/*IRFS3001*/            x1 = (arfcn-701) << 1;           // x1 = (ARFCN-701) * 2
+/*IRFS3001*/            x2 = IRFS3001_MOD10( x1 );                // x2 = x1 mod 10
+/*IRFS3001*/            *rfN = ( (x2+1748) << 10 ) | ( (x1-x2*10) << 6 ) | 0x05;
+/*IRFS3001*/         }
+/*IRFS3001*/         break;
+/*IRFS3001*/      }
+/*IRFS3001*/      case  FrequencyBand1900 :
+/*IRFS3001*/      {
+/*IRFS3001*/         if( arfcn<661 )// ARFCN = 512~660
+/*IRFS3001*/         {
+/*IRFS3001*/            x1 = (arfcn-511) << 1;           // x1 = (ARFCN-511) * 2
+/*IRFS3001*/            x2 = IRFS3001_MOD10( x1 );          // x2 = x1 mod 10
+/*IRFS3001*/            *rfN = ( (x2+1850) << 10 ) | ( (x1-x2*10) << 6 ) | 0x05;
+/*IRFS3001*/         }
+/*IRFS3001*/         else           // ARFCN = 661~810
+/*IRFS3001*/         {
+/*IRFS3001*/            x1 = (arfcn-661) << 1;           // x1 = (ARFCN-701) * 2
+/*IRFS3001*/            x2 = IRFS3001_MOD10( x1 );                // x2 = x1 mod 10
+/*IRFS3001*/            *rfN = ( (x2+1880) << 10 ) | ( (x1-x2*10) << 6 ) | 0x05;
+/*IRFS3001*/         }
+/*IRFS3001*/         break;
+/*IRFS3001*/      }
+/*IRFS3001*/      default :
+/*IRFS3001*/      {
+/*IRFS3001*/         break;
+/*IRFS3001*/      }
+/*IRFS3001*/   }
+/*IRFS3001*/
+/*IRFS3001*/   *ifN = 0;
+/*IRFS3001*/}
+/*IRFS3001*//* =========================================================================== */
+#endif
+
+#if IS_RF_AD6548
+/*AD6548*/void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*AD6548*/{
+/*AD6548*/   switch(rf_band)
+/*AD6548*/   {
+/*AD6548*/      case  FrequencyBand850 :
+/*AD6548*/      {
+/*AD6548*/         if(arfcn<=201)
+/*AD6548*/         {  if(arfcn<=158)
+/*AD6548*/            {                                /* ARFCN : 128~158     */
+/*AD6548*/                *rfN = (((arfcn-128)*24 + 304)<<13) | 0x1206L /*(36L<<7|0x06L)*/;
+/*AD6548*/            }
+/*AD6548*/            else
+/*AD6548*/            {                              /* ARFCN : 159~201     */
+/*AD6548*/                *rfN = (((arfcn-159)*24 + 8)<<13) | 0x1286L /*(37L<<7|0x06L)*/;
+/*AD6548*/            }
+/*AD6548*/         }
+/*AD6548*/         else
+/*AD6548*/         {  if(arfcn<=245)
+/*AD6548*/            {                                /* ARFCN : 202~245     */
+/*AD6548*/                *rfN = (((arfcn-202)*24 )<<13) | 0x1306L /*(38L<<7|0x06L)*/;
+/*AD6548*/            }
+/*AD6548*/            else
+/*AD6548*/            {                              /* ARFCN : 246~251     */
+/*AD6548*/                *rfN = (((arfcn-246)*24+16)<<13) | 0x1386L /*(39L<<7|0x06L)*/;
+/*AD6548*/            }
+/*AD6548*/         }
+/*AD6548*/         break;
+/*AD6548*/      }
+/*AD6548*/      case  FrequencyBand900 :
+/*AD6548*/      {
+/*AD6548*/         if(arfcn<=48)
+/*AD6548*/         {  if(arfcn<=4)
+/*AD6548*/            {                                /* ARFCN : 0~4     */
+/*AD6548*/                *rfN = (((arfcn)*24+920 )<<13) | 0x1586L /*(43L<<7|0x06L)*/;
+/*AD6548*/            }
+/*AD6548*/            else
+/*AD6548*/            {                              /* ARFCN : 5~48     */
+/*AD6548*/                *rfN = (((arfcn-5)*24 )<<13) | 0x1606L /*(44L<<7|0x06L)*/;
+/*AD6548*/            }
+/*AD6548*/         }
+/*AD6548*/         else
+/*AD6548*/         {  if(arfcn<=124)
+/*AD6548*/            {   if(arfcn<=91)
+/*AD6548*/                {                                /* ARFCN : 49~91     */
+/*AD6548*/                   *rfN = (((arfcn-49)*24+16)<<13) | 0x1686L /*(45L<<7|0x06L)*/;
+/*AD6548*/                }
+/*AD6548*/                else
+/*AD6548*/                {                                /* ARFCN : 92~124     */
+/*AD6548*/                   *rfN = (((arfcn-92)*24+8 )<<13) | 0x1706L /*(46L<<7|0x06L)*/;
+/*AD6548*/                }
+/*AD6548*/            }
+/*AD6548*/            else
+/*AD6548*/            {  if(arfcn<=985)
+/*AD6548*/                {                                /* ARFCN : 975~985     */
+/*AD6548*/                   *rfN = (((arfcn-975)*24+784)<<13) | 0x1506L /*(42L<<7|0x06L)*/;
+/*AD6548*/                }
+/*AD6548*/                else
+/*AD6548*/                {                                /* ARFCN : 986~1023     */
+/*AD6548*/                   *rfN = (((arfcn-986)*24+8 )<<13) | 0x1586L /*(43L<<7|0x06L)*/;
+/*AD6548*/                }
+/*AD6548*/            }
+/*AD6548*/         }
+/*AD6548*/         break;
+/*AD6548*/      }
+/*AD6548*/      case  FrequencyBand1800 :
+/*AD6548*/      {
+/*AD6548*/         if(arfcn<=672)
+/*AD6548*/         {  if(arfcn<=585)
+/*AD6548*/            {                                /* ARFCN : 512~585     */
+/*AD6548*/                *rfN = (((arfcn-512)*12+152)<<13) | 0x1406L /*(40L<<7|0x06L)*/;
+/*AD6548*/            }
+/*AD6548*/            else
+/*AD6548*/            {                                /* ARFCN : 586~672     */
+/*AD6548*/                *rfN = (((arfcn-586)*12)<<13) | 0x1486L /*(41L<<7|0x06L)*/;
+/*AD6548*/            }
+/*AD6548*/         }
+/*AD6548*/         else
+/*AD6548*/         {  if(arfcn<=759)
+/*AD6548*/            {                                 /* ARFCN : 673~759     */
+/*AD6548*/               *rfN = (((arfcn-673)*12+4)<<13) | 0x1506L /*(42L<<7|0x06L)*/;
+/*AD6548*/            }
+/*AD6548*/            else
+/*AD6548*/            { if(arfcn<=845)
+/*AD6548*/              {                               /* ARFCN : 760~845     */
+/*AD6548*/                *rfN = (((arfcn-760)*12+8)<<13) | 0x1586L /*(43L<<7|0x06L)*/;
+/*AD6548*/              }
+/*AD6548*/              else
+/*AD6548*/              {                                /* ARFCN : 846~885     */
+/*AD6548*/                *rfN = (((arfcn-846)*12)<<13) | 0x1606L /*(44L<<7|0x06L)*/;
+/*AD6548*/              }
+/*AD6548*/            }
+/*AD6548*/         }
+/*AD6548*/         break;
+/*AD6548*/      }
+/*AD6548*/      case  FrequencyBand1900 :
+/*AD6548*/      {
+/*AD6548*/         if(arfcn<=654)
+/*AD6548*/         {  if(arfcn<=567)
+/*AD6548*/            {                                /* ARFCN : 512~567     */
+/*AD6548*/                *rfN = (((arfcn-512)*12+372)<<13) | 0x1786L /*(47L<<7|0x06L)*/;
+/*AD6548*/            }
+/*AD6548*/            else
+/*AD6548*/            {                                /* ARFCN : 568~654     */
+/*AD6548*/                *rfN = (((arfcn-568)*12+4)<<13) | 0x1806L /*(48L<<7|0x06L)*/;
+/*AD6548*/            }
+/*AD6548*/         }
+/*AD6548*/         else
+/*AD6548*/         {  if(arfcn<=740)
+/*AD6548*/            {                                /* ARFCN : 655~740     */
+/*AD6548*/                *rfN = (((arfcn-655)*12+8)<<13) | 0x1886L /*(49L<<7|0x06L)*/;
+/*AD6548*/            }
+/*AD6548*/            else
+/*AD6548*/            {                                /* ARFCN : 741~810     */
+/*AD6548*/                *rfN = (((arfcn-741)*12)<<13) | 0x1906L /*(50L<<7|0x06L)*/;
+/*AD6548*/            }
+/*AD6548*/         }
+/*AD6548*/         break;
+/*AD6548*/      }
+/*AD6548*/      default :
+/*AD6548*/      {
+/*AD6548*/         break;
+/*AD6548*/      }
+/*AD6548*/   }
+/*AD6548*/   *ifN = 0;
+/*AD6548*/}
+/*AD6548*//* ========================================================================== */
+/*AD6548*/
+/*AD6548*/void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*AD6548*/{
+/*AD6548*/   switch(rf_band)
+/*AD6548*/   {
+/*AD6548*/      case  FrequencyBand850 :
+/*AD6548*/      {
+/*AD6548*/         if(arfcn<=185)
+/*AD6548*/         {  if(arfcn<=143)
+/*AD6548*/            {                                /* ARFCN : 128~143     */
+/*AD6548*/                *rfN = (((arfcn-128)*28+728)<<13) | 0x1106L /*(34L<<7|0x06L)*/;
+/*AD6548*/            }
+/*AD6548*/            else
+/*AD6548*/            {                                /* ARFCN : 144~185     */
+/*AD6548*/                *rfN = (((arfcn-144)*28+6)<<13) | 0x1186L /*(35L<<7|0x06L)*/;
+/*AD6548*/            }
+/*AD6548*/         }
+/*AD6548*/         else
+/*AD6548*/         {  if(arfcn<=227)
+/*AD6548*/            {                                /* ARFCN : 186~227     */
+/*AD6548*/                *rfN = (((arfcn-186)*28+12)<<13) | 0x1206L /*(36L<<7|0x06L)*/;
+/*AD6548*/            }
+/*AD6548*/            else
+/*AD6548*/            {                              /* ARFCN : 228~251     */
+/*AD6548*/                *rfN = (((arfcn-228)*28+18)<<13) | 0x1286L /*(37L<<7|0x06L)*/;
+/*AD6548*/            }
+/*AD6548*/         }
+/*AD6548*/         break;
+/*AD6548*/      }
+/*AD6548*/      case  FrequencyBand900 :
+/*AD6548*/      {
+/*AD6548*/         if(arfcn<=62)
+/*AD6548*/         {  if(arfcn<=21)
+/*AD6548*/            {                                /* ARFCN : 0~21     */
+/*AD6548*/                *rfN = (((arfcn)*28+580)<<13) | 0x1506L /*(42L<<7|0x06L)*/;
+/*AD6548*/            }
+/*AD6548*/            else
+/*AD6548*/            {                              /* ARFCN : 22~62     */
+/*AD6548*/                *rfN = (((arfcn-22)*28+26)<<13) | 0x1586L /*(43L<<7|0x06L)*/;
+/*AD6548*/            }
+/*AD6548*/         }
+/*AD6548*/         else
+/*AD6548*/         {  if(arfcn<=124)
+/*AD6548*/            {   if(arfcn<=104)
+/*AD6548*/                {                                /* ARFCN : 63~104     */
+/*AD6548*/                   *rfN = (((arfcn-63)*28+4)<<13) | 0x1606L /*(44L<<7|0x06L)*/;
+/*AD6548*/                }
+/*AD6548*/                else
+/*AD6548*/                {                                /* ARFCN : 105~124     */
+/*AD6548*/                   *rfN = (((arfcn-105)*28+10)<<13) | 0x1686L /*(45L<<7|0x06L)*/;
+/*AD6548*/                }
+/*AD6548*/            }
+/*AD6548*/            else
+/*AD6548*/            {  if(arfcn<=1003)
+/*AD6548*/                {                                /* ARFCN : 975~1003     */
+/*AD6548*/                   *rfN = (((arfcn-975)*28+378)<<13) | 0x1486L /*(41L<<7|0x06L)*/;
+/*AD6548*/                }
+/*AD6548*/                else
+/*AD6548*/                {                                /* ARFCN : 1004~1023     */
+/*AD6548*/                   *rfN = (((arfcn-1004)*28+20)<<13) | 0x1506L /*(42L<<7|0x06L)*/;
+/*AD6548*/                }
+/*AD6548*/            }
+/*AD6548*/         }
+/*AD6548*/         break;
+/*AD6548*/      }
+/*AD6548*/      case  FrequencyBand1800 :
+/*AD6548*/      {
+/*AD6548*/         if(arfcn<=694)
+/*AD6548*/         {  if(arfcn<=605)
+/*AD6548*/            { if(arfcn<=517)
+/*AD6548*/              {                                /* ARFCN : 512~517     */
+/*AD6548*/                *rfN = (((arfcn-512)*14+1154)<<13) | 0x1006L /*(32L<<7|0x06L)*/;
+/*AD6548*/              }
+/*AD6548*/              else
+/*AD6548*/              {                                /* ARFCN : 518~605     */
+/*AD6548*/                *rfN = (((arfcn-518)*14+3)<<13) | 0x1086L /*(33L<<7|0x06L)*/;
+/*AD6548*/              }
+/*AD6548*/            }
+/*AD6548*/            else
+/*AD6548*/            {                                  /* ARFCN : 606~694     */
+/*AD6548*/                *rfN = (((arfcn-606)*14)<<13) | 0x1106L /*(34L<<7|0x06L)*/;
+/*AD6548*/            }
+/*AD6548*/         }
+/*AD6548*/         else
+/*AD6548*/         {  if(arfcn<=782)
+/*AD6548*/            {                                  /* ARFCN : 695~782     */
+/*AD6548*/               *rfN = (((arfcn-695)*14+11)<<13) | 0x1186L /*(35L<<7|0x06L)*/;
+/*AD6548*/            }
+/*AD6548*/            else
+/*AD6548*/            { if(arfcn<=870)
+/*AD6548*/              {                               /* ARFCN : 783~870     */
+/*AD6548*/                *rfN = (((arfcn-783)*14+8)<<13) | 0x1206L /*(36L<<7|0x06L)*/;
+/*AD6548*/              }
+/*AD6548*/              else
+/*AD6548*/              {                                /* ARFCN : 871~885     */
+/*AD6548*/                *rfN = (((arfcn-871)*14+5)<<13) | 0x1286L /*(37L<<7|0x06L)*/;
+/*AD6548*/              }
+/*AD6548*/            }
+/*AD6548*/         }
+/*AD6548*/         break;
+/*AD6548*/      }
+/*AD6548*/      case  FrequencyBand1900 :
+/*AD6548*/      {
+/*AD6548*/         if(arfcn<=699)
+/*AD6548*/         {  if(arfcn<=611)
+/*AD6548*/            { if(arfcn<=523)
+/*AD6548*/              {                                /* ARFCN : 512~523     */
+/*AD6548*/                *rfN = (((arfcn-512)*14+1074)<<13) | 0x1406L /*(40L<<7|0x06L)*/;
+/*AD6548*/              }
+/*AD6548*/              else
+/*AD6548*/              {                                /* ARFCN : 524~611     */
+/*AD6548*/                *rfN = (((arfcn-524)*14+7)<<13) | 0x1486L /*(41L<<7|0x06L)*/;
+/*AD6548*/              }
+/*AD6548*/            }
+/*AD6548*/            else
+/*AD6548*/            {                                  /* ARFCN : 612~699     */
+/*AD6548*/                *rfN = (((arfcn-612)*14+4)<<13) | 0x1506L /*(42L<<7|0x06L)*/;
+/*AD6548*/            }
+/*AD6548*/         }
+/*AD6548*/         else
+/*AD6548*/         {  if(arfcn<=788)
+/*AD6548*/            {                                  /* ARFCN : 700~788     */
+/*AD6548*/                *rfN = (((arfcn-700)*14+1)<<13) | 0x1586L /*(43L<<7|0x06L)*/;
+/*AD6548*/            }
+/*AD6548*/            else
+/*AD6548*/            {                                  /* ARFCN : 789~810     */
+/*AD6548*/                *rfN = (((arfcn-789)*14+12)<<13) | 0x1606L /*(44L<<7|0x06L)*/;
+/*AD6548*/            }
+/*AD6548*/         }
+/*AD6548*/         break;
+/*AD6548*/      }
+/*AD6548*/      default :
+/*AD6548*/      {
+/*AD6548*/         break;
+/*AD6548*/      }
+/*AD6548*/   }
+/*AD6548*/   *ifN = 0;
+/*AD6548*/}
+/*AD6548*//* ========================================================================== */
+#endif
+
+#if IS_RF_AD6546
+/*AD6546*/void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*AD6546*/{
+/*AD6546*/   switch(rf_band)
+/*AD6546*/   {
+/*AD6546*/      case  FrequencyBand850 :
+/*AD6546*/      {
+/*AD6546*/         if(arfcn<=201)
+/*AD6546*/         {  if(arfcn<=158)
+/*AD6546*/            {                                /* ARFCN : 128~158     */
+/*AD6546*/                *rfN = (((arfcn-128)*24 + 304)<<13) | 0x1206L /*(36L<<7|0x06L)*/;
+/*AD6546*/            }
+/*AD6546*/            else
+/*AD6546*/            {                              /* ARFCN : 159~201     */
+/*AD6546*/                *rfN = (((arfcn-159)*24 + 8)<<13) | 0x1286L /*(37L<<7|0x06L)*/;
+/*AD6546*/            }
+/*AD6546*/         }
+/*AD6546*/         else
+/*AD6546*/         {  if(arfcn<=245)
+/*AD6546*/            {                                /* ARFCN : 202~245     */
+/*AD6546*/                *rfN = (((arfcn-202)*24 )<<13) | 0x1306L /*(38L<<7|0x06L)*/;
+/*AD6546*/            }
+/*AD6546*/            else
+/*AD6546*/            {                              /* ARFCN : 246~251     */
+/*AD6546*/                *rfN = (((arfcn-246)*24+16)<<13) | 0x1386L /*(39L<<7|0x06L)*/;
+/*AD6546*/            }
+/*AD6546*/         }
+/*AD6546*/         break;
+/*AD6546*/      }
+/*AD6546*/      case  FrequencyBand900 :
+/*AD6546*/      {
+/*AD6546*/         if(arfcn<=48)
+/*AD6546*/         {  if(arfcn<=4)
+/*AD6546*/            {                                /* ARFCN : 0~4     */
+/*AD6546*/                *rfN = (((arfcn)*24+920 )<<13) | 0x1586L /*(43L<<7|0x06L)*/;
+/*AD6546*/            }
+/*AD6546*/            else
+/*AD6546*/            {                              /* ARFCN : 5~48     */
+/*AD6546*/                *rfN = (((arfcn-5)*24 )<<13) | 0x1606L /*(44L<<7|0x06L)*/;
+/*AD6546*/            }
+/*AD6546*/         }
+/*AD6546*/         else
+/*AD6546*/         {  if(arfcn<=124)
+/*AD6546*/            {   if(arfcn<=91)
+/*AD6546*/                {                                /* ARFCN : 49~91     */
+/*AD6546*/                   *rfN = (((arfcn-49)*24+16)<<13) | 0x1686L /*(45L<<7|0x06L)*/;
+/*AD6546*/                }
+/*AD6546*/                else
+/*AD6546*/                {                                /* ARFCN : 92~124     */
+/*AD6546*/                   *rfN = (((arfcn-92)*24+8 )<<13) | 0x1706L /*(46L<<7|0x06L)*/;
+/*AD6546*/                }
+/*AD6546*/            }
+/*AD6546*/            else
+/*AD6546*/            {  if(arfcn<=985)
+/*AD6546*/                {                                /* ARFCN : 975~985     */
+/*AD6546*/                   *rfN = (((arfcn-975)*24+784)<<13) | 0x1506L /*(42L<<7|0x06L)*/;
+/*AD6546*/                }
+/*AD6546*/                else
+/*AD6546*/                {                                /* ARFCN : 986~1023     */
+/*AD6546*/                   *rfN = (((arfcn-986)*24+8 )<<13) | 0x1586L /*(43L<<7|0x06L)*/;
+/*AD6546*/                }
+/*AD6546*/            }
+/*AD6546*/         }
+/*AD6546*/         break;
+/*AD6546*/      }
+/*AD6546*/      case  FrequencyBand1800 :
+/*AD6546*/      {
+/*AD6546*/         if(arfcn<=672)
+/*AD6546*/         {  if(arfcn<=585)
+/*AD6546*/            {                                /* ARFCN : 512~585     */
+/*AD6546*/                *rfN = (((arfcn-512)*12+152)<<13) | 0x1406L /*(40L<<7|0x06L)*/;
+/*AD6546*/            }
+/*AD6546*/            else
+/*AD6546*/            {                                /* ARFCN : 586~672     */
+/*AD6546*/                *rfN = (((arfcn-586)*12)<<13) | 0x1486L /*(41L<<7|0x06L)*/;
+/*AD6546*/            }
+/*AD6546*/         }
+/*AD6546*/         else
+/*AD6546*/         {  if(arfcn<=759)
+/*AD6546*/            {                                 /* ARFCN : 673~759     */
+/*AD6546*/               *rfN = (((arfcn-673)*12+4)<<13) | 0x1506L /*(42L<<7|0x06L)*/;
+/*AD6546*/            }
+/*AD6546*/            else
+/*AD6546*/            { if(arfcn<=845)
+/*AD6546*/              {                               /* ARFCN : 760~845     */
+/*AD6546*/                *rfN = (((arfcn-760)*12+8)<<13) | 0x1586L /*(43L<<7|0x06L)*/;
+/*AD6546*/              }
+/*AD6546*/              else
+/*AD6546*/              {                                /* ARFCN : 846~885     */
+/*AD6546*/                *rfN = (((arfcn-846)*12)<<13) | 0x1606L /*(44L<<7|0x06L)*/;
+/*AD6546*/              }
+/*AD6546*/            }
+/*AD6546*/         }
+/*AD6546*/         break;
+/*AD6546*/      }
+/*AD6546*/      case  FrequencyBand1900 :
+/*AD6546*/      {
+/*AD6546*/         if(arfcn<=654)
+/*AD6546*/         {  if(arfcn<=567)
+/*AD6546*/            {                                /* ARFCN : 512~567     */
+/*AD6546*/                *rfN = (((arfcn-512)*12+372)<<13) | 0x1786L /*(47L<<7|0x06L)*/;
+/*AD6546*/            }
+/*AD6546*/            else
+/*AD6546*/            {                                /* ARFCN : 568~654     */
+/*AD6546*/                *rfN = (((arfcn-568)*12+4)<<13) | 0x1806L /*(48L<<7|0x06L)*/;
+/*AD6546*/            }
+/*AD6546*/         }
+/*AD6546*/         else
+/*AD6546*/         {  if(arfcn<=740)
+/*AD6546*/            {                                /* ARFCN : 655~740     */
+/*AD6546*/                *rfN = (((arfcn-655)*12+8)<<13) | 0x1886L /*(49L<<7|0x06L)*/;
+/*AD6546*/            }
+/*AD6546*/            else
+/*AD6546*/            {                                /* ARFCN : 741~810     */
+/*AD6546*/                *rfN = (((arfcn-741)*12)<<13) | 0x1906L /*(50L<<7|0x06L)*/;
+/*AD6546*/            }
+/*AD6546*/         }
+/*AD6546*/         break;
+/*AD6546*/      }
+/*AD6546*/      default :
+/*AD6546*/      {
+/*AD6546*/         break;
+/*AD6546*/      }
+/*AD6546*/   }
+/*AD6546*/   *ifN = 0;
+/*AD6546*/}
+/*AD6546*//* ========================================================================== */
+/*AD6546*/
+/*AD6546*/void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*AD6546*/{
+/*AD6546*/   switch(rf_band)
+/*AD6546*/   {
+/*AD6546*/      case  FrequencyBand850 :
+/*AD6546*/      {
+/*AD6546*/         if(arfcn<=185)
+/*AD6546*/         {  if(arfcn<=143)
+/*AD6546*/            {                                /* ARFCN : 128~143     */
+/*AD6546*/                *rfN = (((arfcn-128)*28+728)<<13) | 0x1106L /*(34L<<7|0x06L)*/;
+/*AD6546*/            }
+/*AD6546*/            else
+/*AD6546*/            {                                /* ARFCN : 144~185     */
+/*AD6546*/                *rfN = (((arfcn-144)*28+6)<<13) | 0x1186L /*(35L<<7|0x06L)*/;
+/*AD6546*/            }
+/*AD6546*/         }
+/*AD6546*/         else
+/*AD6546*/         {  if(arfcn<=227)
+/*AD6546*/            {                                /* ARFCN : 186~227     */
+/*AD6546*/                *rfN = (((arfcn-186)*28+12)<<13) | 0x1206L /*(36L<<7|0x06L)*/;
+/*AD6546*/            }
+/*AD6546*/            else
+/*AD6546*/            {                              /* ARFCN : 228~251     */
+/*AD6546*/                *rfN = (((arfcn-228)*28+18)<<13) | 0x1286L /*(37L<<7|0x06L)*/;
+/*AD6546*/            }
+/*AD6546*/         }
+/*AD6546*/         break;
+/*AD6546*/      }
+/*AD6546*/      case  FrequencyBand900 :
+/*AD6546*/      {
+/*AD6546*/         if(arfcn<=62)
+/*AD6546*/         {  if(arfcn<=21)
+/*AD6546*/            {                                /* ARFCN : 0~21     */
+/*AD6546*/                *rfN = (((arfcn)*28+580)<<13) | 0x1506L /*(42L<<7|0x06L)*/;
+/*AD6546*/            }
+/*AD6546*/            else
+/*AD6546*/            {                              /* ARFCN : 22~62     */
+/*AD6546*/                *rfN = (((arfcn-22)*28+26)<<13) | 0x1586L /*(43L<<7|0x06L)*/;
+/*AD6546*/            }
+/*AD6546*/         }
+/*AD6546*/         else
+/*AD6546*/         {  if(arfcn<=124)
+/*AD6546*/            {   if(arfcn<=104)
+/*AD6546*/                {                                /* ARFCN : 63~104     */
+/*AD6546*/                   *rfN = (((arfcn-63)*28+4)<<13) | 0x1606L /*(44L<<7|0x06L)*/;
+/*AD6546*/                }
+/*AD6546*/                else
+/*AD6546*/                {                                /* ARFCN : 105~124     */
+/*AD6546*/                   *rfN = (((arfcn-105)*28+10)<<13) | 0x1686L /*(45L<<7|0x06L)*/;
+/*AD6546*/                }
+/*AD6546*/            }
+/*AD6546*/            else
+/*AD6546*/            {  if(arfcn<=1003)
+/*AD6546*/                {                                /* ARFCN : 975~1003     */
+/*AD6546*/                   *rfN = (((arfcn-975)*28+378)<<13) | 0x1486L /*(41L<<7|0x06L)*/;
+/*AD6546*/                }
+/*AD6546*/                else
+/*AD6546*/                {                                /* ARFCN : 1004~1023     */
+/*AD6546*/                   *rfN = (((arfcn-1004)*28+20)<<13) | 0x1506L /*(42L<<7|0x06L)*/;
+/*AD6546*/                }
+/*AD6546*/            }
+/*AD6546*/         }
+/*AD6546*/         break;
+/*AD6546*/      }
+/*AD6546*/      case  FrequencyBand1800 :
+/*AD6546*/      {
+/*AD6546*/         if(arfcn<=694)
+/*AD6546*/         {  if(arfcn<=605)
+/*AD6546*/            { if(arfcn<=517)
+/*AD6546*/              {                                /* ARFCN : 512~517     */
+/*AD6546*/                *rfN = (((arfcn-512)*14+1154)<<13) | 0x1006L /*(32L<<7|0x06L)*/;
+/*AD6546*/              }
+/*AD6546*/              else
+/*AD6546*/              {                                /* ARFCN : 518~605     */
+/*AD6546*/                *rfN = (((arfcn-518)*14+3)<<13) | 0x1086L /*(33L<<7|0x06L)*/;
+/*AD6546*/              }
+/*AD6546*/            }
+/*AD6546*/            else
+/*AD6546*/            {                                  /* ARFCN : 606~694     */
+/*AD6546*/                *rfN = (((arfcn-606)*14)<<13) | 0x1106L /*(34L<<7|0x06L)*/;
+/*AD6546*/            }
+/*AD6546*/         }
+/*AD6546*/         else
+/*AD6546*/         {  if(arfcn<=782)
+/*AD6546*/            {                                  /* ARFCN : 695~782     */
+/*AD6546*/               *rfN = (((arfcn-695)*14+11)<<13) | 0x1186L /*(35L<<7|0x06L)*/;
+/*AD6546*/            }
+/*AD6546*/            else
+/*AD6546*/            { if(arfcn<=870)
+/*AD6546*/              {                               /* ARFCN : 783~870     */
+/*AD6546*/                *rfN = (((arfcn-783)*14+8)<<13) | 0x1206L /*(36L<<7|0x06L)*/;
+/*AD6546*/              }
+/*AD6546*/              else
+/*AD6546*/              {                                /* ARFCN : 871~885     */
+/*AD6546*/                *rfN = (((arfcn-871)*14+5)<<13) | 0x1286L /*(37L<<7|0x06L)*/;
+/*AD6546*/              }
+/*AD6546*/            }
+/*AD6546*/         }
+/*AD6546*/         break;
+/*AD6546*/      }
+/*AD6546*/      case  FrequencyBand1900 :
+/*AD6546*/      {
+/*AD6546*/         if(arfcn<=699)
+/*AD6546*/         {  if(arfcn<=611)
+/*AD6546*/            { if(arfcn<=523)
+/*AD6546*/              {                                /* ARFCN : 512~523     */
+/*AD6546*/                *rfN = (((arfcn-512)*14+1074)<<13) | 0x1406L /*(40L<<7|0x06L)*/;
+/*AD6546*/              }
+/*AD6546*/              else
+/*AD6546*/              {                                /* ARFCN : 524~611     */
+/*AD6546*/                *rfN = (((arfcn-524)*14+7)<<13) | 0x1486L /*(41L<<7|0x06L)*/;
+/*AD6546*/              }
+/*AD6546*/            }
+/*AD6546*/            else
+/*AD6546*/            {                                  /* ARFCN : 612~699     */
+/*AD6546*/                *rfN = (((arfcn-612)*14+4)<<13) | 0x1506L /*(42L<<7|0x06L)*/;
+/*AD6546*/            }
+/*AD6546*/         }
+/*AD6546*/         else
+/*AD6546*/         {  if(arfcn<=788)
+/*AD6546*/            {                                  /* ARFCN : 700~788     */
+/*AD6546*/                *rfN = (((arfcn-700)*14+1)<<13) | 0x1586L /*(43L<<7|0x06L)*/;
+/*AD6546*/            }
+/*AD6546*/            else
+/*AD6546*/            {                                  /* ARFCN : 789~810     */
+/*AD6546*/                *rfN = (((arfcn-789)*14+12)<<13) | 0x1606L /*(44L<<7|0x06L)*/;
+/*AD6546*/            }
+/*AD6546*/         }
+/*AD6546*/         break;
+/*AD6546*/      }
+/*AD6546*/      default :
+/*AD6546*/      {
+/*AD6546*/         break;
+/*AD6546*/      }
+/*AD6546*/   }
+/*AD6546*/   *ifN = 0;
+/*AD6546*/}
+/*AD6546*//* ========================================================================== */
+#endif
+
+#if IS_RF_MT6162
+/*MT6162*/unsigned long  TX_N_FRAC_THRESHOLD_LB = 7356163; /* 7356163/2^23 = 0.876922965 */
+/*MT6162*/unsigned long  TX_N_FRAC_THRESHOLD_HB = 7485219; /* 7485219/2^23 = 0.892307639 */
+/*MT6162*/         short AFC_TRx_Offset_Threshold_LB = 30; /* the offset range in LB is -30Hz ~ +30Hz*/
+/*MT6162*/         short AFC_TRx_Offset_Threshold_HB = 60; /* the offset range in HB is -60Hz ~ +60Hz*/
+/*MT6162*/extern   short AFC_TRx_Offset[5];
+/*MT6162*/
+/*MT6162*//* rfN : 0x61, SRX_FREQ=>SRX_B[5:0],SRX_A[0] and SRX_FRAC[11:0] */
+/*MT6162*/void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6162*/{
+/*MT6162*/   int channelFrequency = 0;
+/*MT6162*/   int synthesizerFrequency = 0;
+/*MT6162*/   int N_INT;
+/*MT6162*/   int N_FRAC;
+/*MT6162*/
+/*MT6162*/   switch(rf_band)
+/*MT6162*/   {
+/*MT6162*/      case  FrequencyBand850 :
+/*MT6162*/      {  channelFrequency = 8242+2*(arfcn-128)+450; /* 824.2+0.2*(arfcn-128)+45 */
+/*MT6162*/         synthesizerFrequency = 4*channelFrequency;
+/*MT6162*/
+/*MT6162*/         if(arfcn<=201)
+/*MT6162*/         {  if(arfcn<=136)
+/*MT6162*/            {  /* ARFCN : 128~136 */
+/*MT6162*/               *rfN = ((arfcn-128)*32+1792) | (66<<12);
+/*MT6162*/            }
+/*MT6162*/            else
+/*MT6162*/            {  /* ARFCN : 137~201 */
+/*MT6162*/               *rfN = ((arfcn-137)*32) | (67<<12);
+/*MT6162*/            }
+/*MT6162*/         }
+/*MT6162*/         else
+/*MT6162*/         {  /* ARFCN : 202~251 */
+/*MT6162*/            *rfN = ((arfcn-202)*32) | (68<<12);
+/*MT6162*/         }
+/*MT6162*/         break;
+/*MT6162*/      }
+/*MT6162*/      case  FrequencyBand900 :
+/*MT6162*/      {
+/*MT6162*/		   if(arfcn<=124)
+/*MT6162*/		   {  channelFrequency = 8900+2*(arfcn)+450; /* 890+0.2*(arfcn)+45 */
+/*MT6162*/         }
+/*MT6162*/         else
+/*MT6162*/         {  channelFrequency = 8900+2*(arfcn-1024)+450; /* 890+0.2*(arfcn-1024)+45 */
+/*MT6162*/         }
+/*MT6162*/         synthesizerFrequency = 4*channelFrequency;
+/*MT6162*/
+/*MT6162*/         if(arfcn<=124)
+/*MT6162*/         {  if(arfcn<=69)
+/*MT6162*/            {  if(arfcn<=4)
+/*MT6162*/               {  /* ARFCN : 0~4 */
+/*MT6162*/                  *rfN = ((arfcn)*32+1920) | (71<<12);
+/*MT6162*/               }
+/*MT6162*/               else
+/*MT6162*/               {  /* ARFCN : 5~69 */
+/*MT6162*/                  *rfN = ((arfcn-5)*32) | (72<<12);
+/*MT6162*/               }
+/*MT6162*/            }
+/*MT6162*/            else
+/*MT6162*/            {  /* ARFCN : 70~124 */
+/*MT6162*/               *rfN = ((arfcn-70)*32) | (73<<12);
+/*MT6162*/            }
+/*MT6162*/         }
+/*MT6162*/         else
+/*MT6162*/         {  /* ARFCN : 975~1023 */
+/*MT6162*/            *rfN = ((arfcn-975)*32+352) | (71<<12);
+/*MT6162*/         }
+/*MT6162*/         break;
+/*MT6162*/      }
+/*MT6162*/      case  FrequencyBand1800 :
+/*MT6162*/      {
+/*MT6162*/         channelFrequency = 17102+2*(arfcn-512)+950; /* 1710.2+0.2*(arfcn-512)+95 */
+/*MT6162*/         synthesizerFrequency = 2*channelFrequency;
+/*MT6162*/
+/*MT6162*/         if(arfcn<=715)
+/*MT6162*/         {  if(arfcn<=585)
+/*MT6162*/            {  /* ARFCN : 512~585 */
+/*MT6162*/               *rfN = ((arfcn-512)*16+896) | (69<<12);
+/*MT6162*/            }
+/*MT6162*/            else
+/*MT6162*/            {  /* ARFCN : 586~715 */
+/*MT6162*/               *rfN = ((arfcn-586)*16) | (70<<12);
+/*MT6162*/            }
+/*MT6162*/         }
+/*MT6162*/         else
+/*MT6162*/         {  if(arfcn<=845)
+/*MT6162*/            {  /* ARFCN : 716~845 */
+/*MT6162*/               *rfN = ((arfcn-716)*16) | (71<<12);
+/*MT6162*/            }
+/*MT6162*/            else
+/*MT6162*/            {  /* ARFCN : 846~885 */
+/*MT6162*/               *rfN = ((arfcn-846)*16) | (72<<12);
+/*MT6162*/            }
+/*MT6162*/         }
+/*MT6162*/         break;
+/*MT6162*/      }
+/*MT6162*/      case  FrequencyBand1900 :
+/*MT6162*/      {
+/*MT6162*/         channelFrequency = 18502+2*(arfcn-512)+800; /* 1850.2+0.2*(arfcn-512)+80 */
+/*MT6162*/         synthesizerFrequency = 2*channelFrequency;
+/*MT6162*/
+/*MT6162*/         if(arfcn<=740)
+/*MT6162*/         {  if(arfcn<=610)
+/*MT6162*/            {  /* ARFCN : 512~610 */
+/*MT6162*/               *rfN = ((arfcn-512)*16+496) | (74<<12);
+/*MT6162*/            }
+/*MT6162*/            else
+/*MT6162*/            {  /* ARFCN : 611~740 */
+/*MT6162*/               *rfN = ((arfcn-611)*16) | (75<<12);
+/*MT6162*/            }
+/*MT6162*/         }
+/*MT6162*/         else
+/*MT6162*/         {  /* ARFCN : 741~810 */
+/*MT6162*/            *rfN = ((arfcn-741)*16) | (76<<12);
+/*MT6162*/         }
+/*MT6162*/         break;
+/*MT6162*/      }
+/*MT6162*/   }
+/*MT6162*/   N_INT = synthesizerFrequency/520;
+/*MT6162*/   N_FRAC = ((synthesizerFrequency-520*N_INT)*2080) / 520;
+/*MT6162*/   *rfN = (N_FRAC&0xFFF) | ((N_INT&0x7F)<<12);
+/*MT6162*/}
+/*MT6162*//* ========================================================================== */
+/*MT6162*/
+/*MT6162*//* rfN : 0x01, CW1=>N_INT[7:0] and N_FRAC[ 9: 0] */
+/*MT6162*//* irN : 0x02, CW2=>               N_FRAC[22:10] */
+/*MT6162*/void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6162*/{
+/*MT6162*/   int channelFrequency = 0;
+/*MT6162*/   int synthesizerFrequency = 0;
+/*MT6162*/   int N_INT;
+/*MT6162*/   int N_FRAC;
+/*MT6162*/   int TRx_Offset_value;
+/*MT6162*/
+/*MT6162*/   l1d_rf2.arfcn = arfcn;  //for L1D_RF_SetTxGainWrite()
+/*MT6162*/
+/*MT6162*/   switch(rf_band)
+/*MT6162*/   {
+/*MT6162*/      case  FrequencyBand850 :
+/*MT6162*/      {
+/*MT6162*/         channelFrequency = 8242+2*(arfcn-128); /* 824.2+0.2*(arfcn-128) */
+/*MT6162*/         synthesizerFrequency = 4*channelFrequency;
+/*MT6162*/
+/*MT6162*/         if(arfcn<=199)
+/*MT6162*/         {  if(arfcn<=166)
+/*MT6162*/            {  if(arfcn<=134)
+/*MT6162*/               {  /* ARFCN : 128~134 */
+/*MT6162*/                  *rfN = (((arfcn-128)*258111+6710886)&0x3FF) | (126<<10);
+/*MT6162*/                  *ifN = (((arfcn-128)*258111+6710886)>>10)&0x1FFF;
+/*MT6162*/               }
+/*MT6162*/               else
+/*MT6162*/               {  /* ARFCN : 135~166 */
+/*MT6162*/                  *rfN = (((arfcn-135)*258111+129055)&0x3FF) | (127<<10);
+/*MT6162*/                  *ifN = (((arfcn-135)*258111+129055)>>10)&0x1FFF;
+/*MT6162*/               }
+/*MT6162*/            }
+/*MT6162*/            else
+/*MT6162*/            {  /* ARFCN : 167~199 */
+/*MT6162*/               *rfN = (((arfcn-167)*258111)&0x3FF) | (128<<10);
+/*MT6162*/               *ifN = (((arfcn-167)*258111)>>10)&0x1FFF;
+/*MT6162*/            }
+/*MT6162*/         }
+/*MT6162*/         else
+/*MT6162*/         {  if(arfcn<=231)
+/*MT6162*/            {  /* ARFCN : 200~231 */
+/*MT6162*/               *rfN = (((arfcn-200)*258111+129055)&0x3FF) | (129<<10);
+/*MT6162*/               *ifN = (((arfcn-200)*258111+129055)>>10)&0x1FFF;
+/*MT6162*/            }
+/*MT6162*/            else
+/*MT6162*/            {  /* ARFCN : 232~251 */
+/*MT6162*/               *rfN = (((arfcn-232)*258111)&0x3FF) | (130<<10);
+/*MT6162*/               *ifN = (((arfcn-232)*258111)>>10)&0x1FFF;
+/*MT6162*/            }
+/*MT6162*/         }
+/*MT6162*/         break;
+/*MT6162*/      }
+/*MT6162*/      case  FrequencyBand900 :
+/*MT6162*/      {  if(arfcn<=124)
+/*MT6162*/		   {  channelFrequency = 8900+2*(arfcn); /* 890+0.2*(arfcn) */
+/*MT6162*/         }
+/*MT6162*/         else
+/*MT6162*/         {  channelFrequency = 8900+2*(arfcn-1024); /* 890+0.2*(arfcn-1024) */
+/*MT6162*/         }
+/*MT6162*/         synthesizerFrequency = 4*channelFrequency;
+/*MT6162*/
+/*MT6162*/         if(arfcn<=124)
+/*MT6162*/         {  if(arfcn<=67)
+/*MT6162*/            {  if(arfcn<=34)
+/*MT6162*/               {  if(arfcn<=2)
+/*MT6162*/                  {  /* ARFCN : 0~2 */
+/*MT6162*/                     *rfN = (((arfcn-0)*258111+7743330)&0x3FF) | (136<<10);
+/*MT6162*/                     *ifN = (((arfcn-0)*258111+7743330)>>10)&0x1FFF;
+/*MT6162*/                  }
+/*MT6162*/                  else
+/*MT6162*/                  {  /* ARFCN : 3~34 */
+/*MT6162*/                     *rfN = (((arfcn-3)*258111+129055)&0x3FF) | (137<<10);
+/*MT6162*/                     *ifN = (((arfcn-3)*258111+129055)>>10)&0x1FFF;
+/*MT6162*/                  }
+/*MT6162*/               }
+/*MT6162*/               else
+/*MT6162*/               {  /* ARFCN : 35~67 */
+/*MT6162*/                  *rfN = (((arfcn-35)*258111)&0x3FF) | (138<<10);
+/*MT6162*/                  *ifN = (((arfcn-35)*258111)>>10)&0x1FFF;
+/*MT6162*/               }
+/*MT6162*/            }
+/*MT6162*/            else
+/*MT6162*/            {	 if(arfcn<=99)
+/*MT6162*/               {  /* ARFCN : 68~99 */
+/*MT6162*/                  *rfN = (((arfcn-68)*258111+129055)&0x3FF) | (139<<10);
+/*MT6162*/                  *ifN = (((arfcn-68)*258111+129055)>>10)&0x1FFF;
+/*MT6162*/               }
+/*MT6162*/               else
+/*MT6162*/               {  /* ARFCN : 100~124 */
+/*MT6162*/                  *rfN = (((arfcn-100)*258111)&0x3FF) | (140<<10);
+/*MT6162*/                  *ifN = (((arfcn-100)*258111)>>10)&0x1FFF;
+/*MT6162*/               }
+/*MT6162*/            }
+/*MT6162*/         }
+/*MT6162*/         else
+/*MT6162*/         {  if(arfcn<=993)
+/*MT6162*/            {   /* ARFCN : 975~993 */
+/*MT6162*/                *rfN = (((arfcn-975)*258111+3484498)&0x3FF) | (135<<10);
+/*MT6162*/                *ifN = (((arfcn-975)*258111+3484498)>>10)&0x1FFF;
+/*MT6162*/            }
+/*MT6162*/            else
+/*MT6162*/            {   /* ARFCN : 994~1023 */
+/*MT6162*/                *rfN = (((arfcn-994)*258111)&0x3FF) | (136<<10);
+/*MT6162*/                *ifN = (((arfcn-994)*258111)>>10)&0x1FFF;
+/*MT6162*/            }
+/*MT6162*/         }
+/*MT6162*/         break;
+/*MT6162*/      }
+/*MT6162*/      case  FrequencyBand1800 :
+/*MT6162*/      {
+/*MT6162*/         channelFrequency = 17102+2*(arfcn-512); /* 1710.2+0.2*(arfcn-512) */
+/*MT6162*/         synthesizerFrequency = 2*channelFrequency;
+/*MT6162*/
+/*MT6162*/         if(arfcn<=735)
+/*MT6162*/         {  if(arfcn<=670)
+/*MT6162*/            {  if(arfcn<=605)
+/*MT6162*/               {  if(arfcn<=540)
+/*MT6162*/                  {  /* ARFCN : 512~540 */
+/*MT6162*/                     *rfN = (((arfcn-512)*129055+4645998+(arfcn-512)/2)&0x3FF) | (131<<10);
+/*MT6162*/                     *ifN = (((arfcn-512)*129055+4645998+(arfcn-512)/2)>>10)&0x1FFF;
+/*MT6162*/                  }
+/*MT6162*/                  else
+/*MT6162*/                  {  /* ARFCN : 541~605 */
+/*MT6162*/                     *rfN = (((arfcn-541)*129055+(arfcn-541)/2)&0x3FF) | (132<<10);
+/*MT6162*/                     *ifN = (((arfcn-541)*129055+(arfcn-541)/2)>>10)&0x1FFF;
+/*MT6162*/                  }
+/*MT6162*/               }
+/*MT6162*/               else
+/*MT6162*/               {  /* ARFCN : 606~670 */
+/*MT6162*/                  *rfN = (((arfcn-606)*129055+(arfcn-606)/2)&0x3FF) | (133<<10);
+/*MT6162*/                  *ifN = (((arfcn-606)*129055+(arfcn-606)/2)>>10)&0x1FFF;
+/*MT6162*/               }
+/*MT6162*/            }
+/*MT6162*/            else
+/*MT6162*/            {   /* ARFCN : 671~735 */
+/*MT6162*/                *rfN = (((arfcn-671)*129055+(arfcn-671)/2)&0x3FF) | (134<<10);
+/*MT6162*/                *ifN = (((arfcn-671)*129055+(arfcn-671)/2)>>10)&0x1FFF;
+/*MT6162*/            }
+/*MT6162*/         }
+/*MT6162*/         else
+/*MT6162*/         {  if(arfcn<=865)
+/*MT6162*/            {  if(arfcn<=800)
+/*MT6162*/               {  /* ARFCN : 736~800 */
+/*MT6162*/                  *rfN = (((arfcn-736)*129055+(arfcn-736)/2)&0x3FF) | (135<<10);
+/*MT6162*/                  *ifN = (((arfcn-736)*129055+(arfcn-736)/2)>>10)&0x1FFF;
+/*MT6162*/               }
+/*MT6162*/               else
+/*MT6162*/               {  /* ARFCN : 801~865 */
+/*MT6162*/                  *rfN = (((arfcn-801)*129055+(arfcn-801)/2)&0x3FF) | (136<<10);
+/*MT6162*/                  *ifN = (((arfcn-801)*129055+(arfcn-801)/2)>>10)&0x1FFF;
+/*MT6162*/               }
+/*MT6162*/            }
+/*MT6162*/            else
+/*MT6162*/            {  /* ARFCN : 866~885 */
+/*MT6162*/               *rfN = (((arfcn-866)*129055+(arfcn-866)/2)&0x3FF) | (137<<10);
+/*MT6162*/               *ifN = (((arfcn-866)*129055+(arfcn-866)/2)>>10)&0x1FFF;
+/*MT6162*/            }
+/*MT6162*/         }
+/*MT6162*/         break;
+/*MT6162*/      }
+/*MT6162*/      case  FrequencyBand1900 :
+/*MT6162*/      {
+/*MT6162*/         channelFrequency = 18502+2*(arfcn-512); /* 1850.2+0.2*(arfcn-512) */
+/*MT6162*/         synthesizerFrequency = 2*channelFrequency;
+/*MT6162*/
+/*MT6162*/         if(arfcn<=685)
+/*MT6162*/         {  if(arfcn<=620)
+/*MT6162*/            {  if(arfcn<=555)
+/*MT6162*/               {  /* ARFCN : 512~555 */
+/*MT6162*/                  *rfN = (((arfcn-512)*129056+2710165-(arfcn-512)/2)&0x3FF) | (142<<10);
+/*MT6162*/                  *ifN = (((arfcn-512)*129056+2710165-(arfcn-512)/2)>>10)&0x1FFF;
+/*MT6162*/               }
+/*MT6162*/               else
+/*MT6162*/               {  /* ARFCN : 556~620 */
+/*MT6162*/                  *rfN = (((arfcn-556)*129055+(arfcn-556)/2)&0x3FF) | (143<<10);
+/*MT6162*/                  *ifN = (((arfcn-556)*129055+(arfcn-556)/2)>>10)&0x1FFF;
+/*MT6162*/               }
+/*MT6162*/            }
+/*MT6162*/            else
+/*MT6162*/            {   /* ARFCN : 621~685 */
+/*MT6162*/                *rfN = (((arfcn-621)*129055+(arfcn-621)/2)&0x3FF) | (144<<10);
+/*MT6162*/                *ifN = (((arfcn-621)*129055+(arfcn-621)/2)>>10)&0x1FFF;
+/*MT6162*/            }
+/*MT6162*/         }
+/*MT6162*/         else
+/*MT6162*/         {  if(arfcn<=750)
+/*MT6162*/            {  /* ARFCN : 686~750 */
+/*MT6162*/               *rfN = (((arfcn-686)*129055+(arfcn-686)/2)&0x3FF) | (145<<10);
+/*MT6162*/               *ifN = (((arfcn-686)*129055+(arfcn-686)/2)>>10)&0x1FFF;
+/*MT6162*/            }
+/*MT6162*/            else
+/*MT6162*/            {  /* ARFCN : 751~810 */
+/*MT6162*/               *rfN = (((arfcn-751)*129055+(arfcn-751)/2)&0x3FF) | (146<<10);
+/*MT6162*/               *ifN = (((arfcn-751)*129055+(arfcn-751)/2)>>10)&0x1FFF;
+/*MT6162*/            }
+/*MT6162*/         }
+/*MT6162*/         break;
+/*MT6162*/      }
+/*MT6162*/   }
+/*MT6162*/   N_INT = synthesizerFrequency/260;
+/*MT6162*/   N_FRAC = ((synthesizerFrequency-260*N_INT)<<21) / 65; /* ((synthesizerFrequency-260*N_INT)<<23) / 260 */
+/*MT6162*/
+/*MT6162*/   if( L1D_RF_Get6162Version() == 1 )
+/*MT6162*/   {  /* for OH E1, do nothing */  }
+/*MT6162*/   else
+/*MT6162*/   {  /* for OH E2 */
+/*MT6162*/      l1d_rf2.is_integer = (N_FRAC == 0) ? 1 : 0;
+/*MT6162*/      if( rf_band <= FrequencyBand900 )
+/*MT6162*/      {  l1d_rf2.is_isotpol = (N_FRAC > TX_N_FRAC_THRESHOLD_LB) ? 1 : 0;  }
+/*MT6162*/      else
+/*MT6162*/      {  l1d_rf2.is_isotpol = (N_FRAC > TX_N_FRAC_THRESHOLD_HB) ? 1 : 0;  }
+/*MT6162*/   }
+/*MT6162*/   
+/*MT6162*/   if( rf_band <= FrequencyBand900 )
+/*MT6162*/   {
+/*MT6162*/      if( AFC_TRx_Offset[rf_band] > AFC_TRx_Offset_Threshold_LB )
+/*MT6162*/      {  TRx_Offset_value = (int)((AFC_TRx_Offset_Threshold_LB*258111)/200000);  }
+/*MT6162*/      else if( AFC_TRx_Offset[rf_band] < (-AFC_TRx_Offset_Threshold_LB) )
+/*MT6162*/      {  TRx_Offset_value = (int)(((-AFC_TRx_Offset_Threshold_LB)*258111)/200000);  }
+/*MT6162*/      else
+/*MT6162*/      {  TRx_Offset_value = (int)((AFC_TRx_Offset[rf_band]*258111)/200000);  }
+/*MT6162*/   }
+/*MT6162*/   else
+/*MT6162*/   {
+/*MT6162*/      if( AFC_TRx_Offset[rf_band] > AFC_TRx_Offset_Threshold_HB )
+/*MT6162*/      {  TRx_Offset_value = (int)((AFC_TRx_Offset_Threshold_HB*129055)/200000);  }
+/*MT6162*/      else if( AFC_TRx_Offset[rf_band] < (-AFC_TRx_Offset_Threshold_HB) )
+/*MT6162*/      {  TRx_Offset_value = (int)(((-AFC_TRx_Offset_Threshold_HB)*129055)/200000);  }
+/*MT6162*/      else
+/*MT6162*/      {  TRx_Offset_value = (int)((AFC_TRx_Offset[rf_band]*129055)/200000);  }
+/*MT6162*/   }
+/*MT6162*/
+/*MT6162*/   if( N_FRAC == 0 )
+/*MT6162*/   {
+/*MT6162*/      if( TRx_Offset_value >= 0 )
+/*MT6162*/      {  N_FRAC += TRx_Offset_value;  }
+/*MT6162*/      else
+/*MT6162*/      {
+/*MT6162*/         N_INT  -= 1;
+/*MT6162*/         N_FRAC  = 8388608+TRx_Offset_value; /* 2^23 = 8388608 */
+/*MT6162*/      }
+/*MT6162*/   }
+/*MT6162*/   else
+/*MT6162*/   {  N_FRAC += TRx_Offset_value;  }
+/*MT6162*/
+/*MT6162*/   *rfN = (N_FRAC&0x3FF) | ((N_INT&0xFF)<<10);
+/*MT6162*/   *ifN = (N_FRAC>>10)&0x1FFF;
+/*MT6162*/}
+/*MT6162*//* ========================================================================== */
+#endif
+
+#if IS_RF_MT6163
+/*MT6163*/  /* rfN : 0x01, CW1=>N_INT[7:0] and N_FRAC[ 9: 0] */
+/*MT6163*/  /* irN : 0x02, CW2=>               N_FRAC[22:10] */
+/*MT6163*/
+/*MT6163*/  #define TX_NEAR_INT_N_FRAC_MIN  167772
+/*MT6163*/  #define TX_NEAR_INT_N_FRAC_MAX  754974
+/*MT6163*/  #define N_FRAC_DIFF_200KHZ_LB   258111    /* LB N_FRAC difference of neighboring ARFCN (200KHz) */
+/*MT6163*/  #define N_FRAC_DIFF_200KHZ_HB   129055    /* HB N_FRAC difference of neighboring ARFCN (200KHz) */
+/*MT6163*/  #define N_FRAC_MIN              0
+/*MT6163*/  #define N_FRAC_MAX              8388608   /* 2^23 */
+/*MT6163*/  #define AFC_TRX_OFFSET_BOUND_LB 30        /* offset range in LB is -30Hz ~ +30Hz */
+/*MT6163*/  #define AFC_TRX_OFFSET_BOUND_HB 60        /* offset range in HB is -60Hz ~ +60Hz */
+/*MT6163*/  #define CW2_DFM_SDM_IFM_ON_SET  (0x1<<13)
+/*MT6163*/
+/*MT6163*/  extern short AFC_TRx_Offset[FrequencyBandCount];
+/*MT6163*/
+/*MT6163*/  static void L1D_RF_ComputeTxPLLFreq( char is_Rx, int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6163*/  {
+/*MT6163*/     int   channelFrequency     = 0;
+/*MT6163*/     int   synthesizerFrequency = 0;
+/*MT6163*/     int   N_INT, N_FRAC, frac_diff;
+/*MT6163*/     short trx_offset_bound;
+/*MT6163*/     char  int_mask             = 0x1<<is_Rx;   /* bit1: RX, bit0: TX */
+/*MT6163*/     unsigned long sdm          = 0;
+/*MT6163*/
+/*MT6163*/     if( is_Rx )
+/*MT6163*/     {  /* Add freq offset of RX/TX at the same ARFCN */
+/*MT6163*/        switch( rf_band )
+/*MT6163*/        {
+/*MT6163*/           case FrequencyBand850:
+/*MT6163*/           case FrequencyBand900:
+/*MT6163*/           {
+/*MT6163*/              channelFrequency = 450;  /* 45 MHz */
+/*MT6163*/              break;
+/*MT6163*/           }
+/*MT6163*/           case FrequencyBand1800:
+/*MT6163*/           {
+/*MT6163*/              channelFrequency = 950;  /* 95 MHz */
+/*MT6163*/              break;
+/*MT6163*/           }
+/*MT6163*/           case FrequencyBand1900:
+/*MT6163*/           {
+/*MT6163*/              channelFrequency = 800;  /* 80 MHz */
+/*MT6163*/              break;
+/*MT6163*/           }
+/*MT6163*/        }
+/*MT6163*/     }
+/*MT6163*/
+/*MT6163*/     switch( rf_band )
+/*MT6163*/     {
+/*MT6163*/        case FrequencyBand850:
+/*MT6163*/        {
+/*MT6163*/           channelFrequency += (8242 + 2*(arfcn-128));        /*  824.2 + 0.2*(arfcn-128)   */
+/*MT6163*/           synthesizerFrequency = 4*channelFrequency;
+/*MT6163*/           break;
+/*MT6163*/        }
+/*MT6163*/        case FrequencyBand900:
+/*MT6163*/        {
+/*MT6163*/           if(arfcn<=124)
+/*MT6163*/           {  channelFrequency += (8900 + 2*(arfcn));      }  /*  890.0 + 0.2*(arfcn)       */
+/*MT6163*/           else
+/*MT6163*/           {  channelFrequency += (8900 + 2*(arfcn-1024)); }  /*  890.0 + 0.2*(arfcn-1024)  */
+/*MT6163*/           synthesizerFrequency = 4*channelFrequency;
+/*MT6163*/           break;
+/*MT6163*/        }
+/*MT6163*/        case FrequencyBand1800:
+/*MT6163*/        {
+/*MT6163*/           channelFrequency += (17102 + 2*(arfcn-512));       /* 1710.2 + 0.2*(arfcn-512)   */
+/*MT6163*/           synthesizerFrequency = 2*channelFrequency;
+/*MT6163*/           break;
+/*MT6163*/        }
+/*MT6163*/        case FrequencyBand1900:
+/*MT6163*/        {
+/*MT6163*/           channelFrequency += (18502 + 2*(arfcn-512));       /* 1850.2 + 0.2*(arfcn-512)   */
+/*MT6163*/           synthesizerFrequency = 2*channelFrequency;
+/*MT6163*/           break;
+/*MT6163*/        }
+/*MT6163*/     }
+/*MT6163*/
+/*MT6163*/     N_INT = synthesizerFrequency/260;
+/*MT6163*/     N_FRAC = ((synthesizerFrequency - 260*N_INT)<<21) / 65;  /* ((synthesizerFrequency-260*N_INT)<<23) / 260 */
+/*MT6163*/
+/*MT6163*/     /* add TRX offset */
+/*MT6163*/     if( is_Rx )
+/*MT6163*/     {  /* do nothing for RX */ }
+/*MT6163*/     else
+/*MT6163*/     {
+/*MT6163*/        if( rf_band <= FrequencyBand900 )
+/*MT6163*/        {
+/*MT6163*/           trx_offset_bound = AFC_TRX_OFFSET_BOUND_LB;
+/*MT6163*/           frac_diff        = N_FRAC_DIFF_200KHZ_LB;
+/*MT6163*/        }
+/*MT6163*/        else
+/*MT6163*/        {
+/*MT6163*/           trx_offset_bound = AFC_TRX_OFFSET_BOUND_HB;
+/*MT6163*/           frac_diff        = N_FRAC_DIFF_200KHZ_HB;
+/*MT6163*/        }
+/*MT6163*/
+/*MT6163*/        if( AFC_TRx_Offset[rf_band] > trx_offset_bound )
+/*MT6163*/        {  AFC_TRx_Offset[rf_band] = trx_offset_bound;  }
+/*MT6163*/        else if( AFC_TRx_Offset[rf_band] < (-1)*trx_offset_bound )
+/*MT6163*/        {  AFC_TRx_Offset[rf_band] = (-1)*trx_offset_bound;  }
+/*MT6163*/
+/*MT6163*/        N_FRAC += (int)(AFC_TRx_Offset[rf_band]*frac_diff/200000);
+/*MT6163*/
+/*MT6163*/        if( N_FRAC >= N_FRAC_MAX )
+/*MT6163*/        {
+/*MT6163*/           N_FRAC -= N_FRAC_MAX;
+/*MT6163*/           N_INT++;
+/*MT6163*/        }
+/*MT6163*/        else if( N_FRAC < N_FRAC_MIN )
+/*MT6163*/        {
+/*MT6163*/           N_FRAC += N_FRAC_MAX;
+/*MT6163*/           N_INT--;
+/*MT6163*/        }
+/*MT6163*/     }
+/*MT6163*/
+/*MT6163*/     /* integer channel check */
+/*MT6163*/     if( N_FRAC == 0 )
+/*MT6163*/     {  l1d_rf2.is_integer |=  int_mask;  }  /* integer */
+/*MT6163*/     else
+/*MT6163*/     {  l1d_rf2.is_integer &= ~int_mask;  }  /* not integer */
+/*MT6163*/
+/*MT6163*/     /* near-integer channel check */
+/*MT6163*/     if( is_Rx )
+/*MT6163*/     {  sdm = (l1d_rf2.is_integer&0x2) ? 0 : CW2_DFM_SDM_IFM_ON_SET;                                    }  /* turn off for integer channels */
+/*MT6163*/     else
+/*MT6163*/     {  l1d_rf2.is_isotpol = (N_FRAC>TX_NEAR_INT_N_FRAC_MIN && N_FRAC<TX_NEAR_INT_N_FRAC_MAX) ? 1 : 0;  }
+/*MT6163*/
+/*MT6163*/     *rfN = (N_FRAC&0x3FF) | ((N_INT&0xFF)<<10);
+/*MT6163*/     *ifN = (sdm)|((N_FRAC>>10)&0x1FFF);
+/*MT6163*/  }
+/*MT6163*/  /* ========================================================================== */
+/*MT6163*/
+/*MT6163*/  void L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6163*/  {
+/*MT6163*/     L1D_RF_ComputeTxPLLFreq( 1/*RX*/, rf_band, arfcn, rfN, ifN );
+/*MT6163*/  }
+/*MT6163*/  /* ========================================================================== */
+/*MT6163*/
+/*MT6163*/  void L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6163*/  {
+/*MT6163*/     l1d_rf2.arfcn = arfcn;  //for L1D_RF_SetTxGainWrite()
+/*MT6163*/     L1D_RF_ComputeTxPLLFreq( 0/*TX*/, rf_band, arfcn, rfN, ifN );
+/*MT6163*/  }
+/*MT6163*/  /* ========================================================================== */
+#endif
+
+#if IS_RF_MT6280RF
+/*MT6280RF*/ void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6280RF*/ {  long *if_sel = ifN+1;
+/*MT6280RF*/    unsigned short Nint =0, CH_freq =0;
+/*MT6280RF*/    unsigned long  Nfrac=0, VCO_freq=0;
+/*MT6280RF*/
+/*MT6280RF*/    CH_freq = L1D_RF_ARFCN_CH_to_RxFreq( rf_band, arfcn );
+/*MT6280RF*/
+/*MT6280RF*/    *if_sel = 0;
+/*MT6280RF*/    if( rf_band < FrequencyBand1800 )
+/*MT6280RF*/       VCO_freq = 4*(CH_freq*DLIF_SCALE - DLIF);  
+/*MT6280RF*/    else
+/*MT6280RF*/       VCO_freq = 2*(CH_freq*DLIF_SCALE - DLIF);  
+/*MT6280RF*/
+/*MT6280RF*/    Nint  = VCO_freq/(RX_DCXO_FREQ*DLIF_SCALE);
+/*MT6280RF*/    //+195/2 is for rounding, 195=13*3*5, 5 is SYNTH_SCALE, 13 and 3 are related to DLIF
+/*MT6280RF*/    Nfrac = ( (((VCO_freq-Nint*RX_DCXO_FREQ*DLIF_SCALE)*2080)<<3) + (195)/2 )/195;
+/*MT6280RF*/
+/*MT6280RF*/    /* CW99,  N_INT[6:0], N_RFC[23:11] */
+/*MT6280RF*/    *rfN = BSI_CW( 0x63, ((Nint &0x7F)<<13) | (Nfrac>>11) );
+/*MT6280RF*/    /* CW100, N_FRAC[10:0], DITHER_MASK[4:0] */
+/*MT6280RF*/    *ifN = BSI_CW( 0x64, ((Nfrac&0x7FF)<<9) | 0x10 );
+/*MT6280RF*/    
+/*MT6280RF*/ }
+/*MT6280RF*/ /* =========================================================================== */
+/*MT6280RF*/
+/*MT6280RF*/ void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6280RF*/ {
+/*MT6280RF*/    unsigned short Nint =0, CH_freq =0;
+/*MT6280RF*/    unsigned long  Nfrac=0, VCO_freq=0;
+/*MT6280RF*/    unsigned short DAoffset=0;
+/*MT6280RF*/    
+/*MT6280RF*/
+/*MT6280RF*/    l1d_rf2.arfcn = arfcn;  //for L1D_RF_TxGainSetting
+/*MT6280RF*/    CH_freq = L1D_RF_ARFCN_CH_to_TxFreq( rf_band, arfcn );
+/*MT6280RF*/
+/*MT6280RF*/    if( rf_band < FrequencyBand1800 )
+/*MT6280RF*/       VCO_freq = 4*CH_freq;  
+/*MT6280RF*/    else
+/*MT6280RF*/       VCO_freq = 2*CH_freq;  
+/*MT6280RF*/
+/*MT6280RF*/    Nint  = VCO_freq/TX_DCXO_FREQ;
+/*MT6280RF*/    Nfrac = ( ((VCO_freq-Nint*TX_DCXO_FREQ)<<23) + TX_DCXO_FREQ/2 )/TX_DCXO_FREQ;  //+TX_DCXO_FREQ/2 is for rounding
+/*MT6280RF*/
+/*MT6280RF*/    DAoffset = L1D_RF_GetTxDAoffsetSetting( Nint );
+/*MT6280RF*/
+/*MT6280RF*/    /* CW95, N_INT[7:0], N_RFC[22:11] */
+/*MT6280RF*/    *rfN = BSI_CW( 0x5F, ((Nint &0xFF)<<12) | (Nfrac>>11) );
+/*MT6280RF*/    /* CW96, N_FRAC[10:0], DA_OFFSET[7:0], DI_EN */
+/*MT6280RF*/    *ifN = BSI_CW( 0x60, ((Nfrac&0x7FF)<<9) | ((DAoffset&0xFF)<<1) | 0x1);
+/*MT6280RF*/
+/*MT6280RF*/ }
+/*MT6280RF*/ /* =========================================================================== */
+/*MT6280RF*/
+/*MT6280RF*/ unsigned short L1D_RF_ARFCN_CH_to_RxFreq( int rf_band, int arfcn )
+/*MT6280RF*/ {
+/*MT6280RF*/    unsigned short freq=4450+225;
+/*MT6280RF*/    switch( rf_band )
+/*MT6280RF*/    {
+/*MT6280RF*/       case  FrequencyBand850 :
+/*MT6280RF*/       {
+/*MT6280RF*/          freq=4121+(arfcn-128)+225;     //freq = f_ch*SYNTH_SCALE
+/*MT6280RF*/          break;
+/*MT6280RF*/       }
+/*MT6280RF*/       case  FrequencyBand900 :
+/*MT6280RF*/       {
+/*MT6280RF*/          if( arfcn<=124 )
+/*MT6280RF*/          {  freq=4450+arfcn+225;  }
+/*MT6280RF*/          else
+/*MT6280RF*/          {  freq=4450+(arfcn-1024)+225;  }
+/*MT6280RF*/          break;
+/*MT6280RF*/       }
+/*MT6280RF*/       case  FrequencyBand1800 :
+/*MT6280RF*/       {
+/*MT6280RF*/          freq=8551+(arfcn-512)+475;
+/*MT6280RF*/          break;
+/*MT6280RF*/       }
+/*MT6280RF*/       case  FrequencyBand1900 :
+/*MT6280RF*/       {
+/*MT6280RF*/          freq=9251+(arfcn-512)+400;
+/*MT6280RF*/          break;
+/*MT6280RF*/       }
+/*MT6280RF*/       default :
+/*MT6280RF*/       {
+/*MT6280RF*/          break;
+/*MT6280RF*/       }
+/*MT6280RF*/    }
+/*MT6280RF*/
+/*MT6280RF*/    return freq;
+/*MT6280RF*/ }
+/*MT6280RF*/ /* =========================================================================== */
+/*MT6280RF*/
+/*MT6280RF*/ unsigned short L1D_RF_ARFCN_CH_to_TxFreq( int rf_band, int arfcn )
+/*MT6280RF*/ {
+/*MT6280RF*/    unsigned short freq=4450;
+/*MT6280RF*/    switch( rf_band )
+/*MT6280RF*/    {
+/*MT6280RF*/       case  FrequencyBand850 :
+/*MT6280RF*/       {
+/*MT6280RF*/          freq=4121+(arfcn-128);     //freq = f_ch*SYNTH_SCALE
+/*MT6280RF*/          break;
+/*MT6280RF*/       }
+/*MT6280RF*/       case  FrequencyBand900 :
+/*MT6280RF*/       {
+/*MT6280RF*/          if( arfcn<=124 )
+/*MT6280RF*/          {  freq=4450+arfcn;  }
+/*MT6280RF*/          else
+/*MT6280RF*/          {  freq=4450+(arfcn-1024);  }
+/*MT6280RF*/          break;
+/*MT6280RF*/       }
+/*MT6280RF*/       case  FrequencyBand1800 :
+/*MT6280RF*/       {
+/*MT6280RF*/          freq=8551+(arfcn-512);
+/*MT6280RF*/          break;
+/*MT6280RF*/       }
+/*MT6280RF*/       case  FrequencyBand1900 :
+/*MT6280RF*/       {
+/*MT6280RF*/          freq=9251+(arfcn-512);
+/*MT6280RF*/          break;
+/*MT6280RF*/       }
+/*MT6280RF*/       default :
+/*MT6280RF*/       {
+/*MT6280RF*/          break;
+/*MT6280RF*/       }
+/*MT6280RF*/    }
+/*MT6280RF*/
+/*MT6280RF*/    return freq;
+/*MT6280RF*/ }
+/*MT6280RF*/ /* =========================================================================== */
+/*MT6280RF*/
+/*MT6280RF*/ unsigned short L1D_RF_GetTxDCOSCACodeTypeSetting(unsigned short Nint, unsigned long  Nfrac)
+/*MT6280RF*/ {
+/*MT6280RF*/    char segment_tx=3, LUT_num_tx=8, offset_tx=13; // LUT method related parameters
+/*MT6280RF*/    unsigned short TXDCO_LUT[8]={1865, 1424, 1067, 774, 534, 331, 160, 13};  // TXDCO LUT
+/*MT6280RF*/    short idx, x_axis, code_type;  // code_type value for SCA calibration (code_type > 0)
+/*MT6280RF*/
+/*MT6280RF*/    /* STX DCO SCA Typical Code LUT */
+/*MT6280RF*/	idx = (Nint>>segment_tx)-((short)offset_tx);                                                                                      
+/*MT6280RF*/    if(idx<0)                                                                                                                          
+/*MT6280RF*/       idx = 0;                                                                                                                          
+/*MT6280RF*/    else if(idx>(LUT_num_tx-2))                                                                                                        
+/*MT6280RF*/       idx = LUT_num_tx-2;
+/*MT6280RF*/
+/*MT6280RF*/    x_axis      = ((Nint-((Nint>>segment_tx)<<segment_tx))<<3)+((short)(Nfrac>>20));                                                   
+/*MT6280RF*/    code_type   = TXDCO_LUT[idx]+ ((x_axis*(TXDCO_LUT[idx+1]-TXDCO_LUT[idx]))>>(segment_tx+3));
+/*MT6280RF*/    code_type <<= 1;
+/*MT6280RF*/
+/*MT6280RF*/    return code_type;
+/*MT6280RF*/ }
+/*MT6280RF*/ /* =========================================================================== */
+/*MT6280RF*/
+/*MT6280RF*/ unsigned short L1D_RF_GetTxDEMChunkSetting(int rf_band, unsigned short Nint)
+/*MT6280RF*/ {
+/*MT6280RF*/    unsigned short DEM_Chunk_L1;
+/*MT6280RF*/    unsigned short OUT_G, OUT_E;
+/*MT6280RF*/    char segment_dem=4, LUT_num_dem=4, offset_dem=7;     // LUT method related parameters
+/*MT6280RF*/    unsigned short DEM_chunk_G_LUT[4]={15, 10,  7,  5};  // DEM chunk GMSK LUT
+/*MT6280RF*/    unsigned short DEM_chunk_E_LUT[4]={69, 46, 33, 24};  // DEM chunk EPSK LUT
+/*MT6280RF*/    short idx;
+/*MT6280RF*/
+/*MT6280RF*/    /* STX DEM CHUNK LUT */
+/*MT6280RF*/	idx = (Nint>>segment_dem)-((short)offset_dem);                                                                                      
+/*MT6280RF*/    if(idx<0)                                                                                                                          
+/*MT6280RF*/       idx = 0;                                                                                                                          
+/*MT6280RF*/    else if(idx>(LUT_num_dem-2))                                                                                                        
+/*MT6280RF*/       idx = LUT_num_dem-2;                                                                                                                                                               
+/*MT6280RF*/
+/*MT6280RF*/    OUT_G = DEM_chunk_G_LUT[idx]+(((Nint-((Nint>>segment_dem)<<segment_dem))*(DEM_chunk_G_LUT[idx+1]-DEM_chunk_G_LUT[idx]))>>(segment_dem));
+/*MT6280RF*/    OUT_E = DEM_chunk_E_LUT[idx]+(((Nint-((Nint>>segment_dem)<<segment_dem))*(DEM_chunk_E_LUT[idx+1]-DEM_chunk_E_LUT[idx]))>>(segment_dem));
+/*MT6280RF*/    
+/*MT6280RF*/    if( ( (l1d_rf.tx_mod_type2)^(l1d_rf.tx_mod_type2<<1) ) & 0xE )   // IS_MIXED_MULTISLOT
+/*MT6280RF*/    {
+/*MT6280RF*/       if( rf_band < FrequencyBand1800 )
+/*MT6280RF*/          DEM_Chunk_L1 = ((OUT_E+OUT_G+5)>40) ? (OUT_E+OUT_G+5) : 40; 
+/*MT6280RF*/       else
+/*MT6280RF*/          DEM_Chunk_L1 = 40;   
+/*MT6280RF*/    }
+/*MT6280RF*/    else
+/*MT6280RF*/    {
+/*MT6280RF*/       if( (l1d_rf.tx_mod_type2 != 0) && (rf_band < FrequencyBand1800) )
+/*MT6280RF*/          DEM_Chunk_L1 = ((2*OUT_E+6)>40) ? (2*OUT_E+6) : 40; 
+/*MT6280RF*/       else
+/*MT6280RF*/          DEM_Chunk_L1 = 40;   
+/*MT6280RF*/    }
+/*MT6280RF*/    return DEM_Chunk_L1;
+/*MT6280RF*/ }
+/*MT6280RF*/ /* =========================================================================== */
+/*MT6280RF*/
+/*MT6280RF*/ void L1D_RF_GetTxKDCOCAL2ndSetting(int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6280RF*/ {
+/*MT6280RF*/    unsigned short Nint =0, CH_freq =0;
+/*MT6280RF*/    unsigned long  Nfrac=0, DCO4G_freq=0;
+/*MT6280RF*/    
+/*MT6280RF*/    CH_freq = L1D_RF_ARFCN_CH_to_TxFreq( rf_band, arfcn );
+/*MT6280RF*/
+/*MT6280RF*/    if( rf_band < FrequencyBand1800 )
+/*MT6280RF*/       DCO4G_freq = 4*CH_freq;  
+/*MT6280RF*/    else
+/*MT6280RF*/       DCO4G_freq = 2*CH_freq;  
+/*MT6280RF*/
+/*MT6280RF*/    Nint  = ( (DCO4G_freq<<15) - 64*DCO4G_freq + 64*TX_DCXO_FREQ*92 ) / (TX_DCXO_FREQ<<15);
+/*MT6280RF*/    Nfrac = ( ( ( (DCO4G_freq<<15) - 64*DCO4G_freq + 64*TX_DCXO_FREQ*92 - ((Nint*TX_DCXO_FREQ)<<15) )<<8 ) + TX_DCXO_FREQ/2 )/TX_DCXO_FREQ;  //+TX_DCXO_FREQ/2 is for rounding
+/*MT6280RF*/
+/*MT6280RF*/    /* CW97, N_INT1[7:0], N_RFC1[22:11] */
+/*MT6280RF*/    *rfN = BSI_CW( 0x61, ((Nint &0xFF)<<12) | (Nfrac>>11) );
+/*MT6280RF*/    /* CW98, N_FRAC1[10:0], NOFFSET_REV[3:0], STX_DCO_SCAK_NOFFSET[2:0], STX_MMD_SDM_DI_LS[1:0] */
+/*MT6280RF*/    *ifN = BSI_CW( 0x62, ((Nfrac&0x7FF)<<9) | 0x00);
+/*MT6280RF*/
+/*MT6280RF*/ }
+/*MT6280RF*/ /* =========================================================================== */
+/*MT6280RF*/
+/*MT6280RF*/ unsigned short L1D_RF_GetTxDAoffsetSetting(unsigned short Nint)
+/*MT6280RF*/ {
+/*MT6280RF*/    return (Nint - 10);
+/*MT6280RF*/ }
+#endif
+
+#if IS_RF_MT6169
+/*MT6169*/ //For DLIF mode
+/*MT6169*/ char  L1D_RF_Cal_IF_Synth_State( void )
+/*MT6169*/ {
+   #if IS_W_CANCELLATION_SUPPORT
+/*MT6169*/    if( L1D_CheckIfMetaMode() )
+/*MT6169*/    {  return l1d_rf.if_state;  }
+/*MT6169*/    else
+/*MT6169*/    {  return 0;  }
+   #else
+/*MT6169*/    return 0;
+   #endif
+/*MT6169*/ }
+/*MT6169*/ /* =========================================================================== */
+/*MT6169*/
+/*MT6169*/ void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6169*/ {  long *if_sel = ifN+1;
+/*MT6169*/    unsigned short Nint =0, CH_freq =0;
+/*MT6169*/    unsigned long  Nfrac=0, VCO_freq=0;
+/*MT6169*/    unsigned short Nint_spur =0;
+/*MT6169*/    unsigned long  Nfrac_spur=0;
+/*MT6169*/    unsigned long  frac_spurs_thd0=0, frac_spurs_thd1=0;
+/*MT6169*/    unsigned long  frac_spurs_mid_thd0=4129776, frac_spurs_mid_thd1=4258832;
+/*MT6169*/             long  freqOffset=0;
+/*MT6169*/
+/*MT6169*/    unsigned short RG_RXREP_EN        = 1;
+/*MT6169*/    unsigned short RG_SRX_REF_SEL     = (SDATA_CW117[rf_band]&0x3);
+/*MT6169*/    unsigned short RG_SRX_KVCO_SEL[5] = { 0,  2,  2,  2,  2};
+/*MT6169*/    unsigned short RG_SRX_LF_R2[5]    = { 0, 24, 20, 21, 18};
+/*MT6169*/    unsigned short FREF_SRX[3]        = {26, 13, 52};
+/*MT6169*/    unsigned short multiplier[3]      = {15, 16, 14};
+/*MT6169*/    unsigned char  IF_state=0;   //IF_state=0:default, IF_state=1:+IF, IF_state=2:-IF
+/*MT6169*/
+/*MT6169*/    IF_state = L1D_RF_Cal_IF_Synth_State();
+/*MT6169*/
+/*MT6169*/    CH_freq = L1D_RF_ARFCN_CH_to_RxFreq( rf_band, arfcn );
+/*MT6169*/
+/*MT6169*/    if( IF_state != 2 )
+/*MT6169*/    {
+/*MT6169*/       *if_sel = 0;
+/*MT6169*/       if( rf_band < FrequencyBand1800 )
+/*MT6169*/       {
+/*MT6169*/          VCO_freq = 4*(CH_freq*DLIF_SCALE - DLIF);  //High-side mixing
+/*MT6169*/          frac_spurs_thd0 = 193584;
+/*MT6169*/          frac_spurs_thd1 = 8195024;
+/*MT6169*/       }
+/*MT6169*/       else
+/*MT6169*/       {
+/*MT6169*/          VCO_freq = 2*(CH_freq*DLIF_SCALE - DLIF);  //High-side mixing
+/*MT6169*/          frac_spurs_thd0 = 96792;
+/*MT6169*/          frac_spurs_thd1 = 8291816;
+/*MT6169*/       }
+/*MT6169*/    }
+/*MT6169*/
+/*MT6169*/    Nint  = VCO_freq/(FREF_SRX[RG_SRX_REF_SEL]*SYNTH_SCALE*DLIF_SCALE);
+/*MT6169*/    //+195/2 is for rounding, 195=13*3*5, 5 is SYNTH_SCALE, 13 and 3 are related to DLIF
+/*MT6169*/    Nfrac = ( ((VCO_freq-Nint*FREF_SRX[RG_SRX_REF_SEL]*SYNTH_SCALE*DLIF_SCALE)<<multiplier[RG_SRX_REF_SEL]) + (195)/2 )/195;
+/*MT6169*/
+/*MT6169*/    Nint_spur  = VCO_freq/(FREF_SRX[0]*SYNTH_SCALE*DLIF_SCALE);
+/*MT6169*/    //+195/2 is for rounding, 195=13*3*5, 5 is SYNTH_SCALE, 13 and 3 are related to DLIF
+/*MT6169*/    Nfrac_spur = ( ((VCO_freq-Nint_spur*FREF_SRX[0]*SYNTH_SCALE*DLIF_SCALE)<<multiplier[0]) + (195)/2 )/195;
+/*MT6169*/
+/*MT6169*/ #if IS_DUAL_LOOP_AFC_CONTROL_SUPPORT
+/*MT6169*/    extern long L1D_DualLoopAFC_CalculateFreqOffset();
+/*MT6169*/    freqOffset = (long)L1D_DualLoopAFC_CalculateFreqOffset();  // Check current freqOffset from activer rat
+/*MT6169*/    if( (l1d_rf.is_lock_dcxo) && (freqOffset > SRX_SPUR_SEL_CRITERION) )
+/*MT6169*/    {  /* 26MHz is faster, Spur freq will move to lower frequency */
+/*MT6169*/       frac_spurs_thd0     += ( (rf_band<FrequencyBand1800) ? SRX_SPUR_LB_OFFSET : SRX_SPUR_HB_OFFSET );
+/*MT6169*/       frac_spurs_thd1     += ( (rf_band<FrequencyBand1800) ? SRX_SPUR_LB_OFFSET : SRX_SPUR_HB_OFFSET );
+/*MT6169*/       frac_spurs_mid_thd0 += ( (rf_band<FrequencyBand1800) ? SRX_MID_SPUR_LB_OFFSET : SRX_MID_SPUR_HB_OFFSET-2 );  // Adjust srx spur range at HB to guratee spur channel far from spur when 26MHz drift
+/*MT6169*/       frac_spurs_mid_thd1 += ( (rf_band<FrequencyBand1800) ? SRX_MID_SPUR_LB_OFFSET : SRX_MID_SPUR_HB_OFFSET   );
+/*MT6169*/    }                                                                                      
+/*MT6169*/    else if( (l1d_rf.is_lock_dcxo) && (freqOffset < -SRX_SPUR_SEL_CRITERION) )                 
+/*MT6169*/    {  /* 26MHz is slower, Spur freq will move to higher frequency */
+/*MT6169*/       frac_spurs_thd0     -= ( (rf_band<FrequencyBand1800) ? SRX_SPUR_LB_OFFSET : SRX_SPUR_HB_OFFSET );
+/*MT6169*/       frac_spurs_thd1     -= ( (rf_band<FrequencyBand1800) ? SRX_SPUR_LB_OFFSET : SRX_SPUR_HB_OFFSET );
+/*MT6169*/       frac_spurs_mid_thd0 -= ( (rf_band<FrequencyBand1800) ? SRX_MID_SPUR_LB_OFFSET : SRX_MID_SPUR_HB_OFFSET );
+/*MT6169*/       frac_spurs_mid_thd1 -= ( (rf_band<FrequencyBand1800) ? SRX_MID_SPUR_LB_OFFSET : SRX_MID_SPUR_HB_OFFSET );
+/*MT6169*/    }
+/*MT6169*/ #endif
+/*MT6169*/    
+/*MT6169*/    if( IF_state != 1 )
+/*MT6169*/    {
+/*MT6169*/       // check fractional spurs criterion (for run-time) or IRR state (for IRR calibration)
+/*MT6169*/       if( ( Nfrac_spur < frac_spurs_thd0 ) || ( Nfrac_spur > frac_spurs_thd1 ) || ( Nfrac_spur < frac_spurs_mid_thd1 && Nfrac_spur > frac_spurs_mid_thd0 ) || ( IF_state == 2 ) )
+/*MT6169*/       {
+/*MT6169*/          *if_sel = 1;  //-170k
+/*MT6169*/          if( rf_band < FrequencyBand1800 )
+/*MT6169*/          {  VCO_freq = 4*(CH_freq*DLIF_SCALE + DLIF);  }  //Low-side mixing
+/*MT6169*/          else
+/*MT6169*/          {  VCO_freq = 2*(CH_freq*DLIF_SCALE + DLIF);  }  //Low-side mixing
+/*MT6169*/
+/*MT6169*/          Nint  = VCO_freq/(FREF_SRX[RG_SRX_REF_SEL]*SYNTH_SCALE*DLIF_SCALE);
+/*MT6169*/          //+195/2 is for rounding, 195=13*3*5, 5 is SYNTH_SCALE, 13 and 3 are related to DLIF
+/*MT6169*/          Nfrac = ( ((VCO_freq-Nint*FREF_SRX[RG_SRX_REF_SEL]*SYNTH_SCALE*DLIF_SCALE)<<multiplier[RG_SRX_REF_SEL]) + (195)/2 )/195;
+/*MT6169*/       }
+/*MT6169*/    }
+/*MT6169*/
+/*MT6169*/    /* CW115, N_INT[8:0], N_RFC[22:20], RG_RXREP_EN, RG_SRX_KVCO_SEL[1:0], RG_SRX_LF_R2[4:0] */
+/*MT6169*/    *rfN = BSI_CW( 0x73, ((Nint &0x1FF)<<11) | (((Nfrac>>20)&0x7)<<8) | ((RG_RXREP_EN&0x1)<<7) | ((RG_SRX_KVCO_SEL[rf_band]&0x3)<<5) | (RG_SRX_LF_R2[rf_band]&0x1F) );
+/*MT6169*/    /* CW116, N_FRAC[19:0] */
+/*MT6169*/    *ifN = BSI_CW( 0x74, (Nfrac&0xFFFFF) );
+/*MT6169*/ }
+/*MT6169*/ /* =========================================================================== */
+/*MT6169*/
+/*MT6169*/ void L1D_RF_SplitRxPLLSetting(unsigned long rfN, unsigned long ifN, unsigned short *Nint, unsigned long *Nfrac)
+/*MT6169*/ {
+/*MT6169*/    *Nint  = (rfN&(0x1FF<<11))>>11;
+/*MT6169*/    *Nfrac = ( ((rfN>>8)&0x7)<<20 ) | (ifN&0xFFFFF);
+/*MT6169*/ }
+/*MT6169*/ /* =========================================================================== */
+/*MT6169*/
+/*MT6169*/ void L1D_RF_AdjustRxPLLSetting(unsigned short Nint, unsigned long Nfrac, signed long NfracOffset, unsigned long *rfN, unsigned long *ifN )
+/*MT6169*/ {
+/*MT6169*/    L1D_RF_CompensateSXSetting( &Nint, &Nfrac, NfracOffset, 0 );
+/*MT6169*/
+/*MT6169*/    /* CW223, SRX_NINT[8:0], SRX_NRFC[22:12] */
+/*MT6169*/    *rfN = BSI_CW( 0x73, ((Nint &0x1FF)<<11) | (((Nfrac>>20)&0x7)<<8) | ((*rfN)&0xFF) );
+/*MT6169*/    /* CW224, SRX_NFRAC[11:0],SRX_REF_DOUBLER_EN,SRX_CAL_DISABLE,SRX_VCO_CFG[2:0],TALL_TRG_M,SRX_SDM_FRAC_MODE,SRX_RELOCK */
+/*MT6169*/    *ifN = BSI_CW( 0x74, (Nfrac&0xFFFFF));
+/*MT6169*/ }
+/*MT6169*/ /* =========================================================================== */
+/*MT6169*/
+/*MT6169*/ void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6169*/ {
+/*MT6169*/    unsigned short Nint =0, CH_freq =0;
+/*MT6169*/    unsigned long  Nfrac=0, VCO_freq=0;
+/*MT6169*/
+/*MT6169*/    unsigned short DA_OFFSET_26M  = 10;
+/*MT6169*/    unsigned short MMD_SDM_DI_EN  = 0;  //keep POR = 0
+/*MT6169*/
+/*MT6169*/    l1d_rf2.arfcn = arfcn;  //for L1D_RF_TxGainSetting
+/*MT6169*/ #if IS_MIPI_SUPPORT 
+/*MT6169*/    l1d_mipi.tx_arfcn = arfcn;  //for L1D_RF_TxGainSetting
+/*MT6169*/ #endif
+/*MT6169*/    CH_freq = L1D_RF_ARFCN_CH_to_TxFreq( rf_band, arfcn );
+/*MT6169*/
+/*MT6169*/    if( rf_band < FrequencyBand1800 )
+/*MT6169*/       VCO_freq = 4*CH_freq;  
+/*MT6169*/    else
+/*MT6169*/       VCO_freq = 2*CH_freq;  
+/*MT6169*/
+/*MT6169*/    Nint    = VCO_freq/TX_DCXO_FREQ;
+/*MT6169*/    Nfrac   = ( ((VCO_freq-Nint*TX_DCXO_FREQ)<<23) + TX_DCXO_FREQ/2 )/TX_DCXO_FREQ;  //+TX_DCXO_FREQ/2 is for rounding
+/*MT6169*/
+/*MT6169*/ #if IS_DUAL_LOOP_AFC_CONTROL_SUPPORT
+/*MT6169*/    if( l1d_rf.is_lock_dcxo )
+/*MT6169*/    {  /* SW dithering after L1D_RF_AdjustTxPLLSetting() */  }
+/*MT6169*/    else
+/*MT6169*/ #endif
+/*MT6169*/    {  /* Apply SW dithering no matter it is integer channel or not */
+/*MT6169*/       Nfrac   = ( (Nfrac&0x1) == 0 ) ? Nfrac+1 : Nfrac; //always let LSB[0]=1
+/*MT6169*/    }
+/*MT6169*/
+/*MT6169*/    /* CW169, N_INT[7:0], N_RFC[22:11] */
+/*MT6169*/    *rfN = BSI_CW( 0xA9, ((Nint &0xFF)<<12) | (Nfrac>>11) );
+/*MT6169*/    /* CW170, N_FRAC[10:0], DA_OFFSET[7:0], DI_EN */
+/*MT6169*/    *ifN = BSI_CW( 0xAA, ((Nfrac&0x7FF)<<9) | ((DA_OFFSET_26M&0xFF)<<1) | (MMD_SDM_DI_EN&0x1) );
+/*MT6169*/
+/*MT6169*/ }
+/*MT6169*/ /* =========================================================================== */
+/*MT6169*/
+/*MT6169*/ void L1D_RF_SplitTxPLLSetting(unsigned long rfN, unsigned long ifN, unsigned short *Nint, unsigned long *Nfrac)
+/*MT6169*/ {
+/*MT6169*/    *Nint  = (rfN&(0xFF<<12))>>12;
+/*MT6169*/    *Nfrac = ( (rfN&0xFFF)<<11 ) | ( (ifN&(0x7FF<<9))>>9 );
+/*MT6169*/ }
+/*MT6169*/ /* =========================================================================== */
+/*MT6169*/
+/*MT6169*/ void L1D_RF_AdjustTxPLLSetting(unsigned short Nint, unsigned long Nfrac, signed long NfracOffset, unsigned long *rfN, unsigned long *ifN )
+/*MT6169*/ {
+/*MT6169*/    L1D_RF_CompensateSXSetting( &Nint, &Nfrac, NfracOffset, 1 );
+/*MT6169*/
+/*MT6169*/    /* Apply SW dithering no matter it is integer channel or not */
+/*MT6169*/    Nfrac   = ( (Nfrac&0x1) == 0 ) ? Nfrac+1 : Nfrac; //always let LSB[0]=1
+/*MT6169*/
+/*MT6169*/    /* CW169, N_INT[7:0], N_RFC[22:11] */
+/*MT6169*/    *rfN = BSI_CW( 0xA9, ((Nint &0xFF)<<12) | (Nfrac>>11) );
+/*MT6169*/    /* CW170, N_FRAC[10:0], DA_OFFSET[7:0], DI_EN */
+/*MT6169*/    *ifN = BSI_CW( 0xAA, ((Nfrac&0x7FF)<<9) |((*ifN)&0x1FF));
+/*MT6169*/ }
+/*MT6169*/ /* =========================================================================== */
+/*MT6169*/
+/*MT6169*/ void L1D_RF_CompensateSXSetting( unsigned short *Nint, unsigned long *Nfrac, signed long NfracOffset, unsigned char is_TX)
+/*MT6169*/ {
+/*MT6169*/    signed long Max_Nfrac=0;
+/*MT6169*/    if( is_TX )
+/*MT6169*/    {  Max_Nfrac = STX_MAX_NFRAC;  }
+/*MT6169*/    else
+/*MT6169*/    {  Max_Nfrac = SRX_MAX_NFRAC;  }
+/*MT6169*/    
+/*MT6169*/    //Calculate new Nfrac and Nint
+/*MT6169*/    *Nfrac  += (NfracOffset + Max_Nfrac);
+/*MT6169*/    if( *Nfrac < Max_Nfrac )
+/*MT6169*/    {  (*Nint)--;  
+/*MT6169*/    }
+/*MT6169*/    else if( *Nfrac >= (Max_Nfrac<<1) )
+/*MT6169*/    {  (*Nint)++;  
+/*MT6169*/       *Nfrac = *Nfrac - (Max_Nfrac<<1);
+/*MT6169*/    }
+/*MT6169*/    else
+/*MT6169*/    {  *Nfrac-= Max_Nfrac;
+/*MT6169*/    }
+/*MT6169*/ }
+/*MT6169*/ /* =========================================================================== */
+/*MT6169*/
+/*MT6169*/ unsigned short L1D_RF_ARFCN_CH_to_RxFreq( int rf_band, int arfcn )
+/*MT6169*/ {
+/*MT6169*/    unsigned short freq=4450+225;
+/*MT6169*/    switch( rf_band )
+/*MT6169*/    {
+/*MT6169*/       case  FrequencyBand850 :
+/*MT6169*/       {
+/*MT6169*/          freq=4121+(arfcn-128)+225;     //freq = f_ch*SYNTH_SCALE
+/*MT6169*/          break;
+/*MT6169*/       }
+/*MT6169*/       case  FrequencyBand900 :
+/*MT6169*/       {
+/*MT6169*/          if( arfcn<=124 )
+/*MT6169*/          {  freq=4450+arfcn+225;  }
+/*MT6169*/          else
+/*MT6169*/          {  freq=4450+(arfcn-1024)+225;  }
+/*MT6169*/          break;
+/*MT6169*/       }
+/*MT6169*/       case  FrequencyBand1800 :
+/*MT6169*/       {
+/*MT6169*/          freq=8551+(arfcn-512)+475;
+/*MT6169*/          break;
+/*MT6169*/       }
+/*MT6169*/       case  FrequencyBand1900 :
+/*MT6169*/       {
+/*MT6169*/          freq=9251+(arfcn-512)+400;
+/*MT6169*/          break;
+/*MT6169*/       }
+/*MT6169*/       default :
+/*MT6169*/       {
+/*MT6169*/          break;
+/*MT6169*/       }
+/*MT6169*/    }
+/*MT6169*/
+/*MT6169*/    return freq;
+/*MT6169*/ }
+/*MT6169*/ /* =========================================================================== */
+/*MT6169*/
+/*MT6169*/ unsigned short L1D_RF_ARFCN_CH_to_TxFreq( int rf_band, int arfcn )
+/*MT6169*/ {
+/*MT6169*/    unsigned short freq=4450;
+/*MT6169*/    switch( rf_band )
+/*MT6169*/    {
+/*MT6169*/       case  FrequencyBand850 :
+/*MT6169*/       {
+/*MT6169*/          freq=4121+(arfcn-128);     //freq = f_ch*SYNTH_SCALE
+/*MT6169*/          break;
+/*MT6169*/       }
+/*MT6169*/       case  FrequencyBand900 :
+/*MT6169*/       {
+/*MT6169*/          if( arfcn<=124 )
+/*MT6169*/          {  freq=4450+arfcn;  }
+/*MT6169*/          else
+/*MT6169*/          {  freq=4450+(arfcn-1024);  }
+/*MT6169*/          break;
+/*MT6169*/       }
+/*MT6169*/       case  FrequencyBand1800 :
+/*MT6169*/       {
+/*MT6169*/          freq=8551+(arfcn-512);
+/*MT6169*/          break;
+/*MT6169*/       }
+/*MT6169*/       case  FrequencyBand1900 :
+/*MT6169*/       {
+/*MT6169*/          freq=9251+(arfcn-512);
+/*MT6169*/          break;
+/*MT6169*/       }
+/*MT6169*/       default :
+/*MT6169*/       {
+/*MT6169*/          break;
+/*MT6169*/       }
+/*MT6169*/    }
+/*MT6169*/
+/*MT6169*/    return freq;
+/*MT6169*/ }
+/*MT6169*/ /* =========================================================================== */
+/*MT6169*/
+/*MT6169*/ unsigned short L1D_RF_GetTxDCOSCACodeTypeSetting(unsigned short Nint, unsigned long  Nfrac)
+/*MT6169*/ {
+/*MT6169*/    char segment_tx=3, LUT_num_tx=6, offset_tx=15; // LUT method related parameters
+/*MT6169*/    signed short TXDCO_LUT[6]={2786, 1986, 1337, 792, 316, -68};  // TXDCO LUT
+/*MT6169*/    short idx, x_axis, code_type;  // code_type value for SCA calibration (code_type > 0)
+/*MT6169*/
+/*MT6169*/    /* STX DCO SCA Typical Code LUT */
+/*MT6169*/    idx = (Nint>>segment_tx)-((short)offset_tx);
+/*MT6169*/    if(idx<0)
+/*MT6169*/       idx = 0;
+/*MT6169*/    else if(idx>(LUT_num_tx-2))
+/*MT6169*/       idx = LUT_num_tx-2;
+/*MT6169*/
+/*MT6169*/    x_axis      = ((Nint-((Nint>>segment_tx)<<segment_tx))<<3)+((short)(Nfrac>>20));
+/*MT6169*/    code_type   = TXDCO_LUT[idx]+ ((x_axis*(TXDCO_LUT[idx+1]-TXDCO_LUT[idx]))>>(segment_tx+3));
+/*MT6169*/
+/*MT6169*/    return code_type;
+/*MT6169*/ }
+/*MT6169*/ /* =========================================================================== */
+/*MT6169*/
+/*MT6169*/ unsigned short L1D_RF_GetTxDEMChunkSetting(int rf_band, unsigned short Nint)
+/*MT6169*/ {
+/*MT6169*/    unsigned short DEM_Chunk_L1;
+/*MT6169*/    unsigned short OUT_G, OUT_E;
+/*MT6169*/    char segment_dem=4, LUT_num_dem=4, offset_dem=7;     // LUT method related parameters
+/*MT6169*/    unsigned short DEM_chunk_G_LUT[4]={15, 10,  7,  5};  // DEM chunk GMSK LUT
+/*MT6169*/    unsigned short DEM_chunk_E_LUT[4]={69, 46, 33, 24};  // DEM chunk EPSK LUT
+/*MT6169*/    short idx;
+/*MT6169*/
+/*MT6169*/    /* STX DEM CHUNK LUT */
+/*MT6169*/	  idx = (Nint>>segment_dem)-((short)offset_dem);                                                                                      
+/*MT6169*/    if(idx<0)                                                                                                                          
+/*MT6169*/       idx = 0;                                                                                                                          
+/*MT6169*/    else if(idx>(LUT_num_dem-2))                                                                                                        
+/*MT6169*/       idx = LUT_num_dem-2;                                                                                                                                                               
+/*MT6169*/
+/*MT6169*/    OUT_G = DEM_chunk_G_LUT[idx]+(((Nint-((Nint>>segment_dem)<<segment_dem))*(DEM_chunk_G_LUT[idx+1]-DEM_chunk_G_LUT[idx]))>>(segment_dem));
+/*MT6169*/    OUT_E = DEM_chunk_E_LUT[idx]+(((Nint-((Nint>>segment_dem)<<segment_dem))*(DEM_chunk_E_LUT[idx+1]-DEM_chunk_E_LUT[idx]))>>(segment_dem));
+/*MT6169*/    
+/*MT6169*/    if( ( (l1d_rf.tx_mod_type2)^(l1d_rf.tx_mod_type2<<1) ) & 0xE )   // IS_MIXED_MULTISLOT
+/*MT6169*/    {
+/*MT6169*/       if( rf_band < FrequencyBand1800 )
+/*MT6169*/          DEM_Chunk_L1 = ((OUT_E+OUT_G+5)>40) ? (OUT_E+OUT_G+5) : 40; 
+/*MT6169*/       else
+/*MT6169*/          DEM_Chunk_L1 = 40;   
+/*MT6169*/    }
+/*MT6169*/    else
+/*MT6169*/    {
+/*MT6169*/       if( (l1d_rf.tx_mod_type2 != 0) && (rf_band < FrequencyBand1800) )
+/*MT6169*/          DEM_Chunk_L1 = ((2*OUT_E+6)>40) ? (2*OUT_E+6) : 40; 
+/*MT6169*/       else
+/*MT6169*/          DEM_Chunk_L1 = 40;   
+/*MT6169*/    }
+/*MT6169*/    return DEM_Chunk_L1;
+/*MT6169*/ }
+/*MT6169*/ /* =========================================================================== */
+/*MT6169*/
+/*MT6169*/ void L1D_RF_GetTxKDCOCAL2ndSetting(int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6169*/ {
+/*MT6169*/    unsigned short Nint =0, CH_freq =0;
+/*MT6169*/    unsigned long  Nfrac=0, DCO4G_freq=0;
+/*MT6169*/    unsigned short KDCO_NCAL = (POR_CW176&(0x3<<6))>>6;
+/*MT6169*/    unsigned short NCAL[4] = {64, 96, 16, 32};
+/*MT6169*/
+/*MT6169*/    unsigned short DCO_SCAK_NOFFSET  = 0; //keep POR = 0
+/*MT6169*/    unsigned short MMD_SDM_DI_LS     = 0; //keep POR = 0
+/*MT6169*/      signed long  Nfrac1Offset      = 0;
+/*MT6169*/
+/*MT6169*/    CH_freq = L1D_RF_ARFCN_CH_to_TxFreq( rf_band, arfcn );
+/*MT6169*/
+/*MT6169*/    if( rf_band < FrequencyBand1800 )
+/*MT6169*/       DCO4G_freq = 4*CH_freq;  
+/*MT6169*/    else
+/*MT6169*/       DCO4G_freq = 2*CH_freq;  
+/*MT6169*/
+/*MT6169*/    Nint  = ( (DCO4G_freq<<15) - NCAL[KDCO_NCAL]*DCO4G_freq + NCAL[KDCO_NCAL]*TX_DCXO_FREQ*92 ) / (TX_DCXO_FREQ<<15);
+/*MT6169*/    Nfrac = ( ( ( (DCO4G_freq<<15) - NCAL[KDCO_NCAL]*DCO4G_freq + NCAL[KDCO_NCAL]*TX_DCXO_FREQ*92 - ((Nint*TX_DCXO_FREQ)<<15) )<<8 ) )/TX_DCXO_FREQ;  //floor
+/*MT6169*/
+/*MT6169*/ #if IS_DUAL_LOOP_AFC_CONTROL_SUPPORT
+/*MT6169*/    if( l1d_rf.is_lock_dcxo )
+/*MT6169*/    {  Nfrac1Offset = l1d_rf.tx_nfracoffset - ((((signed long)NCAL[KDCO_NCAL])*l1d_rf.tx_nfracoffset)>>15);
+/*MT6169*/       L1D_RF_CompensateSXSetting( &Nint, &Nfrac, Nfrac1Offset, 1 );
+/*MT6169*/    }
+/*MT6169*/ #endif
+/*MT6169*/
+/*MT6169*/    /* CW171, N_INT1[7:0], N_RFC1[22:11] */
+/*MT6169*/    *rfN = BSI_CW( 0x61, ((Nint &0xFF)<<12) | (Nfrac>>11) );
+/*MT6169*/    /* CW172, N_FRAC1[10:0], NOFFSET_REV[3:0], STX_DCO_SCAK_NOFFSET[2:0], STX_MMD_SDM_DI_LS[1:0] */
+/*MT6169*/    *ifN = BSI_CW( 0x62, ((Nfrac&0x7FF)<<9) | ((DCO_SCAK_NOFFSET&0xF)<<2) |(MMD_SDM_DI_LS&0x3) );
+/*MT6169*/
+/*MT6169*/ }
+/*MT6169*/ /* =========================================================================== */
+#endif
+
+#if IS_RF_MT6166
+/*MT6166*/ //For DLIF mode
+/*MT6166*/ void  L1D_RF_Cal_Synthesizer_Params( unsigned short* Nint, unsigned long* Nfrac, unsigned long  VCO_freq )
+/*MT6166*/ {
+/*MT6166*/    *Nint  = VCO_freq/(RX_DCXO_FREQ*DLIF_SCALE);
+/*MT6166*/    //+195/2 is for rounding, 195=13*3*5, 5 is SYNTH_SCALE, 13 and 3 are related to DLIF
+/*MT6166*/    *Nfrac = ( ((VCO_freq-*Nint*RX_DCXO_FREQ*DLIF_SCALE)<<15) + (195)/2 )/195;
+/*MT6166*/ }
+/*MT6166*/ /* =========================================================================== */
+/*MT6166*/
+/*MT6166*/ char  L1D_RF_Cal_IF_Synth_State( void )
+/*MT6166*/ {
+/*MT6166*/ #if IS_W_CANCELLATION_SUPPORT
+/*MT6166*/    if( L1D_CheckIfMetaMode() )
+/*MT6166*/    {  return l1d_rf.if_state;  }
+/*MT6166*/    else
+/*MT6166*/    {  return 0;  }
+/*MT6166*/ #else
+/*MT6166*/    return 0;
+/*MT6166*/ #endif                    
+/*MT6166*/ }
+/*MT6166*/ /* =========================================================================== */
+/*MT6166*/
+/*MT6166*/ void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6166*/ {  long *if_sel = ifN+1;
+/*MT6166*/    unsigned short Nint =0, CH_freq =0;
+/*MT6166*/    unsigned long  Nfrac=0, VCO_freq=0;
+/*MT6166*/    unsigned long  frac_spurs_thd0=0, frac_spurs_thd1=0;
+/*MT6166*/    unsigned char  IF_state=0;   //IF_state=0:default, IF_state=1:+IF, IF_state=2:-IF
+/*MT6166*/
+/*MT6166*/    IF_state = L1D_RF_Cal_IF_Synth_State();
+/*MT6166*/
+/*MT6166*/    CH_freq = L1D_RF_ARFCN_CH_to_RxFreq( rf_band, arfcn );
+/*MT6166*/
+/*MT6166*/    if( IF_state != 2 )
+/*MT6166*/    {
+/*MT6166*/       *if_sel = 0;
+/*MT6166*/       l1d_rf.if_sel_Nif_wc = 0;
+/*MT6166*/       if( rf_band < FrequencyBand1800 )
+/*MT6166*/       {
+/*MT6166*/          VCO_freq = 4*(CH_freq*DLIF_SCALE - DLIF);  //High-side mixing
+/*MT6166*/          frac_spurs_thd0 = 193584;
+/*MT6166*/          frac_spurs_thd1 = 8195024;
+/*MT6166*/       }
+/*MT6166*/       else
+/*MT6166*/       {
+/*MT6166*/          VCO_freq = 2*(CH_freq*DLIF_SCALE - DLIF);  //High-side mixing
+/*MT6166*/          frac_spurs_thd0 = 96792;
+/*MT6166*/          frac_spurs_thd1 = 8291816;
+/*MT6166*/       }
+/*MT6166*/       L1D_RF_Cal_Synthesizer_Params( &Nint, &Nfrac, VCO_freq );
+/*MT6166*/    }
+/*MT6166*/
+/*MT6166*/    if( IF_state != 1 )
+/*MT6166*/    {
+/*MT6166*/       // use +IF channel instead of -IF for IRR calibration 
+/*MT6166*/       if( ( Nfrac < frac_spurs_thd0 ) || ( Nfrac > frac_spurs_thd1) || ( Nfrac < 4258832 && Nfrac > 4129776 ) || ( IF_state == 2 ) )
+/*MT6166*/       {
+/*MT6166*/          *if_sel = 0;
+/*MT6166*/          l1d_rf.if_sel_Nif_wc = 1;
+/*MT6166*/          if( rf_band < FrequencyBand1800 )
+/*MT6166*/          {  VCO_freq = 4*(CH_freq*DLIF_SCALE - DLIF);  }  //Low-side mixing
+/*MT6166*/          else
+/*MT6166*/          {  VCO_freq = 2*(CH_freq*DLIF_SCALE - DLIF);  }  //Low-side mixing
+/*MT6166*/
+/*MT6166*/          L1D_RF_Cal_Synthesizer_Params( &Nint, &Nfrac, VCO_freq );
+/*MT6166*/       }
+/*MT6166*/
+/*MT6166*/    }  
+/*MT6166*/
+/*MT6166*/ #if IS_OBB_DETECTION_SUPPORT
+/*MT6166*/    if( !L1D_CheckIfMetaMode() )
+/*MT6166*/    {
+/*MT6166*/       if( l1d_rf.if_change == -1 && arfcn == l1d_rf.obb_arfcn )
+/*MT6166*/       {
+/*MT6166*/          signed short if_sign = l1d_rf.if_change*(*if_sel*2-1);
+/*MT6166*/
+/*MT6166*/          *if_sel = if_sign > 0 ? 1 : 0;
+/*MT6166*/          if( rf_band < FrequencyBand1800 )
+/*MT6166*/          {  VCO_freq = 4*(CH_freq*DLIF_SCALE + if_sign*DLIF);  }
+/*MT6166*/          else
+/*MT6166*/          {  VCO_freq = 2*(CH_freq*DLIF_SCALE + if_sign*DLIF);  }
+/*MT6166*/
+/*MT6166*/          L1D_RF_Cal_Synthesizer_Params( &Nint, &Nfrac, VCO_freq );
+/*MT6166*/       }
+/*MT6166*/    }
+/*MT6166*/ #endif
+/*MT6166*/
+/*MT6166*/    /* CW223, SRX_NINT[8:0], SRX_NRFC[22:12] */
+/*MT6166*/    *rfN = BSI_CW( 0xDF, ((Nint &0x1FF)<<11) | ((Nfrac>>12)&0x7FF) );
+/*MT6166*/    /* CW224, SRX_NFRAC[11:0],SRX_REF_DOUBLER_EN,SRX_CAL_DISABLE,SRX_VCO_CFG[2:0],TALL_TRG_M,SRX_SDM_FRAC_MODE,SRX_RELOCK */
+/*MT6166*/    *ifN = BSI_CW( 0xE0, ((Nfrac&0xFFF)<<8) | SRX_REF_DOUBLER_EN | SRX_VCO_CFG | (POR_CW224&0x47) );
+/*MT6166*/
+/*MT6166*/ }
+/*MT6166*/ /* =========================================================================== */
+/*MT6166*/
+/*MT6166*/ void L1D_RF_SplitRxPLLSetting(unsigned long rfN, unsigned long ifN, unsigned short *Nint, unsigned long *Nfrac)
+/*MT6166*/ {
+/*MT6166*/    *Nint  = (rfN&(0x1FF<<11))>>11;
+/*MT6166*/    *Nfrac = ( (rfN&0x7FF)<<12 ) | ( (ifN&(0xFFF<<8))>>8 );
+/*MT6166*/ }
+/*MT6166*/ /* =========================================================================== */
+/*MT6166*/
+/*MT6166*/ void L1D_RF_AdjustRxPLLSetting(unsigned short Nint, unsigned long Nfrac, signed long NfracOffset, unsigned long *rfN, unsigned long *ifN )
+/*MT6166*/ {
+/*MT6166*/    L1D_RF_CompensateSXSetting( &Nint, &Nfrac, NfracOffset, 0 );
+/*MT6166*/
+/*MT6166*/    /* CW223, SRX_NINT[8:0], SRX_NRFC[22:12] */
+/*MT6166*/    *rfN = BSI_CW( 0xDF, ((Nint &0x1FF)<<11) | ((Nfrac>>12)&0x7FF) );
+/*MT6166*/    /* CW224, SRX_NFRAC[11:0],SRX_REF_DOUBLER_EN,SRX_CAL_DISABLE,SRX_VCO_CFG[2:0],TALL_TRG_M,SRX_SDM_FRAC_MODE,SRX_RELOCK */
+/*MT6166*/    *ifN = BSI_CW( 0xE0, ((Nfrac&0xFFF)<<8)  | ((*ifN)&0xFF));
+/*MT6166*/ }
+/*MT6166*/ /* =========================================================================== */
+/*MT6166*/
+/*MT6166*/ void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6166*/ {
+/*MT6166*/    unsigned short Nint =0, CH_freq =0;
+/*MT6166*/    unsigned long  Nfrac=0, VCO_freq=0;
+/*MT6166*/    unsigned short DAoffset=0;
+/*MT6166*/    
+/*MT6166*/
+/*MT6166*/    l1d_rf2.arfcn = arfcn;  //for L1D_RF_TxGainSetting
+/*MT6166*/    CH_freq = L1D_RF_ARFCN_CH_to_TxFreq( rf_band, arfcn );
+/*MT6166*/
+/*MT6166*/    if( rf_band < FrequencyBand1800 )
+/*MT6166*/       VCO_freq = 4*CH_freq;  
+/*MT6166*/    else
+/*MT6166*/       VCO_freq = 2*CH_freq;  
+/*MT6166*/
+/*MT6166*/    Nint  = VCO_freq/TX_DCXO_FREQ;
+/*MT6166*/    Nfrac = ( ((VCO_freq-Nint*TX_DCXO_FREQ)<<23) + TX_DCXO_FREQ/2 )/TX_DCXO_FREQ;  //+TX_DCXO_FREQ/2 is for rounding
+/*MT6166*/
+/*MT6166*/    DAoffset = 10;//L1D_RF_GetTxDAoffsetSetting( Nint );
+/*MT6166*/
+/*MT6166*/    /* CW96, N_INT[7:0], N_RFC[22:11] */
+/*MT6166*/    *rfN = BSI_CW( 0x60, ((Nint &0xFF)<<12) | (Nfrac>>11) );
+/*MT6166*/    /* CW97, N_FRAC[10:0], DA_OFFSET[4:0], DI_EN */
+/*MT6166*/    *ifN = BSI_CW( 0x61, ((Nfrac&0x7FF)<<9) | ((DAoffset&0x1F)<<4) | 0x1);
+/*MT6166*/
+/*MT6166*/ }
+/*MT6166*/ /* =========================================================================== */
+/*MT6166*/
+/*MT6166*/ void L1D_RF_SplitTxPLLSetting(unsigned long rfN, unsigned long ifN, unsigned short *Nint, unsigned long *Nfrac)
+/*MT6166*/ {
+/*MT6166*/    *Nint  = (rfN&(0xFF<<12))>>12;
+/*MT6166*/    *Nfrac = ( (rfN&0xFFF)<<11 ) | ( (ifN&(0x7FF<<9))>>9 );
+/*MT6166*/ }
+/*MT6166*/ /* =========================================================================== */
+/*MT6166*/
+/*MT6166*/ void L1D_RF_AdjustTxPLLSetting(unsigned short Nint, unsigned long Nfrac, signed long NfracOffset, unsigned long *rfN, unsigned long *ifN )
+/*MT6166*/ {
+/*MT6166*/    L1D_RF_CompensateSXSetting( &Nint, &Nfrac, NfracOffset, 1 );
+/*MT6166*/
+/*MT6166*/    /* CW96, N_INT[7:0], N_RFC[22:11] */
+/*MT6166*/    *rfN = BSI_CW( 0x60, ((Nint &0xFF)<<12) | (Nfrac>>11) );
+/*MT6166*/    /* CW97, N_FRAC[10:0], DA_OFFSET[4:0], DI_EN */
+/*MT6166*/    *ifN = BSI_CW( 0x61, ((Nfrac&0x7FF)<<9) |((*ifN)&0x1FF));
+/*MT6166*/ }
+/*MT6166*/ /* =========================================================================== */
+/*MT6166*/
+/*MT6166*/ void L1D_RF_CompensateSXSetting( unsigned short *Nint, unsigned long *Nfrac, signed long NfracOffset, unsigned char is_TX)
+/*MT6166*/ {
+/*MT6166*/    signed long Max_Nfrac=0;
+/*MT6166*/    if( is_TX )
+/*MT6166*/    {  Max_Nfrac = STX_MAX_NFRAC;  }
+/*MT6166*/    else
+/*MT6166*/    {  Max_Nfrac = SRX_MAX_NFRAC;  }
+/*MT6166*/    
+/*MT6166*/    //Calculate new Nfrac and Nint
+/*MT6166*/    *Nfrac  += (NfracOffset + Max_Nfrac);
+/*MT6166*/    if( *Nfrac < Max_Nfrac )
+/*MT6166*/    {  (*Nint)--;  
+/*MT6166*/    }
+/*MT6166*/    else if( *Nfrac >= (Max_Nfrac<<1) )
+/*MT6166*/    {  (*Nint)++;  
+/*MT6166*/       *Nfrac = *Nfrac - (Max_Nfrac<<1);
+/*MT6166*/    }
+/*MT6166*/    else
+/*MT6166*/    {  *Nfrac-= Max_Nfrac;
+/*MT6166*/    }
+/*MT6166*/ }
+/*MT6166*/ /* =========================================================================== */
+/*MT6166*/
+/*MT6166*/ unsigned short L1D_RF_ARFCN_CH_to_RxFreq( int rf_band, int arfcn )
+/*MT6166*/ {
+/*MT6166*/    unsigned short freq=4450+225;
+/*MT6166*/    switch( rf_band )
+/*MT6166*/    {
+/*MT6166*/       case  FrequencyBand850 :
+/*MT6166*/       {
+/*MT6166*/          freq=4121+(arfcn-128)+225;     //freq = f_ch*SYNTH_SCALE
+/*MT6166*/          break;
+/*MT6166*/       }
+/*MT6166*/       case  FrequencyBand900 :
+/*MT6166*/       {
+/*MT6166*/          if( arfcn<=124 )
+/*MT6166*/          {  freq=4450+arfcn+225;  }
+/*MT6166*/          else
+/*MT6166*/          {  freq=4450+(arfcn-1024)+225;  }
+/*MT6166*/          break;
+/*MT6166*/       }
+/*MT6166*/       case  FrequencyBand1800 :
+/*MT6166*/       {
+/*MT6166*/          freq=8551+(arfcn-512)+475;
+/*MT6166*/          break;
+/*MT6166*/       }
+/*MT6166*/       case  FrequencyBand1900 :
+/*MT6166*/       {
+/*MT6166*/          freq=9251+(arfcn-512)+400;
+/*MT6166*/          break;
+/*MT6166*/       }
+/*MT6166*/       default :
+/*MT6166*/       {
+/*MT6166*/          break;
+/*MT6166*/       }
+/*MT6166*/    }
+/*MT6166*/
+/*MT6166*/    return freq;
+/*MT6166*/ }
+/*MT6166*/ /* =========================================================================== */
+/*MT6166*/
+/*MT6166*/ unsigned short L1D_RF_ARFCN_CH_to_TxFreq( int rf_band, int arfcn )
+/*MT6166*/ {
+/*MT6166*/    unsigned short freq=4450;
+/*MT6166*/    switch( rf_band )
+/*MT6166*/    {
+/*MT6166*/       case  FrequencyBand850 :
+/*MT6166*/       {
+/*MT6166*/          freq=4121+(arfcn-128);     //freq = f_ch*SYNTH_SCALE
+/*MT6166*/          break;
+/*MT6166*/       }
+/*MT6166*/       case  FrequencyBand900 :
+/*MT6166*/       {
+/*MT6166*/          if( arfcn<=124 )
+/*MT6166*/          {  freq=4450+arfcn;  }
+/*MT6166*/          else
+/*MT6166*/          {  freq=4450+(arfcn-1024);  }
+/*MT6166*/          break;
+/*MT6166*/       }
+/*MT6166*/       case  FrequencyBand1800 :
+/*MT6166*/       {
+/*MT6166*/          freq=8551+(arfcn-512);
+/*MT6166*/          break;
+/*MT6166*/       }
+/*MT6166*/       case  FrequencyBand1900 :
+/*MT6166*/       {
+/*MT6166*/          freq=9251+(arfcn-512);
+/*MT6166*/          break;
+/*MT6166*/       }
+/*MT6166*/       default :
+/*MT6166*/       {
+/*MT6166*/          break;
+/*MT6166*/       }
+/*MT6166*/    }
+/*MT6166*/
+/*MT6166*/    return freq;
+/*MT6166*/ }
+/*MT6166*/ /* =========================================================================== */
+/*MT6166*/
+/*MT6166*/ unsigned short L1D_RF_GetTxDCOSCACodeTypeSetting(unsigned short Nint, unsigned long  Nfrac)
+/*MT6166*/ {
+/*MT6166*/    char segment_tx=3, LUT_num_tx=6, offset_tx=15; // LUT method related parameters
+/*MT6166*/    signed short TXDCO_LUT[6]={1566, 1169, 840, 565, 331, -40};  // TXDCO LUT
+/*MT6166*/    short idx, x_axis, code_type;  // code_type value for SCA calibration (code_type > 0)
+/*MT6166*/
+/*MT6166*/ #if IS_DUAL_LOOP_AFC_CONTROL_SUPPORT
+/*MT6166*/    if( l1d_rf.is_lock_dcxo )
+/*MT6166*/    {  L1D_RF_CompensateSXSetting( &Nint, &Nfrac, -l1d_rf.tx_nfracoffset, 1 );  }
+/*MT6166*/ #endif
+/*MT6166*/
+/*MT6166*/    /* STX DCO SCA Typical Code LUT */
+/*MT6166*/    idx = (Nint>>segment_tx)-((short)offset_tx);                                                                                      
+/*MT6166*/    if(idx<0)                                                                                                                          
+/*MT6166*/       idx = 0;                                                                                                                          
+/*MT6166*/    else if(idx>(LUT_num_tx-2))                                                                                                        
+/*MT6166*/       idx = LUT_num_tx-2;
+/*MT6166*/
+/*MT6166*/    x_axis      = ((Nint-((Nint>>segment_tx)<<segment_tx))<<3)+((short)(Nfrac>>20));                                                   
+/*MT6166*/    code_type   = TXDCO_LUT[idx]+ ((x_axis*(TXDCO_LUT[idx+1]-TXDCO_LUT[idx]))>>(segment_tx+3));
+/*MT6166*/    code_type <<= 1;
+/*MT6166*/
+/*MT6166*/    return code_type;
+/*MT6166*/ }
+/*MT6166*/ /* =========================================================================== */
+/*MT6166*/
+/*MT6166*/ unsigned short L1D_RF_GetTxDEMChunkSetting(int rf_band, unsigned short Nint)
+/*MT6166*/ {
+/*MT6166*/    unsigned short DEM_Chunk_L1;
+/*MT6166*/    unsigned short OUT_G, OUT_E;
+/*MT6166*/    char segment_dem=4, LUT_num_dem=4, offset_dem=7;     // LUT method related parameters
+/*MT6166*/    signed short DEM_chunk_G_LUT[4]={15, 10,  7,  5};  // DEM chunk GMSK LUT
+/*MT6166*/    signed short DEM_chunk_E_LUT[4]={69, 46, 33, 24};  // DEM chunk EPSK LUT
+/*MT6166*/    short idx;
+/*MT6166*/
+/*MT6166*/    /* STX DEM CHUNK LUT */
+/*MT6166*/	  idx = (Nint>>segment_dem)-((short)offset_dem);                                                                                      
+/*MT6166*/    if(idx<0)                                                                                                                          
+/*MT6166*/       idx = 0;                                                                                                                          
+/*MT6166*/    else if(idx>(LUT_num_dem-2))                                                                                                        
+/*MT6166*/       idx = LUT_num_dem-2;                                                                                                                                                               
+/*MT6166*/
+/*MT6166*/    OUT_G = DEM_chunk_G_LUT[idx]+(((Nint-((Nint>>segment_dem)<<segment_dem))*(DEM_chunk_G_LUT[idx+1]-DEM_chunk_G_LUT[idx]))>>(segment_dem));
+/*MT6166*/    OUT_E = DEM_chunk_E_LUT[idx]+(((Nint-((Nint>>segment_dem)<<segment_dem))*(DEM_chunk_E_LUT[idx+1]-DEM_chunk_E_LUT[idx]))>>(segment_dem));
+/*MT6166*/    
+/*MT6166*/    if( ( (l1d_rf.tx_mod_type2)^(l1d_rf.tx_mod_type2<<1) ) & 0xE )   // IS_MIXED_MULTISLOT
+/*MT6166*/    {
+/*MT6166*/       if( rf_band < FrequencyBand1800 )
+/*MT6166*/          DEM_Chunk_L1 = ((OUT_E+OUT_G+5)>40) ? (OUT_E+OUT_G+5) : 40; 
+/*MT6166*/       else
+/*MT6166*/          DEM_Chunk_L1 = 40;   
+/*MT6166*/    }
+/*MT6166*/    else
+/*MT6166*/    {
+/*MT6166*/       if( (l1d_rf.tx_mod_type2 != 0) && (rf_band < FrequencyBand1800) )
+/*MT6166*/          DEM_Chunk_L1 = ((2*OUT_E+6)>40) ? (2*OUT_E+6) : 40; 
+/*MT6166*/       else
+/*MT6166*/          DEM_Chunk_L1 = 40;   
+/*MT6166*/    }
+/*MT6166*/    return DEM_Chunk_L1;
+/*MT6166*/ }
+/*MT6166*/ /* =========================================================================== */
+/*MT6166*/
+/*MT6166*/ void L1D_RF_GetTxKDCOCAL2ndSetting(int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6166*/ {
+/*MT6166*/    unsigned short Nint =0, CH_freq =0;
+/*MT6166*/    unsigned long  Nfrac=0, DCO4G_freq=0;
+/*MT6166*/    
+/*MT6166*/    CH_freq = L1D_RF_ARFCN_CH_to_TxFreq( rf_band, arfcn );
+/*MT6166*/
+/*MT6166*/    if( rf_band < FrequencyBand1800 )
+/*MT6166*/       DCO4G_freq = 4*CH_freq;  
+/*MT6166*/    else
+/*MT6166*/       DCO4G_freq = 2*CH_freq;  
+/*MT6166*/
+/*MT6166*/    Nint  = ( (DCO4G_freq<<15) - 64*DCO4G_freq + 64*TX_DCXO_FREQ*92 ) / (TX_DCXO_FREQ<<15);
+/*MT6166*/    Nfrac = ( ( ( (DCO4G_freq<<15) - 64*DCO4G_freq + 64*TX_DCXO_FREQ*92 - ((Nint*TX_DCXO_FREQ)<<15) )<<8 ) + TX_DCXO_FREQ/2 )/TX_DCXO_FREQ;  //+TX_DCXO_FREQ/2 is for rounding
+/*MT6166*/
+/*MT6166*/ #if IS_DUAL_LOOP_AFC_CONTROL_SUPPORT
+/*MT6166*/    if( l1d_rf.is_lock_dcxo )
+/*MT6166*/    {  L1D_RF_CompensateSXSetting( &Nint, &Nfrac, l1d_rf.tx_nfracoffset, 1 );  }
+/*MT6166*/ #endif
+/*MT6166*/
+/*MT6166*/    /* CW98, N_INT1[7:0], N_RFC1[22:11] */
+/*MT6166*/    *rfN = BSI_CW( 0x62, ((Nint &0xFF)<<12) | (Nfrac>>11) );
+/*MT6166*/    /* CW99, N_FRAC1[10:0], NOFFSET_REV[3:0], STX_DCO_SCAK_NOFFSET[2:0], STX_MMD_SDM_DI_LS[1:0] */
+/*MT6166*/    *ifN = BSI_CW( 0x63, ((Nfrac&0x7FF)<<9) | (POR_CW99&0x1FF) );
+/*MT6166*/
+/*MT6166*/ }
+/*MT6166*/ /* =========================================================================== */
+/*MT6166*/
+#endif
+
+#if IS_RF_MT6165
+/*MT6165*/ //For DLIF mode
+/*MT6165*/ void  L1D_RF_Cal_Synthesizer_Params( unsigned short* Nint, unsigned long* Nfrac, unsigned long  VCO_freq )
+/*MT6165*/ {
+/*MT6165*/    *Nint  = VCO_freq/(RX_DCXO_FREQ*DLIF_SCALE);
+/*MT6165*/    //+195/2 is for rounding, 195=13*3*5, 5 is SYNTH_SCALE, 13 and 3 are related to DLIF
+/*MT6165*/    *Nfrac = ( ((VCO_freq-*Nint*RX_DCXO_FREQ*DLIF_SCALE)<<15) + (195)/2 )/195;
+/*MT6165*/ }
+/*MT6165*/ /* =========================================================================== */
+/*MT6165*/
+/*MT6165*/ char  L1D_RF_Cal_IF_Synth_State( void )
+/*MT6165*/ {
+/*MT6165*/ #if IS_W_CANCELLATION_SUPPORT
+/*MT6165*/    if( L1D_CheckIfMetaMode() )
+/*MT6165*/    {  return l1d_rf.if_state;  }
+/*MT6165*/    else
+/*MT6165*/    {  return 0;  }
+/*MT6165*/ #else
+/*MT6165*/    return 0;
+/*MT6165*/ #endif
+/*MT6165*/ }
+/*MT6165*/ /* =========================================================================== */
+/*MT6165*/
+/*MT6165*/ void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6165*/ {  long *if_sel = ifN+1;
+/*MT6165*/    unsigned short Nint =0, CH_freq =0;
+/*MT6165*/    unsigned long  Nfrac=0, VCO_freq=0;
+/*MT6165*/    unsigned long  frac_spurs_thd0=0, frac_spurs_thd1=0;
+/*MT6165*/    unsigned char  IF_state=0;   //IF_state=0:default, IF_state=1:+IF, IF_state=2:-IF
+/*MT6165*/
+/*MT6165*/    IF_state = L1D_RF_Cal_IF_Synth_State();
+/*MT6165*/
+/*MT6165*/    CH_freq = L1D_RF_ARFCN_CH_to_RxFreq( rf_band, arfcn );
+/*MT6165*/
+/*MT6165*/    if( IF_state != 2 )
+/*MT6165*/    {
+/*MT6165*/       *if_sel = 0;
+/*MT6165*/ #if IS_W_CANCELLATION_SUPPORT
+/*MT6165*/       l1d_rf.if_sel_Nif_wc = 0;
+/*MT6165*/ #endif
+/*MT6165*/       if( rf_band < FrequencyBand1800 )
+/*MT6165*/       {
+/*MT6165*/          VCO_freq = 4*(CH_freq*DLIF_SCALE - DLIF);  //High-side mixing
+/*MT6165*/          frac_spurs_thd0 = 193584;
+/*MT6165*/          frac_spurs_thd1 = 8195024;
+/*MT6165*/       }
+/*MT6165*/       else
+/*MT6165*/       {
+/*MT6165*/          VCO_freq = 2*(CH_freq*DLIF_SCALE - DLIF);  //High-side mixing
+/*MT6165*/          frac_spurs_thd0 = 96792;
+/*MT6165*/          frac_spurs_thd1 = 8291816;
+/*MT6165*/       }
+/*MT6165*/       L1D_RF_Cal_Synthesizer_Params( &Nint, &Nfrac, VCO_freq );
+/*MT6165*/    }
+/*MT6165*/
+/*MT6165*/    if( IF_state != 1 )
+/*MT6165*/    {
+/*MT6165*/       // use +IF channel instead of -IF for IRR calibration
+/*MT6165*/       if( ( Nfrac < frac_spurs_thd0 ) || ( Nfrac > frac_spurs_thd1) || ( Nfrac < 4258832 && Nfrac > 4129776 ) || ( IF_state == 2 ) )
+/*MT6165*/       {
+/*MT6165*/          *if_sel = 0;
+/*MT6165*/ #if IS_W_CANCELLATION_SUPPORT
+/*MT6165*/          l1d_rf.if_sel_Nif_wc = 1;
+/*MT6165*/ #endif
+/*MT6165*/          if( rf_band < FrequencyBand1800 )
+/*MT6165*/          {  VCO_freq = 4*(CH_freq*DLIF_SCALE - DLIF);  }  //use High-side mixing instead of Low-side for MT6165
+/*MT6165*/          else
+/*MT6165*/          {  VCO_freq = 2*(CH_freq*DLIF_SCALE - DLIF);  }  //use High-side mixing instead of Low-side for MT6165
+/*MT6165*/
+/*MT6165*/          L1D_RF_Cal_Synthesizer_Params( &Nint, &Nfrac, VCO_freq );
+/*MT6165*/       }
+/*MT6165*/
+/*MT6165*/    }
+/*MT6165*/
+/*MT6165*/ #if IS_OBB_DETECTION_SUPPORT
+/*MT6165*/    if( !L1D_CheckIfMetaMode() )
+/*MT6165*/    {
+/*MT6165*/       if( l1d_rf.if_change == -1 && arfcn == l1d_rf.obb_arfcn )
+/*MT6165*/       {
+/*MT6165*/          signed short if_sign = l1d_rf.if_change*(*if_sel*2-1);
+/*MT6165*/
+/*MT6165*/          *if_sel = if_sign > 0 ? 1 : 0;
+/*MT6165*/          if( rf_band < FrequencyBand1800 )
+/*MT6165*/          {  VCO_freq = 4*(CH_freq*DLIF_SCALE + if_sign*DLIF);  }
+/*MT6165*/          else
+/*MT6165*/          {  VCO_freq = 2*(CH_freq*DLIF_SCALE + if_sign*DLIF);  }
+/*MT6165*/
+/*MT6165*/          L1D_RF_Cal_Synthesizer_Params( &Nint, &Nfrac, VCO_freq );
+/*MT6165*/       }
+/*MT6165*/    }
+/*MT6165*/ #endif
+/*MT6165*/
+/*MT6165*/    /* CW181, SRX_NINT[7:0], SRX_NRFC[22:11] */
+/*MT6165*/    *rfN = BSI_CW( 0xB5, ((Nint &0xFF)<<12) | ((Nfrac>>11)&0xFFF) );
+/*MT6165*/    /* CW182, SRX_NFRAC[10:0], DA_OFFSET[7:0], DI_EN */
+/*MT6165*/    *ifN = BSI_CW( 0xB6, ((Nfrac&0x7FF)<<9) | (POR_CW182&0x1) ); // Keep DA_OFFSET=0x0 and setup at L1D_RF_SetSData_SR1()
+/*MT6165*/
+/*MT6165*/ }
+/*MT6165*/ /* =========================================================================== */
+/*MT6165*/
+/*MT6165*/ void L1D_RF_SplitRxPLLSetting(unsigned long rfN, unsigned long ifN, unsigned short *Nint, unsigned long *Nfrac)
+/*MT6165*/ {
+/*MT6165*/    *Nint  = (rfN&(0xFF<<12))>>12;
+/*MT6165*/    *Nfrac = ( (rfN&0xFFF)<<11 ) | ( (ifN&(0x7FF<<9))>>9 );
+/*MT6165*/ }
+/*MT6165*/ /* =========================================================================== */
+/*MT6165*/
+/*MT6165*/ void L1D_RF_AdjustRxPLLSetting(unsigned short Nint, unsigned long Nfrac, signed long NfracOffset, unsigned long *rfN, unsigned long *ifN )
+/*MT6165*/ {
+/*MT6165*/    L1D_RF_CompensateSXSetting( &Nint, &Nfrac, NfracOffset, 0 );
+/*MT6165*/
+/*MT6165*/    /* CW181, SRX_NINT[7:0], SRX_NRFC[22:11] */
+/*MT6165*/    *rfN = BSI_CW( 0xB5, ((Nint &0xFF)<<12) | ((Nfrac>>11)&0xFFF) );
+/*MT6165*/    /* CW182, SRX_NFRAC[10:0], DA_OFFSET[7:0], DI_EN */
+/*MT6165*/    *ifN = BSI_CW( 0xB6, ((Nfrac&0x7FF)<<9) | ((*ifN)&0x1FF) );
+/*MT6165*/ }
+/*MT6165*/ /* =========================================================================== */
+/*MT6165*/
+/*MT6165*/ void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6165*/ {
+/*MT6165*/    unsigned short Nint =0, CH_freq =0;
+/*MT6165*/    unsigned long  Nfrac=0, VCO_freq=0;
+/*MT6165*/
+/*MT6165*/
+/*MT6165*/    l1d_rf2.arfcn = arfcn;  //for L1D_RF_TxGainSetting
+/*MT6165*/    CH_freq = L1D_RF_ARFCN_CH_to_TxFreq( rf_band, arfcn );
+/*MT6165*/
+/*MT6165*/    if( rf_band < FrequencyBand1800 )
+/*MT6165*/       VCO_freq = 4*CH_freq;
+/*MT6165*/    else
+/*MT6165*/       VCO_freq = 2*CH_freq;
+/*MT6165*/
+/*MT6165*/    Nint  = VCO_freq/TX_DCXO_FREQ;
+/*MT6165*/    Nfrac = ( ((VCO_freq-Nint*TX_DCXO_FREQ)<<23) + TX_DCXO_FREQ/2 )/TX_DCXO_FREQ;  //+TX_DCXO_FREQ/2 is for rounding
+/*MT6165*/
+/*MT6165*/    /* CW181, SRX_NINT[7:0], SRX_NRFC[22:11] */
+/*MT6165*/    *rfN = BSI_CW( 0xB5, ((Nint &0xFF)<<12) | ((Nfrac>>11)&0xFFF) );
+/*MT6165*/    /* CW182, SRX_NFRAC[10:0], DA_OFFSET[7:0], DI_EN */
+/*MT6165*/    *ifN = BSI_CW( 0xB6, ((Nfrac&0x7FF)<<9) | (POR_CW182&0x1) ); // Keep DA_OFFSET=0x0 and setup at L1D_RF_SetSData_ST1()
+/*MT6165*/
+/*MT6165*/ }
+/*MT6165*/ /* =========================================================================== */
+/*MT6165*/
+/*MT6165*/ void L1D_RF_SplitTxPLLSetting(unsigned long rfN, unsigned long ifN, unsigned short *Nint, unsigned long *Nfrac)
+/*MT6165*/ {
+/*MT6165*/    *Nint  = (rfN&(0xFF<<12))>>12;
+/*MT6165*/    *Nfrac = ( (rfN&0xFFF)<<11 ) | ( (ifN&(0x7FF<<9))>>9 );
+/*MT6165*/ }
+/*MT6165*/ /* =========================================================================== */
+/*MT6165*/
+/*MT6165*/ void L1D_RF_AdjustTxPLLSetting(unsigned short Nint, unsigned long Nfrac, signed long NfracOffset, unsigned long *rfN, unsigned long *ifN )
+/*MT6165*/ {
+/*MT6165*/    L1D_RF_CompensateSXSetting( &Nint, &Nfrac, NfracOffset, 1 );
+/*MT6165*/
+/*MT6165*/    /* CW181, SRX_NINT[7:0], SRX_NRFC[22:11] */
+/*MT6165*/    *rfN = BSI_CW( 0xB5, ((Nint &0xFF)<<12) | ((Nfrac>>11)&0xFFF) );
+/*MT6165*/    /* CW182, SRX_NFRAC[10:0], DA_OFFSET[7:0], DI_EN */
+/*MT6165*/    *ifN = BSI_CW( 0xB6, ((Nfrac&0x7FF)<<9) | ((*ifN)&0x1FF) );
+/*MT6165*/ }
+/*MT6165*/ /* =========================================================================== */
+/*MT6165*/
+/*MT6165*/ void L1D_RF_CompensateSXSetting( unsigned short *Nint, unsigned long *Nfrac, signed long NfracOffset, unsigned char is_TX)
+/*MT6165*/ {
+/*MT6165*/    signed long Max_Nfrac=0;
+/*MT6165*/    if( is_TX )
+/*MT6165*/    {  Max_Nfrac = STX_MAX_NFRAC;  }
+/*MT6165*/    else
+/*MT6165*/    {  Max_Nfrac = SRX_MAX_NFRAC;  }
+/*MT6165*/
+/*MT6165*/    //Calculate new Nfrac and Nint
+/*MT6165*/    *Nfrac  += (NfracOffset + Max_Nfrac);
+/*MT6165*/    if( *Nfrac < Max_Nfrac )
+/*MT6165*/    {  (*Nint)--;
+/*MT6165*/    }
+/*MT6165*/    else if( *Nfrac >= (Max_Nfrac<<1) )
+/*MT6165*/    {  (*Nint)++;
+/*MT6165*/       *Nfrac = *Nfrac - (Max_Nfrac<<1);
+/*MT6165*/    }
+/*MT6165*/    else
+/*MT6165*/    {  *Nfrac-= Max_Nfrac;
+/*MT6165*/    }
+/*MT6165*/ }
+/*MT6165*/ /* =========================================================================== */
+/*MT6165*/
+/*MT6165*/ unsigned short L1D_RF_ARFCN_CH_to_RxFreq( int rf_band, int arfcn )
+/*MT6165*/ {
+/*MT6165*/    unsigned short freq=4450+225;
+/*MT6165*/    switch( rf_band )
+/*MT6165*/    {
+/*MT6165*/       case  FrequencyBand850 :
+/*MT6165*/       {
+/*MT6165*/          freq=4121+(arfcn-128)+225;     //freq = f_ch*SYNTH_SCALE
+/*MT6165*/          break;
+/*MT6165*/       }
+/*MT6165*/       case  FrequencyBand900 :
+/*MT6165*/       {
+/*MT6165*/          if( arfcn<=124 )
+/*MT6165*/          {  freq=4450+arfcn+225;  }
+/*MT6165*/          else
+/*MT6165*/          {  freq=4450+(arfcn-1024)+225;  }
+/*MT6165*/          break;
+/*MT6165*/       }
+/*MT6165*/       case  FrequencyBand1800 :
+/*MT6165*/       {
+/*MT6165*/          freq=8551+(arfcn-512)+475;
+/*MT6165*/          break;
+/*MT6165*/       }
+/*MT6165*/       case  FrequencyBand1900 :
+/*MT6165*/       {
+/*MT6165*/          freq=9251+(arfcn-512)+400;
+/*MT6165*/          break;
+/*MT6165*/       }
+/*MT6165*/       default :
+/*MT6165*/       {
+/*MT6165*/          break;
+/*MT6165*/       }
+/*MT6165*/    }
+/*MT6165*/
+/*MT6165*/    return freq;
+/*MT6165*/ }
+/*MT6165*/ /* =========================================================================== */
+/*MT6165*/
+/*MT6165*/ unsigned short L1D_RF_ARFCN_CH_to_TxFreq( int rf_band, int arfcn )
+/*MT6165*/ {
+/*MT6165*/    unsigned short freq=4450;
+/*MT6165*/    switch( rf_band )
+/*MT6165*/    {
+/*MT6165*/       case  FrequencyBand850 :
+/*MT6165*/       {
+/*MT6165*/          freq=4121+(arfcn-128);     //freq = f_ch*SYNTH_SCALE
+/*MT6165*/          break;
+/*MT6165*/       }
+/*MT6165*/       case  FrequencyBand900 :
+/*MT6165*/       {
+/*MT6165*/          if( arfcn<=124 )
+/*MT6165*/          {  freq=4450+arfcn;  }
+/*MT6165*/          else
+/*MT6165*/          {  freq=4450+(arfcn-1024);  }
+/*MT6165*/          break;
+/*MT6165*/       }
+/*MT6165*/       case  FrequencyBand1800 :
+/*MT6165*/       {
+/*MT6165*/          freq=8551+(arfcn-512);
+/*MT6165*/          break;
+/*MT6165*/       }
+/*MT6165*/       case  FrequencyBand1900 :
+/*MT6165*/       {
+/*MT6165*/          freq=9251+(arfcn-512);
+/*MT6165*/          break;
+/*MT6165*/       }
+/*MT6165*/       default :
+/*MT6165*/       {
+/*MT6165*/          break;
+/*MT6165*/       }
+/*MT6165*/    }
+/*MT6165*/
+/*MT6165*/    return freq;
+/*MT6165*/ }
+/*MT6165*/ /* =========================================================================== */
+/*MT6165*/
+/*MT6165*/ unsigned short L1D_RF_GetSxDCOSCACodeTypeSetting(unsigned short Nint, unsigned long  Nfrac)
+/*MT6165*/ {
+/*MT6165*/    char segment=3, LUT_num=11, offset=15; // LUT method related parameters
+/*MT6165*/    signed short TXDCO_LUT[11]={1625, 1307, 1040, 818, 628, 467, 328, 208, 102, 11, -30};  // SXDCO LUT
+/*MT6165*/    short idx, x_axis, code_type;  // code_type value for SCA calibration (code_type > 0)
+/*MT6165*/
+/*MT6165*/ #if IS_DUAL_LOOP_AFC_CONTROL_SUPPORT
+/*MT6165*/    if( l1d_rf.is_lock_dcxo )
+/*MT6165*/    {  L1D_RF_CompensateSXSetting( &Nint, &Nfrac, -l1d_rf.tx_nfracoffset, 1 );  }
+/*MT6165*/ #endif
+/*MT6165*/
+/*MT6165*/    /* STX DCO SCA Typical Code LUT */
+/*MT6165*/    idx = (Nint>>segment)-((short)offset);
+/*MT6165*/    if(idx<0)
+/*MT6165*/       idx = 0;
+/*MT6165*/    else if(idx>(LUT_num-2))
+/*MT6165*/       idx = LUT_num-2;
+/*MT6165*/
+/*MT6165*/    x_axis      = ((Nint-((Nint>>segment)<<segment))<<3)+((short)(Nfrac>>20));
+/*MT6165*/    code_type   = TXDCO_LUT[idx]+ ((x_axis*(TXDCO_LUT[idx+1]-TXDCO_LUT[idx]))>>(segment+3));
+/*MT6165*/    code_type <<= 1;
+/*MT6165*/
+/*MT6165*/    return code_type;
+/*MT6165*/ }
+/*MT6165*/ /* =========================================================================== */
+/*MT6165*/
+/*MT6165*/ unsigned short L1D_RF_GetTxDEMChunkSetting(int rf_band, unsigned short Nint)
+/*MT6165*/ {
+/*MT6165*/    unsigned short DEM_Chunk_L1;
+/*MT6165*/    unsigned short OUT_G, OUT_E;
+/*MT6165*/    char segment_dem=4, LUT_num_dem=4, offset_dem=7;     // LUT method related parameters
+/*MT6165*/    signed short DEM_chunk_G_LUT[4]={15, 10,  7,  5};  // DEM chunk GMSK LUT
+/*MT6165*/    signed short DEM_chunk_E_LUT[4]={69, 46, 33, 24};  // DEM chunk EPSK LUT
+/*MT6165*/    short idx;
+/*MT6165*/
+/*MT6165*/    /* STX DEM CHUNK LUT */
+/*MT6165*/    idx = (Nint>>segment_dem)-((short)offset_dem);
+/*MT6165*/    if(idx<0)
+/*MT6165*/       idx = 0;
+/*MT6165*/    else if(idx>(LUT_num_dem-2))
+/*MT6165*/       idx = LUT_num_dem-2;
+/*MT6165*/
+/*MT6165*/    OUT_G = DEM_chunk_G_LUT[idx]+(((Nint-((Nint>>segment_dem)<<segment_dem))*(DEM_chunk_G_LUT[idx+1]-DEM_chunk_G_LUT[idx]))>>(segment_dem));
+/*MT6165*/    OUT_E = DEM_chunk_E_LUT[idx]+(((Nint-((Nint>>segment_dem)<<segment_dem))*(DEM_chunk_E_LUT[idx+1]-DEM_chunk_E_LUT[idx]))>>(segment_dem));
+/*MT6165*/
+/*MT6165*/    if( ( (l1d_rf.tx_mod_type2)^(l1d_rf.tx_mod_type2<<1) ) & 0xE )   // IS_MIXED_MULTISLOT
+/*MT6165*/    {
+/*MT6165*/       if( rf_band < FrequencyBand1800 )
+/*MT6165*/          DEM_Chunk_L1 = ((OUT_E+OUT_G+5)>40) ? (OUT_E+OUT_G+5) : 40;
+/*MT6165*/       else
+/*MT6165*/          DEM_Chunk_L1 = 40;
+/*MT6165*/    }
+/*MT6165*/    else
+/*MT6165*/    {
+/*MT6165*/       if( (l1d_rf.tx_mod_type2 != 0) && (rf_band < FrequencyBand1800) )
+/*MT6165*/          DEM_Chunk_L1 = ((2*OUT_E+6)>40) ? (2*OUT_E+6) : 40;
+/*MT6165*/       else
+/*MT6165*/          DEM_Chunk_L1 = 40;
+/*MT6165*/    }
+/*MT6165*/    return DEM_Chunk_L1;
+/*MT6165*/ }
+/*MT6165*/ /* =========================================================================== */
+/*MT6165*/
+/*MT6165*/ void L1D_RF_GetTxKDCOCAL2ndSetting(int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6165*/ {
+/*MT6165*/    unsigned short Nint =0, CH_freq =0;
+/*MT6165*/    unsigned long  Nfrac=0, DCO4G_freq=0, NCal=64;
+/*MT6165*/    signed   long  Nfrac1Offset=0;
+/*MT6165*/    unsigned short KDCO_NCAL_LUT[4]={64, 96, 16, 32};
+/*MT6165*/
+/*MT6165*/    CH_freq = L1D_RF_ARFCN_CH_to_TxFreq( rf_band, arfcn );
+/*MT6165*/    NCal    = KDCO_NCAL_LUT[((POR_CW188>>6)&0x3)];
+/*MT6165*/
+/*MT6165*/    if( rf_band < FrequencyBand1800 )
+/*MT6165*/       DCO4G_freq = 4*CH_freq;
+/*MT6165*/    else
+/*MT6165*/       DCO4G_freq = 2*CH_freq;
+/*MT6165*/
+/*MT6165*/    Nint  = ( (DCO4G_freq<<15) - NCal*DCO4G_freq + NCal*TX_DCXO_FREQ*92 ) / (TX_DCXO_FREQ<<15);
+/*MT6165*/    Nfrac = ( ( ( (DCO4G_freq<<15) - NCal*DCO4G_freq + NCal*TX_DCXO_FREQ*92 - ((Nint*TX_DCXO_FREQ)<<15) )<<8 ) + TX_DCXO_FREQ/2 )/TX_DCXO_FREQ;  //+TX_DCXO_FREQ/2 is for rounding
+/*MT6165*/
+/*MT6165*/ #if IS_DUAL_LOOP_AFC_CONTROL_SUPPORT
+/*MT6165*/    if( l1d_rf.is_lock_dcxo )
+/*MT6165*/    {  Nfrac1Offset = l1d_rf.tx_nfracoffset - ((((signed long)NCal)*l1d_rf.tx_nfracoffset)>>15);
+/*MT6165*/       L1D_RF_CompensateSXSetting( &Nint, &Nfrac, Nfrac1Offset, 1 );
+/*MT6165*/    }
+/*MT6165*/ #endif
+/*MT6165*/
+/*MT6165*/    /* CW183, N_INT1[7:0], N_FRFC1[22:11] */
+/*MT6165*/    *rfN = BSI_CW( 0xB7, ((Nint &0xFF)<<12) | (Nfrac>>11) );
+/*MT6165*/    /* CW184, N_FRAC1[10:0], NOFFSET_REV[2:0], STX_DCO_SCAK_NOFFSET[3:0], STX_MMD_SDM_DI_LS[1:0] */
+/*MT6165*/    *ifN = BSI_CW( 0xB8, ((Nfrac&0x7FF)<<9) | (POR_CW184&0x1FF) );
+/*MT6165*/    (void) Nfrac1Offset;
+/*MT6165*/
+/*MT6165*/ }
+/*MT6165*/ /* =========================================================================== */
+/*MT6165*/
+/*MT6165*/ unsigned short L1D_RF_GetSxDAoffsetSetting(unsigned long rfn)
+/*MT6165*/ {
+/*MT6165*/    unsigned short Nint        = ((rfn>>12)&0xFF);
+/*MT6165*/    unsigned long  Nfrac_round = ((rfn>>11)&0x1);  // Check if (Nfrac*2^23)>0.5 by Nfrac[22]
+/*MT6165*/    return (Nint+Nfrac_round-10);
+/*MT6165*/ }
+/*MT6165*/ /* =========================================================================== */
+/*MT6165*/
+/*MT6165*/ unsigned short L1D_RF_GetSCAKNoffsetSetting(unsigned short Nint)
+/*MT6165*/ {
+/*MT6165*/    unsigned short SCAK_NOFFSET;
+/*MT6165*/    if( Nint<100 )
+/*MT6165*/    {  SCAK_NOFFSET = 0;   }
+/*MT6165*/    else if( Nint>227)
+/*MT6165*/    {  SCAK_NOFFSET = 127; }
+/*MT6165*/    else
+/*MT6165*/    {  SCAK_NOFFSET = Nint-100;  }
+/*MT6165*/
+/*MT6165*/    return (SCAK_NOFFSET>>3);
+/*MT6165*/ }
+/*MT6165*/ /* =========================================================================== */
+/*MT6165*/
+#endif
+
+#if IS_RF_MT6176
+/*MT6176*/ //For DLIF mode
+/*MT6176*/ char  L1D_RF_Cal_IF_Synth_State( void )
+/*MT6176*/ {
+   #if IS_W_CANCELLATION_SUPPORT
+/*MT6176*/    if( L1D_CheckIfMetaMode() )
+/*MT6176*/    {  return l1d_rf.if_state;  }
+/*MT6176*/    else
+/*MT6176*/    {  return 0;  }
+   #else
+/*MT6176*/    return 0;
+   #endif
+/*MT6176*/ }
+/*MT6176*/ /* =========================================================================== */
+/*MT6176*/
+/*MT6176*/ void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6176*/ {  long *if_sel = ifN+1;
+/*MT6176*/    unsigned short Nint =0, CH_freq =0;
+/*MT6176*/    unsigned long  Nfrac=0, VCO_freq=0;
+/*MT6176*/    unsigned char  SRX_REF_SEL=1, SRX_CAL_EN=1, SRX_CAL_IMM=0, SRX_VCO1_SEL=1, SRX_VCO_CFG=5;
+/*MT6176*/    unsigned short FREF_SRX[2]        = {26, 52};
+/*MT6176*/    unsigned short multiplier[2]      = {15, 14};
+/*MT6176*/
+/*MT6176*/    CH_freq = L1D_RF_ARFCN_CH_to_RxFreq( rf_band, arfcn );
+/*MT6176*/
+/*MT6176*/    {
+/*MT6176*/       *if_sel = 0;
+/*MT6176*/       if( rf_band < FrequencyBand1800 )
+/*MT6176*/       {
+/*MT6176*/          VCO_freq = 4*(CH_freq*DLIF_SCALE - DLIF);  //High-side mixing
+/*MT6176*/       }
+/*MT6176*/       else
+/*MT6176*/       {
+/*MT6176*/          VCO_freq = 2*(CH_freq*DLIF_SCALE - DLIF);  //High-side mixing
+/*MT6176*/       }
+/*MT6176*/    }
+/*MT6176*/
+/*MT6176*/    Nint  = VCO_freq/(FREF_SRX[SRX_REF_SEL]*SYNTH_SCALE*DLIF_SCALE);
+/*MT6176*/    //+195/2 is for rounding, 195=13*3*5, 5 is SYNTH_SCALE, 13 and 3 are related to DLIF
+/*MT6176*/    Nfrac = ( ((VCO_freq-Nint*FREF_SRX[SRX_REF_SEL]*SYNTH_SCALE*DLIF_SCALE)<<multiplier[SRX_REF_SEL]) + (195)/2 )/195;
+/*MT6176*/
+/*MT6176*/
+/*MT6176*/    /* CW130, N_INT[8:0], N_FRFC[22:12] */
+/*MT6176*/    *rfN = BSI_CW( 0x082, (((Nint&0x1FF)<<11)|((Nfrac>>12)&0x7FF)) );
+/*MT6176*/    /* CW131, N_FRAC[11:0], REF_DOUBLER_EN, SRX_CAL_EN, SRX_CAL_IMM, SRX_VCO_SEL, SRX_VCO_CFG */
+/*MT6176*/    *ifN = BSI_CW( 0x083, ((Nfrac&0xFFF)<<8)|((SRX_REF_SEL&0x1)<<7)|((SRX_CAL_EN&0x1)<<5)|((SRX_CAL_IMM&0x1)<<4)|((SRX_VCO1_SEL&0x1)<<3)|(SRX_VCO_CFG&0x7));
+/*MT6176*/ }
+/*MT6176*/ /* =========================================================================== */
+/*MT6176*/
+/*MT6176*/ void L1D_RF_SplitRxPLLSetting(unsigned long rfN, unsigned long ifN, unsigned short *Nint, unsigned long *Nfrac)
+/*MT6176*/ {
+/*MT6176*/    *Nint  = ((rfN>>11)&0x1FF);
+/*MT6176*/    *Nfrac = ((rfN&0x7FF)<<12)|((ifN>>8)&0xFFF);
+/*MT6176*/ }
+/*MT6176*/ /* =========================================================================== */
+/*MT6176*/
+/*MT6176*/ void L1D_RF_AdjustRxPLLSetting(unsigned short Nint, unsigned long Nfrac, signed long NfracOffset, unsigned long *rfN, unsigned long *ifN )
+/*MT6176*/ {
+/*MT6176*/    L1D_RF_CompensateSXSetting( &Nint, &Nfrac, NfracOffset, 0 );
+/*MT6176*/
+/*MT6176*/    /* CW130, N_INT[8:0], N_FRFC[22:12] */
+/*MT6176*/    *rfN = BSI_CW( 0x082, (((Nint&0x1FF)<<11)|((Nfrac>>12)&0x7FF)) );
+/*MT6176*/    /* CW131, N_FRAC[11:0], REF_DOUBLER_EN, SRX_CAL_EN, SRX_CAL_IMM, SRX_VCO_SEL, SRX_VCO_CFG */
+/*MT6176*/    *ifN = BSI_CW( 0x083, ((Nfrac&0xFFF)<<8)|(*ifN&0xFF));
+/*MT6176*/ }
+/*MT6176*/ /* =========================================================================== */
+/*MT6176*/
+/*MT6176*/ void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6176*/ {
+/*MT6176*/    unsigned short Nint =0, CH_freq =0;
+/*MT6176*/    unsigned long  Nfrac=0, VCO_freq=0;
+/*MT6176*/    unsigned short MMD_SDM_DI_EN  = 0;  //keep POR = 0
+/*MT6176*/
+/*MT6176*/    l1d_rf2.arfcn = arfcn;  //for L1D_RF_TxGainSetting
+/*MT6176*/ #if IS_MIPI_SUPPORT 
+/*MT6176*/    l1d_mipi.tx_arfcn = arfcn;  //for L1D_RF_TxGainSetting
+/*MT6176*/ #endif
+/*MT6176*/    CH_freq = L1D_RF_ARFCN_CH_to_TxFreq( rf_band, arfcn );
+/*MT6176*/
+/*MT6176*/    if( rf_band < FrequencyBand1800 )
+/*MT6176*/       VCO_freq = 4*CH_freq;  
+/*MT6176*/    else
+/*MT6176*/       VCO_freq = 2*CH_freq;  
+/*MT6176*/
+/*MT6176*/    Nint    = VCO_freq/TX_DCXO_FREQ;
+/*MT6176*/    Nfrac   = ( ((VCO_freq-Nint*TX_DCXO_FREQ)<<23) + TX_DCXO_FREQ/2 )/TX_DCXO_FREQ;  //+TX_DCXO_FREQ/2 is for rounding
+/*MT6176*/
+/*MT6176*/ #if IS_DUAL_LOOP_AFC_CONTROL_SUPPORT
+/*MT6176*/    if( l1d_rf.is_lock_dcxo )
+/*MT6176*/    {  /* SW dithering after L1D_RF_AdjustTxPLLSetting() */  }
+/*MT6176*/    else
+/*MT6176*/ #endif
+/*MT6176*/    {  /* Apply SW dithering no matter it is integer channel or not */
+/*MT6176*/       Nfrac   = ( (Nfrac&0x1) == 0 ) ? Nfrac+1 : Nfrac; //always let LSB[0]=1
+/*MT6176*/    }
+/*MT6176*/
+/*MT6176*/    /* CW549, N_INT[7:0], N_RFC[22:11] */
+/*MT6176*/    *rfN = BSI_CW( 0x225, ((Nint &0xFF)<<12) | (Nfrac>>11) );
+/*MT6176*/    /* CW550, N_FRAC[10:0], DI_EN */
+/*MT6176*/    *ifN = BSI_CW( 0x226, ((Nfrac&0x7FF)<<9) | (MMD_SDM_DI_EN&0x1) );
+/*MT6176*/
+/*MT6176*/ }
+/*MT6176*/ /* =========================================================================== */
+/*MT6176*/
+/*MT6176*/ void L1D_RF_SplitTxPLLSetting(unsigned long rfN, unsigned long ifN, unsigned short *Nint, unsigned long *Nfrac)
+/*MT6176*/ {
+/*MT6176*/    *Nint  = (rfN&(0xFF<<12))>>12;
+/*MT6176*/    *Nfrac = ( (rfN&0xFFF)<<11 ) | ( (ifN&(0x7FF<<9))>>9 );
+/*MT6176*/ }
+/*MT6176*/ /* =========================================================================== */
+/*MT6176*/
+/*MT6176*/ void L1D_RF_AdjustTxPLLSetting(unsigned short Nint, unsigned long Nfrac, signed long NfracOffset, unsigned long *rfN, unsigned long *ifN )
+/*MT6176*/ {
+/*MT6176*/    L1D_RF_CompensateSXSetting( &Nint, &Nfrac, NfracOffset, 1 );
+/*MT6176*/
+/*MT6176*/    /* Apply SW dithering no matter it is integer channel or not */
+/*MT6176*/    Nfrac   = ( (Nfrac&0x1) == 0 ) ? Nfrac+1 : Nfrac; //always let LSB[0]=1
+/*MT6176*/
+/*MT6176*/    /* CW549, N_INT[7:0], N_RFC[22:11] */
+/*MT6176*/    *rfN = BSI_CW( 0x225, ((Nint &0xFF)<<12) | (Nfrac>>11) );
+/*MT6176*/    /* CW550, N_FRAC[10:0], DI_EN */
+/*MT6176*/    *ifN = BSI_CW( 0x226, ((Nfrac&0x7FF)<<9) |((*ifN)&0x1FF));
+/*MT6176*/ }
+/*MT6176*/ /* =========================================================================== */
+/*MT6176*/
+/*MT6176*/ void L1D_RF_CompensateSXSetting( unsigned short *Nint, unsigned long *Nfrac, signed long NfracOffset, unsigned char is_TX)
+/*MT6176*/ {
+/*MT6176*/    signed long Max_Nfrac=0;
+/*MT6176*/    if( is_TX )
+/*MT6176*/    {  Max_Nfrac = STX_MAX_NFRAC;  }
+/*MT6176*/    else
+/*MT6176*/    {  Max_Nfrac = SRX_MAX_NFRAC;  }
+/*MT6176*/    
+/*MT6176*/    //Calculate new Nfrac and Nint
+/*MT6176*/    *Nfrac  += (NfracOffset + Max_Nfrac);
+/*MT6176*/    if( *Nfrac < Max_Nfrac )
+/*MT6176*/    {  (*Nint)--;  
+/*MT6176*/    }
+/*MT6176*/    else if( *Nfrac >= (Max_Nfrac<<1) )
+/*MT6176*/    {  (*Nint)++;  
+/*MT6176*/       *Nfrac = *Nfrac - (Max_Nfrac<<1);
+/*MT6176*/    }
+/*MT6176*/    else
+/*MT6176*/    {  *Nfrac-= Max_Nfrac;
+/*MT6176*/    }
+/*MT6176*/ }
+/*MT6176*/ /* =========================================================================== */
+/*MT6176*/
+/*MT6176*/ unsigned short L1D_RF_ARFCN_CH_to_RxFreq( int rf_band, int arfcn )
+/*MT6176*/ {
+/*MT6176*/    unsigned short freq=4450+225;
+/*MT6176*/    switch( rf_band )
+/*MT6176*/    {
+/*MT6176*/       case  FrequencyBand850 :
+/*MT6176*/       {
+/*MT6176*/          freq=4121+(arfcn-128)+225;     //freq = f_ch*SYNTH_SCALE
+/*MT6176*/          break;
+/*MT6176*/       }
+/*MT6176*/       case  FrequencyBand900 :
+/*MT6176*/       {
+/*MT6176*/          if( arfcn<=124 )
+/*MT6176*/          {  freq=4450+arfcn+225;  }
+/*MT6176*/          else
+/*MT6176*/          {  freq=4450+(arfcn-1024)+225;  }
+/*MT6176*/          break;
+/*MT6176*/       }
+/*MT6176*/       case  FrequencyBand1800 :
+/*MT6176*/       {
+/*MT6176*/          freq=8551+(arfcn-512)+475;
+/*MT6176*/          break;
+/*MT6176*/       }
+/*MT6176*/       case  FrequencyBand1900 :
+/*MT6176*/       {
+/*MT6176*/          freq=9251+(arfcn-512)+400;
+/*MT6176*/          break;
+/*MT6176*/       }
+/*MT6176*/       default :
+/*MT6176*/       {
+/*MT6176*/          break;
+/*MT6176*/       }
+/*MT6176*/    }
+/*MT6176*/
+/*MT6176*/    return freq;
+/*MT6176*/ }
+/*MT6176*/ /* =========================================================================== */
+/*MT6176*/
+/*MT6176*/ unsigned short L1D_RF_ARFCN_CH_to_TxFreq( int rf_band, int arfcn )
+/*MT6176*/ {
+/*MT6176*/    unsigned short freq=4450;
+/*MT6176*/    switch( rf_band )
+/*MT6176*/    {
+/*MT6176*/       case  FrequencyBand850 :
+/*MT6176*/       {
+/*MT6176*/          freq=4121+(arfcn-128);     //freq = f_ch*SYNTH_SCALE
+/*MT6176*/          break;
+/*MT6176*/       }
+/*MT6176*/       case  FrequencyBand900 :
+/*MT6176*/       {
+/*MT6176*/          if( arfcn<=124 )
+/*MT6176*/          {  freq=4450+arfcn;  }
+/*MT6176*/          else
+/*MT6176*/          {  freq=4450+(arfcn-1024);  }
+/*MT6176*/          break;
+/*MT6176*/       }
+/*MT6176*/       case  FrequencyBand1800 :
+/*MT6176*/       {
+/*MT6176*/          freq=8551+(arfcn-512);
+/*MT6176*/          break;
+/*MT6176*/       }
+/*MT6176*/       case  FrequencyBand1900 :
+/*MT6176*/       {
+/*MT6176*/          freq=9251+(arfcn-512);
+/*MT6176*/          break;
+/*MT6176*/       }
+/*MT6176*/       default :
+/*MT6176*/       {
+/*MT6176*/          break;
+/*MT6176*/       }
+/*MT6176*/    }
+/*MT6176*/
+/*MT6176*/    return freq;
+/*MT6176*/ }
+/*MT6176*/ /* =========================================================================== */
+/*MT6176*/
+/*MT6176*/ unsigned short L1D_RF_GetTxDCOSCACodeTypeSetting(unsigned short Nint, unsigned long  Nfrac)
+/*MT6176*/ {
+/*MT6176*/    char segment_tx=3, LUT_num_tx=8, offset_tx=14; // LUT method related parameters
+/*MT6176*/    signed short TXDCO_LUT[8]={4830, 3611, 2617, 1796, 1110, 530, 37, -386};  // TXDCO LUT
+/*MT6176*/    short idx, x_axis, code_type;  // code_type value for SCA calibration (code_type > 0)
+/*MT6176*/
+/*MT6176*/ #if IS_DUAL_LOOP_AFC_CONTROL_SUPPORT
+/*MT6176*/    if( l1d_rf.is_lock_dcxo )
+/*MT6176*/    {  L1D_RF_CompensateSXSetting( &Nint, &Nfrac, -l1d_rf.tx_nfracoffset, 1 );  }
+/*MT6176*/ #endif
+/*MT6176*/
+/*MT6176*/    /* STX DCO SCA Typical Code LUT */
+/*MT6176*/    idx = (Nint>>segment_tx)-((short)offset_tx);
+/*MT6176*/    if(idx<0)
+/*MT6176*/    {  idx = 0;  }
+/*MT6176*/    else if(idx>(LUT_num_tx-2))
+/*MT6176*/    {  idx = LUT_num_tx-2;  }
+/*MT6176*/
+/*MT6176*/    x_axis      = ((Nint-((Nint>>segment_tx)<<segment_tx))<<3)+((short)(Nfrac>>20));
+/*MT6176*/    code_type   = TXDCO_LUT[idx]+ ((x_axis*(TXDCO_LUT[idx+1]-TXDCO_LUT[idx]))>>(segment_tx+3));
+/*MT6176*/
+/*MT6176*/    return code_type;
+/*MT6176*/ }
+/*MT6176*/ /* =========================================================================== */
+/*MT6176*/
+/*MT6176*/ void L1D_RF_GetTxKDCOCAL2ndSetting(int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6176*/ {
+/*MT6176*/    unsigned short Nint =0, CH_freq =0;
+/*MT6176*/    unsigned long  Nfrac=0, DCO4G_freq=0;
+/*MT6176*/    unsigned short KDCO_NCAL = 0x1;//(POR_CW559&(0x3<<9))>>9;
+/*MT6176*/    unsigned short NCAL[4] = {12, 24, 16, 32};
+/*MT6176*/
+/*MT6176*/    unsigned short DCO_SCAK_NOFFSET  = 0; //keep POR = 0
+/*MT6176*/    unsigned short MMD_SDM_DI_LS     = 0; //keep POR = 0
+/*MT6176*/      signed long  Nfrac1Offset      = 0;
+/*MT6176*/
+/*MT6176*/    CH_freq = L1D_RF_ARFCN_CH_to_TxFreq( rf_band, arfcn );
+/*MT6176*/
+/*MT6176*/    if( rf_band < FrequencyBand1800 )
+/*MT6176*/       DCO4G_freq = 4*CH_freq;  
+/*MT6176*/    else
+/*MT6176*/       DCO4G_freq = 2*CH_freq;  
+/*MT6176*/
+/*MT6176*/    Nint  = ( (DCO4G_freq<<15) - NCAL[KDCO_NCAL]*DCO4G_freq + NCAL[KDCO_NCAL]*TX_DCXO_FREQ*92 ) / (TX_DCXO_FREQ<<15);
+/*MT6176*/    Nfrac = ( ( ( (DCO4G_freq<<15) - NCAL[KDCO_NCAL]*DCO4G_freq + NCAL[KDCO_NCAL]*TX_DCXO_FREQ*92 - ((Nint*TX_DCXO_FREQ)<<15) )<<8 ) )/TX_DCXO_FREQ;  //floor
+/*MT6176*/
+/*MT6176*/ #if IS_DUAL_LOOP_AFC_CONTROL_SUPPORT
+/*MT6176*/    if( l1d_rf.is_lock_dcxo )
+/*MT6176*/    {  Nfrac1Offset = l1d_rf.tx_nfracoffset - ((((signed long)NCAL[KDCO_NCAL])*l1d_rf.tx_nfracoffset)>>15);
+/*MT6176*/       L1D_RF_CompensateSXSetting( &Nint, &Nfrac, Nfrac1Offset, 1 );
+/*MT6176*/    }
+/*MT6176*/ #endif
+/*MT6176*/
+/*MT6176*/    /* CW551, N_INT1[7:0], N_RFC1[22:11] */
+/*MT6176*/    *rfN = BSI_CW( 0x227, ((Nint &0xFF)<<12) | (Nfrac>>11) );
+/*MT6176*/    /* CW552, N_FRAC1[10:0], NOFFSET_REV[3:0], STX_DCO_SCAK_NOFFSET[2:0], STX_MMD_SDM_DI_LS[1:0] */
+/*MT6176*/    *ifN = BSI_CW( 0x228, ((Nfrac&0x7FF)<<9) | ((DCO_SCAK_NOFFSET&0xF)<<2) |(MMD_SDM_DI_LS&0x3) );
+/*MT6176*/
+/*MT6176*/ }
+/*MT6176*/
+/*MT6176*/ /* =========================================================================== */
+/*MT6176*/ unsigned short L1D_RF_GetTxDEMChunkSetting(int rf_band, unsigned short Nint)
+/*MT6176*/ {  
+/*MT6176*/    return 0;
+/*MT6176*/ }
+/*MT6176*/ /* =========================================================================== */
+/*MT6176*/
+#endif
+
+#if IS_RF_MT6179
+/*MT6179*/ //For DLIF mode
+/*MT6179*/ char  L1D_RF_Cal_IF_Synth_State( void )
+/*MT6179*/ {
+   #if IS_W_CANCELLATION_SUPPORT
+/*MT6179*/    if( L1D_CheckIfMetaMode() )
+/*MT6179*/    {  return l1d_rf.if_state;  }
+/*MT6179*/    else
+/*MT6179*/    {  return 0;  }
+   #else
+/*MT6179*/    return 0;
+   #endif
+/*MT6179*/ }
+/*MT6179*/ /* =========================================================================== */
+/*MT6179*/
+/*MT6179*/ void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6179*/ {  long *if_sel = ifN+1;
+/*MT6179*/    unsigned short Nint =0, CH_freq =0;
+/*MT6179*/    unsigned long  Nfrac=0, VCO_freq=0;
+/*MT6179*/    unsigned char  SRX_REF_SEL=1, SRX_VCO_INDSW_ON = 0, SRX_CAL_EN=1, SRX_CAL_IMM=0, SRX_VCO1_SEL=1, SRX_VCO_CFG=3;
+/*MT6179*/    unsigned short FREF_SRX[2]        = {26, 52};
+/*MT6179*/    unsigned short multiplier[2]      = {15, 14};
+/*MT6179*/
+/*MT6179*/    CH_freq = L1D_RF_ARFCN_CH_to_RxFreq( rf_band, arfcn );
+/*MT6179*/
+/*MT6179*/    {
+/*MT6179*/       *if_sel = 0;
+/*MT6179*/       if( rf_band < FrequencyBand1800 )
+/*MT6179*/       {
+/*MT6179*/          VCO_freq = 4*(CH_freq*DLIF_SCALE - DLIF);  //High-side mixing
+/*MT6179*/       }
+/*MT6179*/       else
+/*MT6179*/       {
+/*MT6179*/          VCO_freq = 2*(CH_freq*DLIF_SCALE - DLIF);  //High-side mixing
+/*MT6179*/       }
+/*MT6179*/    }
+/*MT6179*/
+/*MT6179*/    Nint  = VCO_freq/(FREF_SRX[SRX_REF_SEL]*SYNTH_SCALE*DLIF_SCALE);
+/*MT6179*/    //+195/2 is for rounding, 195=13*3*5, 5 is SYNTH_SCALE, 13 and 3 are related to DLIF
+/*MT6179*/    Nfrac = ( ((VCO_freq-Nint*FREF_SRX[SRX_REF_SEL]*SYNTH_SCALE*DLIF_SCALE)<<multiplier[SRX_REF_SEL]) + (195)/2 )/195;
+/*MT6179*/
+/*MT6179*/
+/*MT6179*/    /* CW130, N_INT[8:0], N_FRFC[22:12] */
+/*MT6179*/    *rfN = BSI_CW( 0x082, (((Nint&0x1FF)<<11)|((Nfrac>>12)&0x7FF)) );
+/*MT6179*/    /* CW131, N_FRAC[11:0], REF_DOUBLER_EN, SRX_CAL_EN, SRX_CAL_IMM, SRX_VCO_SEL, SRX_VCO_CFG */
+/*MT6179*/    *ifN = BSI_CW( 0x083, ((Nfrac&0xFFF)<<8)|((SRX_REF_SEL&0x1)<<7)|((SRX_VCO_INDSW_ON&0x1)<<6)| ((SRX_CAL_EN&0x1)<<5)|((SRX_CAL_IMM&0x1)<<4)|((SRX_VCO1_SEL&0x1)<<3)|(SRX_VCO_CFG&0x7));
+/*MT6179*/ }
+/*MT6179*/ /* =========================================================================== */
+/*MT6179*/
+/*MT6179*/ void L1D_RF_SplitRxPLLSetting(unsigned long rfN, unsigned long ifN, unsigned short *Nint, unsigned long *Nfrac)
+/*MT6179*/ {
+/*MT6179*/    *Nint  = ((rfN>>11)&0x1FF);
+/*MT6179*/    *Nfrac = ((rfN&0x7FF)<<12)|((ifN>>8)&0xFFF);
+/*MT6179*/ }
+/*MT6179*/ /* =========================================================================== */
+/*MT6179*/
+/*MT6179*/ void L1D_RF_AdjustRxPLLSetting(unsigned short Nint, unsigned long Nfrac, signed long NfracOffset, unsigned long *rfN, unsigned long *ifN )
+/*MT6179*/ {
+/*MT6179*/    L1D_RF_CompensateSXSetting( &Nint, &Nfrac, NfracOffset, 0 );
+/*MT6179*/
+/*MT6179*/    /* CW130, N_INT[8:0], N_FRFC[22:12] */
+/*MT6179*/    *rfN = BSI_CW( 0x082, (((Nint&0x1FF)<<11)|((Nfrac>>12)&0x7FF)) );
+/*MT6179*/    /* CW131, N_FRAC[11:0], REF_DOUBLER_EN, SRX_CAL_EN, SRX_CAL_IMM, SRX_VCO_SEL, SRX_VCO_CFG */
+/*MT6179*/    *ifN = BSI_CW( 0x083, ((Nfrac&0xFFF)<<8)|(*ifN&0xFF));
+/*MT6179*/ }
+/*MT6179*/ /* =========================================================================== */
+/*MT6179*/
+/*MT6179*/ void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6179*/ {
+/*MT6179*/    unsigned short Nint =0, CH_freq =0;
+/*MT6179*/    unsigned long  Nfrac=0, VCO_freq=0;
+/*MT6179*/    unsigned short MMD_SDM_DI_EN  = 0;  //keep POR = 0
+/*MT6179*/
+/*MT6179*/    l1d_rf2.arfcn = arfcn;  //for L1D_RF_TxGainSetting
+/*MT6179*/ #if IS_MIPI_SUPPORT 
+/*MT6179*/    l1d_mipi.tx_arfcn = arfcn;  //for L1D_RF_TxGainSetting
+/*MT6179*/ #endif
+/*MT6179*/    CH_freq = L1D_RF_ARFCN_CH_to_TxFreq( rf_band, arfcn );
+/*MT6179*/
+/*MT6179*/    if( rf_band < FrequencyBand1800 )
+/*MT6179*/       VCO_freq = 4*CH_freq;  
+/*MT6179*/    else
+/*MT6179*/       VCO_freq = 2*CH_freq;  
+/*MT6179*/
+/*MT6179*/    Nint    = VCO_freq/TX_DCXO_FREQ;
+/*MT6179*/    Nfrac   = ( ((VCO_freq-Nint*TX_DCXO_FREQ)<<23) + TX_DCXO_FREQ/2 )/TX_DCXO_FREQ;  //+TX_DCXO_FREQ/2 is for rounding
+/*MT6179*/
+/*MT6179*/ #if IS_DUAL_LOOP_AFC_CONTROL_SUPPORT
+/*MT6179*/    if( l1d_rf.is_lock_dcxo )
+/*MT6179*/    {  /* SW dithering after L1D_RF_AdjustTxPLLSetting() */  }
+/*MT6179*/    else
+/*MT6179*/ #endif
+/*MT6179*/    {  /* Apply SW dithering no matter it is integer channel or not */
+/*MT6179*/       Nfrac   = ( (Nfrac&0x1) == 0 ) ? Nfrac+1 : Nfrac; //always let LSB[0]=1
+/*MT6179*/    }
+/*MT6179*/
+/*MT6179*/    /* CW549, N_INT[7:0], N_RFC[22:11] */
+/*MT6179*/    *rfN = BSI_CW( 0x225, ((Nint &0xFF)<<12) | (Nfrac>>11) );
+/*MT6179*/    /* CW550, N_FRAC[10:0], DI_EN */
+/*MT6179*/    *ifN = BSI_CW( 0x226, ((Nfrac&0x7FF)<<9) | (MMD_SDM_DI_EN&0x1) );
+/*MT6179*/
+/*MT6179*/ }
+/*MT6179*/ /* =========================================================================== */
+/*MT6179*/
+/*MT6179*/ void L1D_RF_SplitTxPLLSetting(unsigned long rfN, unsigned long ifN, unsigned short *Nint, unsigned long *Nfrac)
+/*MT6179*/ {
+/*MT6179*/    *Nint  = (rfN&(0xFF<<12))>>12;
+/*MT6179*/    *Nfrac = ( (rfN&0xFFF)<<11 ) | ( (ifN&(0x7FF<<9))>>9 );
+/*MT6179*/ }
+/*MT6179*/ /* =========================================================================== */
+/*MT6179*/
+/*MT6179*/ void L1D_RF_AdjustTxPLLSetting(unsigned short Nint, unsigned long Nfrac, signed long NfracOffset, unsigned long *rfN, unsigned long *ifN )
+/*MT6179*/ {
+/*MT6179*/    L1D_RF_CompensateSXSetting( &Nint, &Nfrac, NfracOffset, 1 );
+/*MT6179*/
+/*MT6179*/    /* Apply SW dithering no matter it is integer channel or not */
+/*MT6179*/    Nfrac   = ( (Nfrac&0x1) == 0 ) ? Nfrac+1 : Nfrac; //always let LSB[0]=1
+/*MT6179*/
+/*MT6179*/    /* CW549, N_INT[7:0], N_RFC[22:11] */
+/*MT6179*/    *rfN = BSI_CW( 0x225, ((Nint &0xFF)<<12) | (Nfrac>>11) );
+/*MT6179*/    /* CW550, N_FRAC[10:0], DI_EN */
+/*MT6179*/    *ifN = BSI_CW( 0x226, ((Nfrac&0x7FF)<<9) |((*ifN)&0x1FF));
+/*MT6179*/ }
+/*MT6179*/ /* =========================================================================== */
+/*MT6179*/
+/*MT6179*/ void L1D_RF_CompensateSXSetting( unsigned short *Nint, unsigned long *Nfrac, signed long NfracOffset, unsigned char is_TX)
+/*MT6179*/ {
+/*MT6179*/    signed long Max_Nfrac=0;
+/*MT6179*/    if( is_TX )
+/*MT6179*/    {  Max_Nfrac = STX_MAX_NFRAC;  }
+/*MT6179*/    else
+/*MT6179*/    {  Max_Nfrac = SRX_MAX_NFRAC;  }
+/*MT6179*/    
+/*MT6179*/    //Calculate new Nfrac and Nint
+/*MT6179*/    *Nfrac  += (NfracOffset + Max_Nfrac);
+/*MT6179*/    if( *Nfrac < Max_Nfrac )
+/*MT6179*/    {  (*Nint)--;  
+/*MT6179*/    }
+/*MT6179*/    else if( *Nfrac >= (Max_Nfrac<<1) )
+/*MT6179*/    {  (*Nint)++;  
+/*MT6179*/       *Nfrac = *Nfrac - (Max_Nfrac<<1);
+/*MT6179*/    }
+/*MT6179*/    else
+/*MT6179*/    {  *Nfrac-= Max_Nfrac;
+/*MT6179*/    }
+/*MT6179*/ }
+/*MT6179*/ /* =========================================================================== */
+/*MT6179*/
+/*MT6179*/ unsigned short L1D_RF_ARFCN_CH_to_RxFreq( int rf_band, int arfcn )
+/*MT6179*/ {
+/*MT6179*/    unsigned short freq=4450+225;
+/*MT6179*/    switch( rf_band )
+/*MT6179*/    {
+/*MT6179*/       case  FrequencyBand850 :
+/*MT6179*/       {
+/*MT6179*/          freq=4121+(arfcn-128)+225;     //freq = f_ch*SYNTH_SCALE
+/*MT6179*/          break;
+/*MT6179*/       }
+/*MT6179*/       case  FrequencyBand900 :
+/*MT6179*/       {
+/*MT6179*/          if( arfcn<=124 )
+/*MT6179*/          {  freq=4450+arfcn+225;  }
+/*MT6179*/          else
+/*MT6179*/          {  freq=4450+(arfcn-1024)+225;  }
+/*MT6179*/          break;
+/*MT6179*/       }
+/*MT6179*/       case  FrequencyBand1800 :
+/*MT6179*/       {
+/*MT6179*/          freq=8551+(arfcn-512)+475;
+/*MT6179*/          break;
+/*MT6179*/       }
+/*MT6179*/       case  FrequencyBand1900 :
+/*MT6179*/       {
+/*MT6179*/          freq=9251+(arfcn-512)+400;
+/*MT6179*/          break;
+/*MT6179*/       }
+/*MT6179*/       default :
+/*MT6179*/       {
+/*MT6179*/          break;
+/*MT6179*/       }
+/*MT6179*/    }
+/*MT6179*/
+/*MT6179*/    return freq;
+/*MT6179*/ }
+/*MT6179*/ /* =========================================================================== */
+/*MT6179*/
+/*MT6179*/ unsigned short L1D_RF_ARFCN_CH_to_TxFreq( int rf_band, int arfcn )
+/*MT6179*/ {
+/*MT6179*/    unsigned short freq=4450;
+/*MT6179*/    switch( rf_band )
+/*MT6179*/    {
+/*MT6179*/       case  FrequencyBand850 :
+/*MT6179*/       {
+/*MT6179*/          freq=4121+(arfcn-128);     //freq = f_ch*SYNTH_SCALE
+/*MT6179*/          break;
+/*MT6179*/       }
+/*MT6179*/       case  FrequencyBand900 :
+/*MT6179*/       {
+/*MT6179*/          if( arfcn<=124 )
+/*MT6179*/          {  freq=4450+arfcn;  }
+/*MT6179*/          else
+/*MT6179*/          {  freq=4450+(arfcn-1024);  }
+/*MT6179*/          break;
+/*MT6179*/       }
+/*MT6179*/       case  FrequencyBand1800 :
+/*MT6179*/       {
+/*MT6179*/          freq=8551+(arfcn-512);
+/*MT6179*/          break;
+/*MT6179*/       }
+/*MT6179*/       case  FrequencyBand1900 :
+/*MT6179*/       {
+/*MT6179*/          freq=9251+(arfcn-512);
+/*MT6179*/          break;
+/*MT6179*/       }
+/*MT6179*/       default :
+/*MT6179*/       {
+/*MT6179*/          break;
+/*MT6179*/       }
+/*MT6179*/    }
+/*MT6179*/
+/*MT6179*/    return freq;
+/*MT6179*/ }
+/*MT6179*/ /* =========================================================================== */
+/*MT6179*/
+/*MT6179*/ unsigned short L1D_RF_GetTxDCOSCACodeTypeSetting(unsigned short Nint, unsigned long  Nfrac)
+/*MT6179*/ {
+/*MT6179*/    char segment_tx=3, LUT_num_tx=8, offset_tx=14; // LUT method related parameters
+/*MT6179*/    signed short TXDCO_LUT[8]={4948, 3695, 2671, 1823, 1114, 514, 2, -438};  // TXDCO LUT
+/*MT6179*/    short idx, x_axis, code_type;  // code_type value for SCA calibration (code_type > 0)
+/*MT6179*/
+/*MT6179*/ #if IS_DUAL_LOOP_AFC_CONTROL_SUPPORT
+/*MT6179*/    if( l1d_rf.is_lock_dcxo )
+/*MT6179*/    {  L1D_RF_CompensateSXSetting( &Nint, &Nfrac, -l1d_rf.tx_nfracoffset, 1 );  }
+/*MT6179*/ #endif
+/*MT6179*/
+/*MT6179*/    /* STX DCO SCA Typical Code LUT */
+/*MT6179*/    idx = (Nint>>segment_tx)-((short)offset_tx);
+/*MT6179*/    if(idx<0)
+/*MT6179*/    {  idx = 0;  }
+/*MT6179*/    else if(idx>(LUT_num_tx-2))
+/*MT6179*/    {  idx = LUT_num_tx-2;  }
+/*MT6179*/
+/*MT6179*/    x_axis      = ((Nint-((Nint>>segment_tx)<<segment_tx))<<3)+((short)(Nfrac>>20));
+/*MT6179*/    code_type   = TXDCO_LUT[idx]+ ((x_axis*(TXDCO_LUT[idx+1]-TXDCO_LUT[idx]))>>(segment_tx+3));
+/*MT6179*/
+/*MT6179*/    return code_type;
+/*MT6179*/ }
+/*MT6179*/ /* =========================================================================== */
+/*MT6179*/
+/*MT6179*/ void L1D_RF_GetTxKDCOCAL2ndSetting(int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6179*/ {
+/*MT6179*/    unsigned short Nint =0, CH_freq =0;
+/*MT6179*/    unsigned long  Nfrac=0, DCO4G_freq=0;
+/*MT6179*/    unsigned short KDCO_NCAL = 0x1;//(POR_CW559&(0x3<<9))>>9;
+/*MT6179*/    unsigned short NCAL[4] = {12, 24, 16, 32};
+/*MT6179*/
+/*MT6179*/    unsigned short DCO_SCAK_NOFFSET  = 0; //keep POR = 0
+/*MT6179*/    unsigned short MMD_SDM_DI_LS     = 0; //keep POR = 0
+/*MT6179*/      signed long  Nfrac1Offset      = 0;
+/*MT6179*/
+/*MT6179*/    CH_freq = L1D_RF_ARFCN_CH_to_TxFreq( rf_band, arfcn );
+/*MT6179*/
+/*MT6179*/    if( rf_band < FrequencyBand1800 )
+/*MT6179*/       DCO4G_freq = 4*CH_freq;  
+/*MT6179*/    else
+/*MT6179*/       DCO4G_freq = 2*CH_freq;  
+/*MT6179*/
+/*MT6179*/    Nint  = ( (DCO4G_freq<<15) - NCAL[KDCO_NCAL]*DCO4G_freq + NCAL[KDCO_NCAL]*TX_DCXO_FREQ*92 ) / (TX_DCXO_FREQ<<15);
+/*MT6179*/    Nfrac = ( ( ( (DCO4G_freq<<15) - NCAL[KDCO_NCAL]*DCO4G_freq + NCAL[KDCO_NCAL]*TX_DCXO_FREQ*92 - ((Nint*TX_DCXO_FREQ)<<15) )<<8 ) )/TX_DCXO_FREQ;  //floor
+/*MT6179*/
+/*MT6179*/ #if IS_DUAL_LOOP_AFC_CONTROL_SUPPORT
+/*MT6179*/    if( l1d_rf.is_lock_dcxo )
+/*MT6179*/    {  Nfrac1Offset = l1d_rf.tx_nfracoffset - ((((signed long)NCAL[KDCO_NCAL])*l1d_rf.tx_nfracoffset)>>15);
+/*MT6179*/       L1D_RF_CompensateSXSetting( &Nint, &Nfrac, Nfrac1Offset, 1 );
+/*MT6179*/    }
+/*MT6179*/ #endif
+/*MT6179*/
+/*MT6179*/    /* CW551, N_INT1[7:0], N_RFC1[22:11] */
+/*MT6179*/    *rfN = BSI_CW( 0x227, ((Nint &0xFF)<<12) | (Nfrac>>11) );
+/*MT6179*/    /* CW552, N_FRAC1[10:0], NOFFSET_REV[3:0], STX_DCO_SCAK_NOFFSET[3:0], STX_MMD_SDM_DI_LS[1:0] */
+/*MT6179*/    *ifN = BSI_CW( 0x228, ((Nfrac&0x7FF)<<9) | ((DCO_SCAK_NOFFSET&0xF)<<2) |(MMD_SDM_DI_LS&0x3) );
+/*MT6179*/
+/*MT6179*/ }
+/*MT6179*/
+/*MT6179*/ /* =========================================================================== */
+/*MT6179*/ unsigned short L1D_RF_GetTxDEMChunkSetting(int rf_band, unsigned short Nint)
+/*MT6179*/ {  
+/*MT6179*/    return 0;
+/*MT6179*/ }
+/*MT6179*/ /* =========================================================================== */
+/*MT6179*/
+#endif
+
+#if IS_RF_MT6177L
+/*MT6177L*/ //For DLIF mode
+/*MT6177L*/ char  L1D_RF_Cal_IF_Synth_State( void )
+/*MT6177L*/ {
+   #if IS_W_CANCELLATION_SUPPORT
+/*MT6177L*/    if( L1D_CheckIfMetaMode() )
+/*MT6177L*/    {  return l1d_rf.if_state;  }
+/*MT6177L*/    else
+/*MT6177L*/    {  return 0;  }
+   #else
+/*MT6177L*/    return 0;
+   #endif
+/*MT6177L*/ }
+/*MT6177L*/ /* =========================================================================== */
+/*MT6177L*/
+/*MT6177L*/ void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6177L*/ {  long *if_sel = ifN+1;
+/*MT6177L*/    unsigned short Nint =0, CH_freq =0;
+/*MT6177L*/    unsigned long  Nfrac=0, VCO_freq=0;
+/*MT6177L*/    unsigned char  SRX_REF_SEL=1, SRX_VCO_INDSW_ON = 0, SRX_CAL_EN=1, SRX_CAL_IMM=0, SRX_VCO1_SEL=1, SRX_VCO_CFG=3;
+/*MT6177L*/    unsigned short FREF_SRX[2]        = {26, 52};
+/*MT6177L*/    unsigned short multiplier[2]      = {15, 14};
+/*MT6177L*/
+/*MT6177L*/    CH_freq = L1D_RF_ARFCN_CH_to_RxFreq( rf_band, arfcn );
+/*MT6177L*/
+/*MT6177L*/    {
+/*MT6177L*/       *if_sel = 0;
+/*MT6177L*/       if( rf_band < FrequencyBand1800 )
+/*MT6177L*/       {
+/*MT6177L*/          VCO_freq = 4*(CH_freq*DLIF_SCALE - DLIF);  //High-side mixing
+/*MT6177L*/       }
+/*MT6177L*/       else
+/*MT6177L*/       {
+/*MT6177L*/          VCO_freq = 2*(CH_freq*DLIF_SCALE - DLIF);  //High-side mixing
+/*MT6177L*/       }
+/*MT6177L*/    }
+/*MT6177L*/
+/*MT6177L*/    Nint  = VCO_freq/(FREF_SRX[SRX_REF_SEL]*SYNTH_SCALE*DLIF_SCALE);
+/*MT6177L*/    //+195/2 is for rounding, 195=13*3*5, 5 is SYNTH_SCALE, 13 and 3 are related to DLIF
+/*MT6177L*/    Nfrac = ( ((VCO_freq-Nint*FREF_SRX[SRX_REF_SEL]*SYNTH_SCALE*DLIF_SCALE)<<multiplier[SRX_REF_SEL]) + (195)/2 )/195;
+/*MT6177L*/
+/*MT6177L*/
+/*MT6177L*/    /* CW130, N_INT[8:0], N_FRFC[22:12] */
+/*MT6177L*/    *rfN = BSI_CW( 0x082, (((Nint&0x1FF)<<11)|((Nfrac>>12)&0x7FF)) );
+/*MT6177L*/    /* CW131, N_FRAC[11:0], REF_DOUBLER_EN, SRX_CAL_EN, SRX_CAL_IMM, SRX_VCO_SEL, SRX_VCO_CFG */
+/*MT6177L*/    *ifN = BSI_CW( 0x083, ((Nfrac&0xFFF)<<8)|((SRX_REF_SEL&0x1)<<7)|((SRX_VCO_INDSW_ON&0x1)<<6)| ((SRX_CAL_EN&0x1)<<5)|((SRX_CAL_IMM&0x1)<<4)|((SRX_VCO1_SEL&0x1)<<3)|(SRX_VCO_CFG&0x7));
+/*MT6177L*/ }
+/*MT6177L*/ /* =========================================================================== */
+/*MT6177L*/
+/*MT6177L*/ void L1D_RF_SplitRxPLLSetting(unsigned long rfN, unsigned long ifN, unsigned short *Nint, unsigned long *Nfrac)
+/*MT6177L*/ {
+/*MT6177L*/    *Nint  = ((rfN>>11)&0x1FF);
+/*MT6177L*/    *Nfrac = ((rfN&0x7FF)<<12)|((ifN>>8)&0xFFF);
+/*MT6177L*/ }
+/*MT6177L*/ /* =========================================================================== */
+/*MT6177L*/
+/*MT6177L*/ void L1D_RF_AdjustRxPLLSetting(unsigned short Nint, unsigned long Nfrac, signed long NfracOffset, unsigned long *rfN, unsigned long *ifN )
+/*MT6177L*/ {
+/*MT6177L*/    L1D_RF_CompensateSXSetting( &Nint, &Nfrac, NfracOffset, 0 );
+/*MT6177L*/
+/*MT6177L*/    /* CW130, N_INT[8:0], N_FRFC[22:12] */
+/*MT6177L*/    *rfN = BSI_CW( 0x082, (((Nint&0x1FF)<<11)|((Nfrac>>12)&0x7FF)) );
+/*MT6177L*/    /* CW131, N_FRAC[11:0], REF_DOUBLER_EN, SRX_CAL_EN, SRX_CAL_IMM, SRX_VCO_SEL, SRX_VCO_CFG */
+/*MT6177L*/    *ifN = BSI_CW( 0x083, ((Nfrac&0xFFF)<<8)|(*ifN&0xFF));
+/*MT6177L*/ }
+/*MT6177L*/ /* =========================================================================== */
+/*MT6177L*/
+/*MT6177L*/ void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6177L*/ {
+/*MT6177L*/    unsigned short Nint =0, CH_freq =0;
+/*MT6177L*/    unsigned long  Nfrac=0, VCO_freq=0;
+/*MT6177L*/    unsigned short MMD_SDM_DI_EN  = 0;  //keep POR = 0
+/*MT6177L*/
+/*MT6177L*/    l1d_rf2.arfcn = arfcn;  //for L1D_RF_TxGainSetting
+/*MT6177L*/ #if IS_MIPI_SUPPORT 
+/*MT6177L*/    l1d_mipi.tx_arfcn = arfcn;  //for L1D_RF_TxGainSetting
+/*MT6177L*/ #endif
+/*MT6177L*/    CH_freq = L1D_RF_ARFCN_CH_to_TxFreq( rf_band, arfcn );
+/*MT6177L*/
+/*MT6177L*/    if( rf_band < FrequencyBand1800 )
+/*MT6177L*/       VCO_freq = 4*CH_freq;  
+/*MT6177L*/    else
+/*MT6177L*/       VCO_freq = 2*CH_freq;  
+/*MT6177L*/
+/*MT6177L*/    Nint    = VCO_freq/TX_DCXO_FREQ;
+/*MT6177L*/    Nfrac   = ( ((VCO_freq-Nint*TX_DCXO_FREQ)<<23) + TX_DCXO_FREQ/2 )/TX_DCXO_FREQ;  //+TX_DCXO_FREQ/2 is for rounding
+/*MT6177L*/
+/*MT6177L*/ #if IS_DUAL_LOOP_AFC_CONTROL_SUPPORT
+/*MT6177L*/    if( l1d_rf.is_lock_dcxo )
+/*MT6177L*/    {  /* SW dithering after L1D_RF_AdjustTxPLLSetting() */  }
+/*MT6177L*/    else
+/*MT6177L*/ #endif
+/*MT6177L*/    {  /* Apply SW dithering no matter it is integer channel or not */
+/*MT6177L*/       Nfrac   = ( (Nfrac&0x1) == 0 ) ? Nfrac+1 : Nfrac; //always let LSB[0]=1
+/*MT6177L*/    }
+/*MT6177L*/
+/*MT6177L*/    /* CW549, N_INT[7:0], N_RFC[22:11] */
+/*MT6177L*/    *rfN = BSI_CW( 0x225, ((Nint &0xFF)<<12) | (Nfrac>>11) );
+/*MT6177L*/    /* CW550, N_FRAC[10:0], DI_EN */
+/*MT6177L*/    *ifN = BSI_CW( 0x226, ((Nfrac&0x7FF)<<9) | (MMD_SDM_DI_EN&0x1) );
+/*MT6177L*/
+/*MT6177L*/ }
+/*MT6177L*/ /* =========================================================================== */
+/*MT6177L*/
+/*MT6177L*/ void L1D_RF_SplitTxPLLSetting(unsigned long rfN, unsigned long ifN, unsigned short *Nint, unsigned long *Nfrac)
+/*MT6177L*/ {
+/*MT6177L*/    *Nint  = (rfN&(0xFF<<12))>>12;
+/*MT6177L*/    *Nfrac = ( (rfN&0xFFF)<<11 ) | ( (ifN&(0x7FF<<9))>>9 );
+/*MT6177L*/ }
+/*MT6177L*/ /* =========================================================================== */
+/*MT6177L*/
+/*MT6177L*/ void L1D_RF_AdjustTxPLLSetting(unsigned short Nint, unsigned long Nfrac, signed long NfracOffset, unsigned long *rfN, unsigned long *ifN )
+/*MT6177L*/ {
+/*MT6177L*/    L1D_RF_CompensateSXSetting( &Nint, &Nfrac, NfracOffset, 1 );
+/*MT6177L*/
+/*MT6177L*/    /* Apply SW dithering no matter it is integer channel or not */
+/*MT6177L*/    Nfrac   = ( (Nfrac&0x1) == 0 ) ? Nfrac+1 : Nfrac; //always let LSB[0]=1
+/*MT6177L*/
+/*MT6177L*/    /* CW549, N_INT[7:0], N_RFC[22:11] */
+/*MT6177L*/    *rfN = BSI_CW( 0x225, ((Nint &0xFF)<<12) | (Nfrac>>11) );
+/*MT6177L*/    /* CW550, N_FRAC[10:0], DI_EN */
+/*MT6177L*/    *ifN = BSI_CW( 0x226, ((Nfrac&0x7FF)<<9) |((*ifN)&0x1FF));
+/*MT6177L*/ }
+/*MT6177L*/ /* =========================================================================== */
+/*MT6177L*/
+/*MT6177L*/ void L1D_RF_CompensateSXSetting( unsigned short *Nint, unsigned long *Nfrac, signed long NfracOffset, unsigned char is_TX)
+/*MT6177L*/ {
+/*MT6177L*/    signed long Max_Nfrac=0;
+/*MT6177L*/    if( is_TX )
+/*MT6177L*/    {  Max_Nfrac = STX_MAX_NFRAC;  }
+/*MT6177L*/    else
+/*MT6177L*/    {  Max_Nfrac = SRX_MAX_NFRAC;  }
+/*MT6177L*/    
+/*MT6177L*/    //Calculate new Nfrac and Nint
+/*MT6177L*/    *Nfrac  += (NfracOffset + Max_Nfrac);
+/*MT6177L*/    if( *Nfrac < Max_Nfrac )
+/*MT6177L*/    {  (*Nint)--;  
+/*MT6177L*/    }
+/*MT6177L*/    else if( *Nfrac >= (Max_Nfrac<<1) )
+/*MT6177L*/    {  (*Nint)++;  
+/*MT6177L*/       *Nfrac = *Nfrac - (Max_Nfrac<<1);
+/*MT6177L*/    }
+/*MT6177L*/    else
+/*MT6177L*/    {  *Nfrac-= Max_Nfrac;
+/*MT6177L*/    }
+/*MT6177L*/ }
+/*MT6177L*/ /* =========================================================================== */
+/*MT6177L*/
+/*MT6177L*/ unsigned short L1D_RF_ARFCN_CH_to_RxFreq( int rf_band, int arfcn )
+/*MT6177L*/ {
+/*MT6177L*/    unsigned short freq=4450+225;
+/*MT6177L*/    switch( rf_band )
+/*MT6177L*/    {
+/*MT6177L*/       case  FrequencyBand850 :
+/*MT6177L*/       {
+/*MT6177L*/          freq=4121+(arfcn-128)+225;     //freq = f_ch*SYNTH_SCALE
+/*MT6177L*/          break;
+/*MT6177L*/       }
+/*MT6177L*/       case  FrequencyBand900 :
+/*MT6177L*/       {
+/*MT6177L*/          if( arfcn<=124 )
+/*MT6177L*/          {  freq=4450+arfcn+225;  }
+/*MT6177L*/          else
+/*MT6177L*/          {  freq=4450+(arfcn-1024)+225;  }
+/*MT6177L*/          break;
+/*MT6177L*/       }
+/*MT6177L*/       case  FrequencyBand1800 :
+/*MT6177L*/       {
+/*MT6177L*/          freq=8551+(arfcn-512)+475;
+/*MT6177L*/          break;
+/*MT6177L*/       }
+/*MT6177L*/       case  FrequencyBand1900 :
+/*MT6177L*/       {
+/*MT6177L*/          freq=9251+(arfcn-512)+400;
+/*MT6177L*/          break;
+/*MT6177L*/       }
+/*MT6177L*/       default :
+/*MT6177L*/       {
+/*MT6177L*/          break;
+/*MT6177L*/       }
+/*MT6177L*/    }
+/*MT6177L*/
+/*MT6177L*/    return freq;
+/*MT6177L*/ }
+/*MT6177L*/ /* =========================================================================== */
+/*MT6177L*/
+/*MT6177L*/ unsigned short L1D_RF_ARFCN_CH_to_TxFreq( int rf_band, int arfcn )
+/*MT6177L*/ {
+/*MT6177L*/    unsigned short freq=4450;
+/*MT6177L*/    switch( rf_band )
+/*MT6177L*/    {
+/*MT6177L*/       case  FrequencyBand850 :
+/*MT6177L*/       {
+/*MT6177L*/          freq=4121+(arfcn-128);     //freq = f_ch*SYNTH_SCALE
+/*MT6177L*/          break;
+/*MT6177L*/       }
+/*MT6177L*/       case  FrequencyBand900 :
+/*MT6177L*/       {
+/*MT6177L*/          if( arfcn<=124 )
+/*MT6177L*/          {  freq=4450+arfcn;  }
+/*MT6177L*/          else
+/*MT6177L*/          {  freq=4450+(arfcn-1024);  }
+/*MT6177L*/          break;
+/*MT6177L*/       }
+/*MT6177L*/       case  FrequencyBand1800 :
+/*MT6177L*/       {
+/*MT6177L*/          freq=8551+(arfcn-512);
+/*MT6177L*/          break;
+/*MT6177L*/       }
+/*MT6177L*/       case  FrequencyBand1900 :
+/*MT6177L*/       {
+/*MT6177L*/          freq=9251+(arfcn-512);
+/*MT6177L*/          break;
+/*MT6177L*/       }
+/*MT6177L*/       default :
+/*MT6177L*/       {
+/*MT6177L*/          break;
+/*MT6177L*/       }
+/*MT6177L*/    }
+/*MT6177L*/
+/*MT6177L*/    return freq;
+/*MT6177L*/ }
+/*MT6177L*/ /* =========================================================================== */
+/*MT6177L*/
+/*MT6177L*/ unsigned short L1D_RF_GetTxDCOSCACodeTypeSetting(unsigned short Nint, unsigned long  Nfrac)
+/*MT6177L*/ {
+/*MT6177L*/    char segment_tx=3, LUT_num_tx=8, offset_tx=14; // LUT method related parameters
+/*MT6177L*/    signed short TXDCO_LUT[8]={4948, 3695, 2671, 1823, 1114, 514, 2, -438};  // TXDCO LUT
+/*MT6177L*/    short idx, x_axis, code_type;  // code_type value for SCA calibration (code_type > 0)
+/*MT6177L*/
+/*MT6177L*/ #if IS_DUAL_LOOP_AFC_CONTROL_SUPPORT
+/*MT6177L*/    if( l1d_rf.is_lock_dcxo )
+/*MT6177L*/    {  L1D_RF_CompensateSXSetting( &Nint, &Nfrac, -l1d_rf.tx_nfracoffset, 1 );  }
+/*MT6177L*/ #endif
+/*MT6177L*/
+/*MT6177L*/    /* STX DCO SCA Typical Code LUT */
+/*MT6177L*/    idx = (Nint>>segment_tx)-((short)offset_tx);
+/*MT6177L*/    if(idx<0)
+/*MT6177L*/    {  idx = 0;  }
+/*MT6177L*/    else if(idx>(LUT_num_tx-2))
+/*MT6177L*/    {  idx = LUT_num_tx-2;  }
+/*MT6177L*/
+/*MT6177L*/    x_axis      = ((Nint-((Nint>>segment_tx)<<segment_tx))<<3)+((short)(Nfrac>>20));
+/*MT6177L*/    code_type   = TXDCO_LUT[idx]+ ((x_axis*(TXDCO_LUT[idx+1]-TXDCO_LUT[idx]))>>(segment_tx+3));
+/*MT6177L*/
+/*MT6177L*/    return code_type;
+/*MT6177L*/ }
+/*MT6177L*/ /* =========================================================================== */
+/*MT6177L*/
+/*MT6177L*/ void L1D_RF_GetTxKDCOCAL2ndSetting(int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6177L*/ {
+/*MT6177L*/    unsigned short Nint =0, CH_freq =0;
+/*MT6177L*/    unsigned long  Nfrac=0, DCO4G_freq=0;
+/*MT6177L*/    unsigned short KDCO_NCAL = 0x1;//(POR_CW559&(0x3<<9))>>9;
+/*MT6177L*/    unsigned short NCAL[4] = {12, 24, 16, 32};
+/*MT6177L*/
+/*MT6177L*/    unsigned short DCO_SCAK_NOFFSET  = 0; //keep POR = 0
+/*MT6177L*/    unsigned short MMD_SDM_DI_LS     = 0; //keep POR = 0
+/*MT6177L*/      signed long  Nfrac1Offset      = 0;
+/*MT6177L*/
+/*MT6177L*/    CH_freq = L1D_RF_ARFCN_CH_to_TxFreq( rf_band, arfcn );
+/*MT6177L*/
+/*MT6177L*/    if( rf_band < FrequencyBand1800 )
+/*MT6177L*/       DCO4G_freq = 4*CH_freq;  
+/*MT6177L*/    else
+/*MT6177L*/       DCO4G_freq = 2*CH_freq;  
+/*MT6177L*/
+/*MT6177L*/    Nint  = ( (DCO4G_freq<<15) - NCAL[KDCO_NCAL]*DCO4G_freq + NCAL[KDCO_NCAL]*TX_DCXO_FREQ*92 ) / (TX_DCXO_FREQ<<15);
+/*MT6177L*/    Nfrac = ( ( ( (DCO4G_freq<<15) - NCAL[KDCO_NCAL]*DCO4G_freq + NCAL[KDCO_NCAL]*TX_DCXO_FREQ*92 - ((Nint*TX_DCXO_FREQ)<<15) )<<8 ) )/TX_DCXO_FREQ;  //floor
+/*MT6177L*/
+/*MT6177L*/ #if IS_DUAL_LOOP_AFC_CONTROL_SUPPORT
+/*MT6177L*/    if( l1d_rf.is_lock_dcxo )
+/*MT6177L*/    {  Nfrac1Offset = l1d_rf.tx_nfracoffset - ((((signed long)NCAL[KDCO_NCAL])*l1d_rf.tx_nfracoffset)>>15);
+/*MT6177L*/       L1D_RF_CompensateSXSetting( &Nint, &Nfrac, Nfrac1Offset, 1 );
+/*MT6177L*/    }
+/*MT6177L*/ #endif
+/*MT6177L*/
+/*MT6177L*/    /* CW551, N_INT1[7:0], N_RFC1[22:11] */
+/*MT6177L*/    *rfN = BSI_CW( 0x227, ((Nint &0xFF)<<12) | (Nfrac>>11) );
+/*MT6177L*/    /* CW552, N_FRAC1[10:0], NOFFSET_REV[3:0], STX_DCO_SCAK_NOFFSET[3:0], STX_MMD_SDM_DI_LS[1:0] */
+/*MT6177L*/    *ifN = BSI_CW( 0x228, ((Nfrac&0x7FF)<<9) | ((DCO_SCAK_NOFFSET&0xF)<<2) |(MMD_SDM_DI_LS&0x3) );
+/*MT6177L*/
+/*MT6177L*/ }
+/*MT6177L*/
+/*MT6177L*/ /* =========================================================================== */
+/*MT6177L*/ unsigned short L1D_RF_GetTxDEMChunkSetting(int rf_band, unsigned short Nint)
+/*MT6177L*/ {  
+/*MT6177L*/    return 0;
+/*MT6177L*/ }
+/*MT6177L*/ /* =========================================================================== */
+/*MT6177L*/
+#endif
+
+#if IS_RF_MT6177M
+/*MT6173*/ //For DLIF mode
+/*MT6173*/ char  L1D_RF_Cal_IF_Synth_State( void )
+/*MT6173*/ {
+   #if IS_W_CANCELLATION_SUPPORT
+/*MT6173*/    if( L1D_CheckIfMetaMode() )
+/*MT6173*/    {  return l1d_rf.if_state;  }
+/*MT6173*/    else
+/*MT6173*/    {  return 0;  }
+   #else
+/*MT6173*/    return 0;
+   #endif
+/*MT6173*/ }
+/*MT6173*/ /* =========================================================================== */
+/*MT6173*/
+/*MT6173*/ void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6173*/ {  long *if_sel = ifN+1;
+/*MT6173*/    unsigned short Nint =0, CH_freq =0;
+/*MT6173*/    unsigned long  Nfrac=0, VCO_freq=0;
+/*MT6173*/    unsigned char  SRX_REF_SEL=1, SRX_VCO_INDSW_ON = 0, SRX_CAL_EN=1, SRX_CAL_IMM=0, SRX_VCO1_SEL=1, SRX_VCO_CFG=5;
+/*MT6173*/    unsigned short FREF_SRX[2]        = {26, 52};
+/*MT6173*/    unsigned short multiplier[2]      = {15, 14};
+/*MT6173*/
+/*MT6173*/    CH_freq = L1D_RF_ARFCN_CH_to_RxFreq( rf_band, arfcn );
+/*MT6173*/
+/*MT6173*/    {
+/*MT6173*/       *if_sel = 0;
+/*MT6173*/       if( rf_band < FrequencyBand1800 )
+/*MT6173*/       {
+/*MT6173*/          VCO_freq = 4*(CH_freq*DLIF_SCALE - DLIF);  //High-side mixing
+/*MT6173*/       }
+/*MT6173*/       else
+/*MT6173*/       {
+/*MT6173*/          VCO_freq = 2*(CH_freq*DLIF_SCALE - DLIF);  //High-side mixing
+/*MT6173*/       }
+/*MT6173*/    }
+/*MT6173*/
+/*MT6173*/    Nint  = VCO_freq/(FREF_SRX[SRX_REF_SEL]*SYNTH_SCALE*DLIF_SCALE);
+/*MT6173*/    //+195/2 is for rounding, 195=13*3*5, 5 is SYNTH_SCALE, 13 and 3 are related to DLIF
+/*MT6173*/    Nfrac = ( ((VCO_freq-Nint*FREF_SRX[SRX_REF_SEL]*SYNTH_SCALE*DLIF_SCALE)<<multiplier[SRX_REF_SEL]) + (195)/2 )/195;
+/*MT6173*/
+/*MT6173*/
+/*MT6173*/    /* CW130, N_INT[8:0], N_FRFC[22:12] */
+/*MT6173*/    *rfN = BSI_CW( 0x082, (((Nint&0x1FF)<<11)|((Nfrac>>12)&0x7FF)) );
+/*MT6173*/    /* CW131, N_FRAC[11:0], REF_DOUBLER_EN, SRX_CAL_EN, SRX_CAL_IMM, SRX_VCO_SEL, SRX_VCO_CFG */
+/*MT6173*/    *ifN = BSI_CW( 0x083, ((Nfrac&0xFFF)<<8)|((SRX_REF_SEL&0x1)<<7)|((SRX_VCO_INDSW_ON&0x1)<<6)| ((SRX_CAL_EN&0x1)<<5)|((SRX_CAL_IMM&0x1)<<4)|((SRX_VCO1_SEL&0x1)<<3)|(SRX_VCO_CFG&0x7));
+/*MT6173*/ }
+/*MT6173*/ /* =========================================================================== */
+/*MT6173*/
+/*MT6173*/ void L1D_RF_SplitRxPLLSetting(unsigned long rfN, unsigned long ifN, unsigned short *Nint, unsigned long *Nfrac)
+/*MT6173*/ {
+/*MT6173*/    *Nint  = ((rfN>>11)&0x1FF);
+/*MT6173*/    *Nfrac = ((rfN&0x7FF)<<12)|((ifN>>8)&0xFFF);
+/*MT6173*/ }
+/*MT6173*/ /* =========================================================================== */
+/*MT6173*/
+/*MT6173*/ void L1D_RF_AdjustRxPLLSetting(unsigned short Nint, unsigned long Nfrac, signed long NfracOffset, unsigned long *rfN, unsigned long *ifN )
+/*MT6173*/ {
+/*MT6173*/    L1D_RF_CompensateSXSetting( &Nint, &Nfrac, NfracOffset, 0 );
+/*MT6173*/
+/*MT6173*/    /* CW130, N_INT[8:0], N_FRFC[22:12] */
+/*MT6173*/    *rfN = BSI_CW( 0x082, (((Nint&0x1FF)<<11)|((Nfrac>>12)&0x7FF)) );
+/*MT6173*/    /* CW131, N_FRAC[11:0], REF_DOUBLER_EN, SRX_CAL_EN, SRX_CAL_IMM, SRX_VCO_SEL, SRX_VCO_CFG */
+/*MT6173*/    *ifN = BSI_CW( 0x083, ((Nfrac&0xFFF)<<8)|(*ifN&0xFF));
+/*MT6173*/ }
+/*MT6173*/ /* =========================================================================== */
+/*MT6173*/
+/*MT6173*/ void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6173*/ {
+/*MT6173*/    unsigned short Nint =0, CH_freq =0;
+/*MT6173*/    unsigned long  Nfrac=0, VCO_freq=0;
+/*MT6173*/    unsigned short MMD_SDM_DI_EN  = 0;  //keep POR = 0
+/*MT6173*/
+/*MT6173*/    l1d_rf2.arfcn = arfcn;  //for L1D_RF_TxGainSetting
+/*MT6173*/ #if IS_MIPI_SUPPORT 
+/*MT6173*/    l1d_mipi.tx_arfcn = arfcn;  //for L1D_RF_TxGainSetting
+/*MT6173*/ #endif
+/*MT6173*/    CH_freq = L1D_RF_ARFCN_CH_to_TxFreq( rf_band, arfcn );
+/*MT6173*/
+/*MT6173*/    if( rf_band < FrequencyBand1800 )
+/*MT6173*/       VCO_freq = 4*CH_freq;  
+/*MT6173*/    else
+/*MT6173*/       VCO_freq = 2*CH_freq;  
+/*MT6173*/
+/*MT6173*/    Nint    = VCO_freq/TX_DCXO_FREQ;
+/*MT6173*/    Nfrac   = ( ((VCO_freq-Nint*TX_DCXO_FREQ)<<23) + TX_DCXO_FREQ/2 )/TX_DCXO_FREQ;  //+TX_DCXO_FREQ/2 is for rounding
+/*MT6173*/
+/*MT6173*/ #if IS_DUAL_LOOP_AFC_CONTROL_SUPPORT
+/*MT6173*/    if( l1d_rf.is_lock_dcxo )
+/*MT6173*/    {  /* SW dithering after L1D_RF_AdjustTxPLLSetting() */  }
+/*MT6173*/    else
+/*MT6173*/ #endif
+/*MT6173*/    {  /* Apply SW dithering no matter it is integer channel or not */
+/*MT6173*/       Nfrac   = ( (Nfrac&0x1) == 0 ) ? Nfrac+1 : Nfrac; //always let LSB[0]=1
+/*MT6173*/    }
+/*MT6173*/
+/*MT6173*/    /* CW549, N_INT[7:0], N_RFC[22:11] */
+/*MT6173*/    *rfN = BSI_CW( 0x225, ((Nint &0xFF)<<12) | (Nfrac>>11) );
+/*MT6173*/    /* CW550, N_FRAC[10:0], DI_EN */
+/*MT6173*/    *ifN = BSI_CW( 0x226, ((Nfrac&0x7FF)<<9) | (MMD_SDM_DI_EN&0x1) );
+/*MT6173*/
+/*MT6173*/ }
+/*MT6173*/ /* =========================================================================== */
+/*MT6173*/
+/*MT6173*/ void L1D_RF_SplitTxPLLSetting(unsigned long rfN, unsigned long ifN, unsigned short *Nint, unsigned long *Nfrac)
+/*MT6173*/ {
+/*MT6173*/    *Nint  = (rfN&(0xFF<<12))>>12;
+/*MT6173*/    *Nfrac = ( (rfN&0xFFF)<<11 ) | ( (ifN&(0x7FF<<9))>>9 );
+/*MT6173*/ }
+/*MT6173*/ /* =========================================================================== */
+/*MT6173*/
+/*MT6173*/ void L1D_RF_AdjustTxPLLSetting(unsigned short Nint, unsigned long Nfrac, signed long NfracOffset, unsigned long *rfN, unsigned long *ifN )
+/*MT6173*/ {
+/*MT6173*/    L1D_RF_CompensateSXSetting( &Nint, &Nfrac, NfracOffset, 1 );
+/*MT6173*/
+/*MT6173*/    /* Apply SW dithering no matter it is integer channel or not */
+/*MT6173*/    Nfrac   = ( (Nfrac&0x1) == 0 ) ? Nfrac+1 : Nfrac; //always let LSB[0]=1
+/*MT6173*/
+/*MT6173*/    /* CW549, N_INT[7:0], N_RFC[22:11] */
+/*MT6173*/    *rfN = BSI_CW( 0x225, ((Nint &0xFF)<<12) | (Nfrac>>11) );
+/*MT6173*/    /* CW550, N_FRAC[10:0], DI_EN */
+/*MT6173*/    *ifN = BSI_CW( 0x226, ((Nfrac&0x7FF)<<9) |((*ifN)&0x1FF));
+/*MT6173*/ }
+/*MT6173*/ /* =========================================================================== */
+/*MT6173*/
+/*MT6173*/ void L1D_RF_CompensateSXSetting( unsigned short *Nint, unsigned long *Nfrac, signed long NfracOffset, unsigned char is_TX)
+/*MT6173*/ {
+/*MT6173*/    signed long Max_Nfrac=0;
+/*MT6173*/    if( is_TX )
+/*MT6173*/    {  Max_Nfrac = STX_MAX_NFRAC;  }
+/*MT6173*/    else
+/*MT6173*/    {  Max_Nfrac = SRX_MAX_NFRAC;  }
+/*MT6173*/    
+/*MT6173*/    //Calculate new Nfrac and Nint
+/*MT6173*/    *Nfrac  += (NfracOffset + Max_Nfrac);
+/*MT6173*/    if( *Nfrac < Max_Nfrac )
+/*MT6173*/    {  (*Nint)--;  
+/*MT6173*/    }
+/*MT6173*/    else if( *Nfrac >= (Max_Nfrac<<1) )
+/*MT6173*/    {  (*Nint)++;  
+/*MT6173*/       *Nfrac = *Nfrac - (Max_Nfrac<<1);
+/*MT6173*/    }
+/*MT6173*/    else
+/*MT6173*/    {  *Nfrac-= Max_Nfrac;
+/*MT6173*/    }
+/*MT6173*/ }
+/*MT6173*/ /* =========================================================================== */
+/*MT6173*/
+/*MT6173*/ unsigned short L1D_RF_ARFCN_CH_to_RxFreq( int rf_band, int arfcn )
+/*MT6173*/ {
+/*MT6173*/    unsigned short freq=4450+225;
+/*MT6173*/    switch( rf_band )
+/*MT6173*/    {
+/*MT6173*/       case  FrequencyBand850 :
+/*MT6173*/       {
+/*MT6173*/          freq=4121+(arfcn-128)+225;     //freq = f_ch*SYNTH_SCALE
+/*MT6173*/          break;
+/*MT6173*/       }
+/*MT6173*/       case  FrequencyBand900 :
+/*MT6173*/       {
+/*MT6173*/          if( arfcn<=124 )
+/*MT6173*/          {  freq=4450+arfcn+225;  }
+/*MT6173*/          else
+/*MT6173*/          {  freq=4450+(arfcn-1024)+225;  }
+/*MT6173*/          break;
+/*MT6173*/       }
+/*MT6173*/       case  FrequencyBand1800 :
+/*MT6173*/       {
+/*MT6173*/          freq=8551+(arfcn-512)+475;
+/*MT6173*/          break;
+/*MT6173*/       }
+/*MT6173*/       case  FrequencyBand1900 :
+/*MT6173*/       {
+/*MT6173*/          freq=9251+(arfcn-512)+400;
+/*MT6173*/          break;
+/*MT6173*/       }
+/*MT6173*/       default :
+/*MT6173*/       {
+/*MT6173*/          break;
+/*MT6173*/       }
+/*MT6173*/    }
+/*MT6173*/
+/*MT6173*/    return freq;
+/*MT6173*/ }
+/*MT6173*/ /* =========================================================================== */
+/*MT6173*/
+/*MT6173*/ unsigned short L1D_RF_ARFCN_CH_to_TxFreq( int rf_band, int arfcn )
+/*MT6173*/ {
+/*MT6173*/    unsigned short freq=4450;
+/*MT6173*/    switch( rf_band )
+/*MT6173*/    {
+/*MT6173*/       case  FrequencyBand850 :
+/*MT6173*/       {
+/*MT6173*/          freq=4121+(arfcn-128);     //freq = f_ch*SYNTH_SCALE
+/*MT6173*/          break;
+/*MT6173*/       }
+/*MT6173*/       case  FrequencyBand900 :
+/*MT6173*/       {
+/*MT6173*/          if( arfcn<=124 )
+/*MT6173*/          {  freq=4450+arfcn;  }
+/*MT6173*/          else
+/*MT6173*/          {  freq=4450+(arfcn-1024);  }
+/*MT6173*/          break;
+/*MT6173*/       }
+/*MT6173*/       case  FrequencyBand1800 :
+/*MT6173*/       {
+/*MT6173*/          freq=8551+(arfcn-512);
+/*MT6173*/          break;
+/*MT6173*/       }
+/*MT6173*/       case  FrequencyBand1900 :
+/*MT6173*/       {
+/*MT6173*/          freq=9251+(arfcn-512);
+/*MT6173*/          break;
+/*MT6173*/       }
+/*MT6173*/       default :
+/*MT6173*/       {
+/*MT6173*/          break;
+/*MT6173*/       }
+/*MT6173*/    }
+/*MT6173*/
+/*MT6173*/    return freq;
+/*MT6173*/ }
+/*MT6173*/ /* =========================================================================== */
+/*MT6173*/
+/*MT6173*/ unsigned short L1D_RF_GetTxDCOSCACodeTypeSetting(unsigned short Nint, unsigned long  Nfrac)
+/*MT6173*/ {
+/*MT6173*/    char segment_tx=3, LUT_num_tx=7, offset_tx=14; // LUT method related parameters
+/*MT6173*/    signed short TXDCO_LUT[7]={5058, 3703, 2596, 1679, 911, 263, -290};  // TXDCO LUT
+/*MT6173*/    short idx, x_axis, code_type;  // code_type value for SCA calibration (code_type > 0)
+/*MT6173*/
+/*MT6173*/ #if IS_DUAL_LOOP_AFC_CONTROL_SUPPORT
+/*MT6173*/    if( l1d_rf.is_lock_dcxo )
+/*MT6173*/    {  L1D_RF_CompensateSXSetting( &Nint, &Nfrac, -l1d_rf.tx_nfracoffset, 1 );  }
+/*MT6173*/ #endif
+/*MT6173*/
+/*MT6173*/    /* STX DCO SCA Typical Code LUT */
+/*MT6173*/    idx = (Nint>>segment_tx)-((short)offset_tx);
+/*MT6173*/    if(idx<0)
+/*MT6173*/    {  idx = 0;  }
+/*MT6173*/    else if(idx>(LUT_num_tx-2))
+/*MT6173*/    {  idx = LUT_num_tx-2;  }
+/*MT6173*/
+/*MT6173*/    x_axis      = ((Nint-((Nint>>segment_tx)<<segment_tx))<<3)+((short)(Nfrac>>20));
+/*MT6173*/    code_type   = TXDCO_LUT[idx]+ ((x_axis*(TXDCO_LUT[idx+1]-TXDCO_LUT[idx]))>>(segment_tx+3));
+/*MT6173*/
+/*MT6173*/    return code_type;
+/*MT6173*/ }
+/*MT6173*/ /* =========================================================================== */
+/*MT6173*/
+/*MT6173*/ void L1D_RF_GetTxKDCOCAL2ndSetting(int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6173*/ {
+/*MT6173*/    unsigned short Nint =0, CH_freq =0;
+/*MT6173*/    unsigned long  Nfrac=0, DCO4G_freq=0;
+/*MT6173*/    unsigned short KDCO_NCAL = 0x1;//(POR_CW559&(0x3<<9))>>9;
+/*MT6173*/    unsigned short NCAL[4] = {12, 24, 16, 32};
+/*MT6173*/
+/*MT6173*/    unsigned short DCO_SCAK_NOFFSET  = 0; //keep POR = 0
+/*MT6173*/    unsigned short MMD_SDM_DI_LS     = 0; //keep POR = 0
+/*MT6173*/      signed long  Nfrac1Offset      = 0;
+/*MT6173*/
+/*MT6173*/    CH_freq = L1D_RF_ARFCN_CH_to_TxFreq( rf_band, arfcn );
+/*MT6173*/
+/*MT6173*/    if( rf_band < FrequencyBand1800 )
+/*MT6173*/       DCO4G_freq = 4*CH_freq;  
+/*MT6173*/    else
+/*MT6173*/       DCO4G_freq = 2*CH_freq;  
+/*MT6173*/
+/*MT6173*/    Nint  = ( (DCO4G_freq<<15) - NCAL[KDCO_NCAL]*DCO4G_freq + NCAL[KDCO_NCAL]*TX_DCXO_FREQ*92 ) / (TX_DCXO_FREQ<<15);
+/*MT6173*/    Nfrac = ( ( ( (DCO4G_freq<<15) - NCAL[KDCO_NCAL]*DCO4G_freq + NCAL[KDCO_NCAL]*TX_DCXO_FREQ*92 - ((Nint*TX_DCXO_FREQ)<<15) )<<8 ) )/TX_DCXO_FREQ;  //floor
+/*MT6173*/
+/*MT6173*/ #if IS_DUAL_LOOP_AFC_CONTROL_SUPPORT
+/*MT6173*/    if( l1d_rf.is_lock_dcxo )
+/*MT6173*/    {  Nfrac1Offset = l1d_rf.tx_nfracoffset - ((((signed long)NCAL[KDCO_NCAL])*l1d_rf.tx_nfracoffset)>>15);
+/*MT6173*/       L1D_RF_CompensateSXSetting( &Nint, &Nfrac, Nfrac1Offset, 1 );
+/*MT6173*/    }
+/*MT6173*/ #endif
+/*MT6173*/
+/*MT6173*/    /* CW551, N_INT1[7:0], N_RFC1[22:11] */
+/*MT6173*/    *rfN = BSI_CW( 0x227, ((Nint &0xFF)<<12) | (Nfrac>>11) );
+/*MT6173*/    /* CW552, N_FRAC1[10:0], NOFFSET_REV[3:0], STX_DCO_SCAK_NOFFSET[3:0], STX_MMD_SDM_DI_LS[1:0] */
+/*MT6173*/    *ifN = BSI_CW( 0x228, ((Nfrac&0x7FF)<<9) | ((DCO_SCAK_NOFFSET&0xF)<<2) |(MMD_SDM_DI_LS&0x3) );
+/*MT6173*/
+/*MT6173*/ }
+/*MT6173*/
+/*MT6173*/ /* =========================================================================== */
+/*MT6173*/ unsigned short L1D_RF_GetTxDEMChunkSetting(int rf_band, unsigned short Nint)
+/*MT6173*/ {  
+/*MT6173*/    return 0;
+/*MT6173*/ }
+/*MT6173*/ /* =========================================================================== */
+/*MT6173*/
+#endif
+
+#if IS_RF_TRINITYE1
+/*TRINITYE1*/ //For DLIF mode
+/*TRINITYE1*/ char  L1D_RF_Cal_IF_Synth_State( void )
+/*TRINITYE1*/ {
+   #if IS_W_CANCELLATION_SUPPORT
+/*TRINITYE1*/    if( L1D_CheckIfMetaMode() )
+/*TRINITYE1*/    {  return l1d_rf.if_state;  }
+/*TRINITYE1*/    else
+/*TRINITYE1*/    {  return 0;  }
+   #else
+/*TRINITYE1*/    return 0;
+   #endif
+/*TRINITYE1*/ }
+/*TRINITYE1*/ /* =========================================================================== */
+/*TRINITYE1*/
+/*TRINITYE1*/ void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, unsigned long *freq_hsb, unsigned long *freq_lsb )
+/*TRINITYE1*/ {  unsigned long *if_sel = freq_lsb+1;       //This will point to global if_sel
+/*TRINITYE1*/    unsigned short CH_freq =0;
+/*TRINITYE1*/    int64  FLO_scale_freq=0;
+/*TRINITYE1*/    CH_freq = L1D_RF_ARFCN_CH_to_RxFreq( rf_band, arfcn );
+/*TRINITYE1*/    FLO_scale_freq = (((int64)CH_freq)*SET_FLO_UNIT)<<L1D_FLO_SCALE_NUM; // FLO_scale_freq = FLO * (5*200000)* (2^11) (Hz), (2^11) is scale 
+/*TRINITYE1*/    *freq_hsb = (unsigned long)GET_FREQ_HSB(FLO_scale_freq);
+/*TRINITYE1*/    *freq_lsb = (unsigned long)GET_FREQ_LSB(FLO_scale_freq);
+/*TRINITYE1*/
+/*TRINITYE1*/    /* Switch +- DLIF */
+/*TRINITYE1*/    *if_sel = 0;
+/*TRINITYE1*/    l1d_rf.obb_if_sign = -1;
+/*TRINITYE1*/ #if IS_OBB_DETECTION_SUPPORT
+/*TRINITYE1*/    if( !L1D_CheckIfMetaMode() )
+/*TRINITYE1*/    {
+/*TRINITYE1*/       if( l1d_rf.if_change == -1 && arfcn == l1d_rf.obb_arfcn )
+/*TRINITYE1*/       {
+/*TRINITYE1*/          signed short if_sign = l1d_rf.if_change*(*if_sel*2-1);
+/*TRINITYE1*/          *if_sel = if_sign > 0 ? 1 : 0;
+/*TRINITYE1*/          l1d_rf.obb_if_sign = if_sign > 0 ? 1 : -1;
+/*TRINITYE1*/       }
+/*TRINITYE1*/    }
+/*TRINITYE1*/ #endif
+/*TRINITYE1*/ }
+/*TRINITYE1*/ /* =========================================================================== */
+/*TRINITYE1*/
+/*TRINITYE1*/ void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, unsigned long *freq_hsb, unsigned long *freq_lsb )
+/*TRINITYE1*/ {
+/*TRINITYE1*/    unsigned short  CH_freq =0;
+/*TRINITYE1*/    int64  FLO_scale_freq=0;
+/*TRINITYE1*/
+/*TRINITYE1*/    l1d_rf2.arfcn = arfcn;  //for L1D_RF_TxGainSetting
+/*TRINITYE1*/ #if IS_MIPI_SUPPORT 
+/*TRINITYE1*/    l1d_mipi.tx_arfcn = arfcn;  //for L1D_RF_TxGainSetting
+/*TRINITYE1*/ #endif
+/*TRINITYE1*/    CH_freq = L1D_RF_ARFCN_CH_to_TxFreq( rf_band, arfcn );
+/*TRINITYE1*/    FLO_scale_freq = (((int64)CH_freq)*SET_FLO_UNIT)<<L1D_FLO_SCALE_NUM; // FLO_scale_freq = FLO * (5*200000)* (2^11) (Hz), (2^11) is scale
+/*TRINITYE1*/    *freq_hsb = (unsigned long)GET_FREQ_HSB(FLO_scale_freq);
+/*TRINITYE1*/    *freq_lsb = (unsigned long)GET_FREQ_LSB(FLO_scale_freq);
+/*TRINITYE1*/ }
+/*TRINITYE1*/ /* =========================================================================== */
+/*TRINITYE1*/
+/*TRINITYE1*/ unsigned short L1D_RF_ARFCN_CH_to_RxFreq( int rf_band, int arfcn )
+/*TRINITYE1*/ {
+/*TRINITYE1*/    unsigned short freq=4450+225;
+/*TRINITYE1*/    switch( rf_band )
+/*TRINITYE1*/    {
+/*TRINITYE1*/       case  FrequencyBand850 :
+/*TRINITYE1*/       {
+/*TRINITYE1*/          freq=4121+(arfcn-128)+225;     //freq = f_ch*SYNTH_SCALE
+/*TRINITYE1*/          break;
+/*TRINITYE1*/       }
+/*TRINITYE1*/       case  FrequencyBand900 :
+/*TRINITYE1*/       {
+/*TRINITYE1*/          if( arfcn<=124 )
+/*TRINITYE1*/          {  freq=4450+arfcn+225;  }
+/*TRINITYE1*/          else
+/*TRINITYE1*/          {  freq=4450+(arfcn-1024)+225;  }
+/*TRINITYE1*/          break;
+/*TRINITYE1*/       }
+/*TRINITYE1*/       case  FrequencyBand1800 :
+/*TRINITYE1*/       {
+/*TRINITYE1*/          freq=8551+(arfcn-512)+475;
+/*TRINITYE1*/          break;
+/*TRINITYE1*/       }
+/*TRINITYE1*/       case  FrequencyBand1900 :
+/*TRINITYE1*/       {
+/*TRINITYE1*/          freq=9251+(arfcn-512)+400;
+/*TRINITYE1*/          break;
+/*TRINITYE1*/       }
+/*TRINITYE1*/       default :
+/*TRINITYE1*/       {
+/*TRINITYE1*/          break;
+/*TRINITYE1*/       }
+/*TRINITYE1*/    }
+/*TRINITYE1*/
+/*TRINITYE1*/    return freq;
+/*TRINITYE1*/ }
+/*TRINITYE1*/ /* =========================================================================== */
+/*TRINITYE1*/
+/*TRINITYE1*/ unsigned short L1D_RF_ARFCN_CH_to_TxFreq( int rf_band, int arfcn )
+/*TRINITYE1*/ {
+/*TRINITYE1*/    unsigned short freq=4450;
+/*TRINITYE1*/    switch( rf_band )
+/*TRINITYE1*/    {
+/*TRINITYE1*/       case  FrequencyBand850 :
+/*TRINITYE1*/       {
+/*TRINITYE1*/          freq=4121+(arfcn-128);     //freq = f_ch*SYNTH_SCALE
+/*TRINITYE1*/          break;
+/*TRINITYE1*/       }
+/*TRINITYE1*/       case  FrequencyBand900 :
+/*TRINITYE1*/       {
+/*TRINITYE1*/          if( arfcn<=124 )
+/*TRINITYE1*/          {  freq=4450+arfcn;  }
+/*TRINITYE1*/          else
+/*TRINITYE1*/          {  freq=4450+(arfcn-1024);  }
+/*TRINITYE1*/          break;
+/*TRINITYE1*/       }
+/*TRINITYE1*/       case  FrequencyBand1800 :
+/*TRINITYE1*/       {
+/*TRINITYE1*/          freq=8551+(arfcn-512);
+/*TRINITYE1*/          break;
+/*TRINITYE1*/       }
+/*TRINITYE1*/       case  FrequencyBand1900 :
+/*TRINITYE1*/       {
+/*TRINITYE1*/          freq=9251+(arfcn-512);
+/*TRINITYE1*/          break;
+/*TRINITYE1*/       }
+/*TRINITYE1*/       default :
+/*TRINITYE1*/       {
+/*TRINITYE1*/          break;
+/*TRINITYE1*/       }
+/*TRINITYE1*/    }
+/*TRINITYE1*/
+/*TRINITYE1*/    return freq;
+/*TRINITYE1*/ }
+/*TRINITYE1*/ /* =========================================================================== */
+/*TRINITYE1*/
+/*TRINITYE1*/ unsigned short L1D_RF_GetTxDCOSCACodeTypeSetting(unsigned short Nint, unsigned long  Nfrac)
+/*TRINITYE1*/ {
+/*TRINITYE1*/    return 0;
+/*TRINITYE1*/ }
+/*TRINITYE1*/ /* =========================================================================== */
+/*TRINITYE1*/
+/*TRINITYE1*/ void L1D_RF_GetTxKDCOCAL2ndSetting(int rf_band, int arfcn, long *rfN, long *ifN )
+/*TRINITYE1*/ {
+/*TRINITYE1*/  
+/*TRINITYE1*/    *rfN = 0;
+/*TRINITYE1*/    *ifN = 0;
+/*TRINITYE1*/ }
+/*TRINITYE1*/
+/*TRINITYE1*/ /* =========================================================================== */
+/*TRINITYE1*/ unsigned short L1D_RF_GetTxDEMChunkSetting(int rf_band, unsigned short Nint)
+/*TRINITYE1*/ {  
+/*TRINITYE1*/    return 0;
+/*TRINITYE1*/ }
+/*TRINITYE1*/ /* =========================================================================== */
+/*TRINITYE1*/
+#endif
+
+#if IS_RF_TRINITYL
+/*TRINITYL*/ //For DLIF mode
+/*TRINITYL*/ char  L1D_RF_Cal_IF_Synth_State( void )
+/*TRINITYL*/ {
+   #if IS_W_CANCELLATION_SUPPORT
+/*TRINITYL*/    if( L1D_CheckIfMetaMode() )
+/*TRINITYL*/    {  return l1d_rf.if_state;  }
+/*TRINITYL*/    else
+/*TRINITYL*/    {  return 0;  }
+   #else
+/*TRINITYL*/    return 0;
+   #endif
+/*TRINITYL*/ }
+/*TRINITYL*/ /* =========================================================================== */
+/*TRINITYL*/
+/*TRINITYL*/ void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, unsigned long *freq_hsb, unsigned long *freq_lsb )
+/*TRINITYL*/ {  
+/*TRINITYL*/    unsigned short CH_freq =0;
+/*TRINITYL*/    int64  FLO_scale_freq=0;
+/*TRINITYL*/    CH_freq = L1D_RF_ARFCN_CH_to_RxFreq( rf_band, arfcn );
+/*TRINITYL*/    FLO_scale_freq = (((int64)CH_freq)*SET_FLO_UNIT)<<L1D_FLO_SCALE_NUM; // FLO_scale_freq = FLO * (5*200000)* (2^11) (Hz), (2^11) is scale 
+/*TRINITYL*/    *freq_hsb = (unsigned long)GET_FREQ_HSB(FLO_scale_freq);
+/*TRINITYL*/    *freq_lsb = (unsigned long)GET_FREQ_LSB(FLO_scale_freq);
+/*TRINITYL*/
+/*TRINITYL*/    /* Switch +- DLIF */
+/*TRINITYL*/    l1d_rf.obb_if_sign = -1;
+/*TRINITYL*/ }
+/*TRINITYL*/ /* =========================================================================== */
+/*TRINITYL*/
+/*TRINITYL*/ void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, unsigned long *freq_hsb, unsigned long *freq_lsb )
+/*TRINITYL*/ {
+/*TRINITYL*/    unsigned short  CH_freq =0;
+/*TRINITYL*/    int64  FLO_scale_freq=0;
+/*TRINITYL*/
+/*TRINITYL*/    l1d_rf2.arfcn = arfcn;  //for L1D_RF_TxGainSetting
+/*TRINITYL*/ #if IS_MIPI_SUPPORT 
+/*TRINITYL*/    l1d_mipi.tx_arfcn = arfcn;  //for L1D_RF_TxGainSetting
+/*TRINITYL*/ #endif
+/*TRINITYL*/    CH_freq = L1D_RF_ARFCN_CH_to_TxFreq( rf_band, arfcn );
+/*TRINITYL*/    FLO_scale_freq = (((int64)CH_freq)*SET_FLO_UNIT)<<L1D_FLO_SCALE_NUM; // FLO_scale_freq = FLO * (5*200000)* (2^11) (Hz), (2^11) is scale
+/*TRINITYL*/    *freq_hsb = (unsigned long)GET_FREQ_HSB(FLO_scale_freq);
+/*TRINITYL*/    *freq_lsb = (unsigned long)GET_FREQ_LSB(FLO_scale_freq);
+/*TRINITYL*/ }
+/*TRINITYL*/ /* =========================================================================== */
+/*TRINITYL*/
+/*TRINITYL*/ unsigned short L1D_RF_ARFCN_CH_to_RxFreq( int rf_band, int arfcn )
+/*TRINITYL*/ {
+/*TRINITYL*/    unsigned short freq=4450+225;
+/*TRINITYL*/    switch( rf_band )
+/*TRINITYL*/    {
+/*TRINITYL*/       case  FrequencyBand850 :
+/*TRINITYL*/       {
+/*TRINITYL*/          freq=4121+(arfcn-128)+225;     //freq = f_ch*SYNTH_SCALE
+/*TRINITYL*/          break;
+/*TRINITYL*/       }
+/*TRINITYL*/       case  FrequencyBand900 :
+/*TRINITYL*/       {
+/*TRINITYL*/          if( arfcn<=124 )
+/*TRINITYL*/          {  freq=4450+arfcn+225;  }
+/*TRINITYL*/          else
+/*TRINITYL*/          {  freq=4450+(arfcn-1024)+225;  }
+/*TRINITYL*/          break;
+/*TRINITYL*/       }
+/*TRINITYL*/       case  FrequencyBand1800 :
+/*TRINITYL*/       {
+/*TRINITYL*/          freq=8551+(arfcn-512)+475;
+/*TRINITYL*/          break;
+/*TRINITYL*/       }
+/*TRINITYL*/       case  FrequencyBand1900 :
+/*TRINITYL*/       {
+/*TRINITYL*/          freq=9251+(arfcn-512)+400;
+/*TRINITYL*/          break;
+/*TRINITYL*/       }
+/*TRINITYL*/       default :
+/*TRINITYL*/       {
+/*TRINITYL*/          break;
+/*TRINITYL*/       }
+/*TRINITYL*/    }
+/*TRINITYL*/
+/*TRINITYL*/    return freq;
+/*TRINITYL*/ }
+/*TRINITYL*/ /* =========================================================================== */
+/*TRINITYL*/
+/*TRINITYL*/ unsigned short L1D_RF_ARFCN_CH_to_TxFreq( int rf_band, int arfcn )
+/*TRINITYL*/ {
+/*TRINITYL*/    unsigned short freq=4450;
+/*TRINITYL*/    switch( rf_band )
+/*TRINITYL*/    {
+/*TRINITYL*/       case  FrequencyBand850 :
+/*TRINITYL*/       {
+/*TRINITYL*/          freq=4121+(arfcn-128);     //freq = f_ch*SYNTH_SCALE
+/*TRINITYL*/          break;
+/*TRINITYL*/       }
+/*TRINITYL*/       case  FrequencyBand900 :
+/*TRINITYL*/       {
+/*TRINITYL*/          if( arfcn<=124 )
+/*TRINITYL*/          {  freq=4450+arfcn;  }
+/*TRINITYL*/          else
+/*TRINITYL*/          {  freq=4450+(arfcn-1024);  }
+/*TRINITYL*/          break;
+/*TRINITYL*/       }
+/*TRINITYL*/       case  FrequencyBand1800 :
+/*TRINITYL*/       {
+/*TRINITYL*/          freq=8551+(arfcn-512);
+/*TRINITYL*/          break;
+/*TRINITYL*/       }
+/*TRINITYL*/       case  FrequencyBand1900 :
+/*TRINITYL*/       {
+/*TRINITYL*/          freq=9251+(arfcn-512);
+/*TRINITYL*/          break;
+/*TRINITYL*/       }
+/*TRINITYL*/       default :
+/*TRINITYL*/       {
+/*TRINITYL*/          break;
+/*TRINITYL*/       }
+/*TRINITYL*/    }
+/*TRINITYL*/
+/*TRINITYL*/    return freq;
+/*TRINITYL*/ }
+/*TRINITYL*/ /* =========================================================================== */
+/*TRINITYL*/
+/*TRINITYL*/ unsigned short L1D_RF_GetTxDCOSCACodeTypeSetting(unsigned short Nint, unsigned long  Nfrac)
+/*TRINITYL*/ {
+/*TRINITYL*/    return 0;
+/*TRINITYL*/ }
+/*TRINITYL*/ /* =========================================================================== */
+/*TRINITYL*/
+/*TRINITYL*/ void L1D_RF_GetTxKDCOCAL2ndSetting(int rf_band, int arfcn, long *rfN, long *ifN )
+/*TRINITYL*/ {
+/*TRINITYL*/  
+/*TRINITYL*/    *rfN = 0;
+/*TRINITYL*/    *ifN = 0;
+/*TRINITYL*/ }
+/*TRINITYL*/
+/*TRINITYL*/ /* =========================================================================== */
+/*TRINITYL*/ unsigned short L1D_RF_GetTxDEMChunkSetting(int rf_band, unsigned short Nint)
+/*TRINITYL*/ {  
+/*TRINITYL*/    return 0;
+/*TRINITYL*/ }
+/*TRINITYL*/ /* =========================================================================== */
+/*TRINITYL*/
+#endif
+
+#if IS_RF_MT6186
+/*MT6186*/ //For DLIF mode
+/*MT6186*/ char  L1D_RF_Cal_IF_Synth_State( void )
+/*MT6186*/ {
+   #if IS_W_CANCELLATION_SUPPORT
+/*MT6186*/    if( L1D_CheckIfMetaMode() )
+/*MT6186*/    {  return l1d_rf.if_state;  }
+/*MT6186*/    else
+/*MT6186*/    {  return 0;  }
+   #else
+/*MT6186*/    return 0;
+   #endif
+/*MT6186*/ }
+/*MT6186*/ /* =========================================================================== */
+/*MT6186*/
+/*MT6186*/ void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, unsigned long *freq_hsb, unsigned long *freq_lsb )
+/*MT6186*/ {  
+/*MT6186*/    unsigned short CH_freq =0;
+/*MT6186*/    int64  FLO_scale_freq=0;
+/*MT6186*/    CH_freq = L1D_RF_ARFCN_CH_to_RxFreq( rf_band, arfcn );
+/*MT6186*/    FLO_scale_freq = (((int64)CH_freq)*SET_FLO_UNIT)<<L1D_FLO_SCALE_NUM; // FLO_scale_freq = FLO * (5*200000)* (2^11) (Hz), (2^11) is scale 
+/*MT6186*/    *freq_hsb = (unsigned long)GET_FREQ_HSB(FLO_scale_freq);
+/*MT6186*/    *freq_lsb = (unsigned long)GET_FREQ_LSB(FLO_scale_freq);
+/*MT6186*/
+/*MT6186*/    /* Switch +- DLIF */
+/*MT6186*/    l1d_rf.obb_if_sign = -1;
+/*MT6186*/ }
+/*MT6186*/ /* =========================================================================== */
+/*MT6186*/
+/*MT6186*/ void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, unsigned long *freq_hsb, unsigned long *freq_lsb )
+/*MT6186*/ {
+/*MT6186*/    unsigned short  CH_freq =0;
+/*MT6186*/    int64  FLO_scale_freq=0;
+/*MT6186*/
+/*MT6186*/    l1d_rf2.arfcn = arfcn;  //for L1D_RF_TxGainSetting
+/*MT6186*/ #if IS_MIPI_SUPPORT 
+/*MT6186*/    l1d_mipi.tx_arfcn = arfcn;  //for L1D_RF_TxGainSetting
+/*MT6186*/ #endif
+/*MT6186*/    CH_freq = L1D_RF_ARFCN_CH_to_TxFreq( rf_band, arfcn );
+/*MT6186*/    FLO_scale_freq = (((int64)CH_freq)*SET_FLO_UNIT)<<L1D_FLO_SCALE_NUM; // FLO_scale_freq = FLO * (5*200000)* (2^11) (Hz), (2^11) is scale
+/*MT6186*/    *freq_hsb = (unsigned long)GET_FREQ_HSB(FLO_scale_freq);
+/*MT6186*/    *freq_lsb = (unsigned long)GET_FREQ_LSB(FLO_scale_freq);
+/*MT6186*/ }
+/*MT6186*/ /* =========================================================================== */
+/*MT6186*/
+/*MT6186*/ unsigned short L1D_RF_ARFCN_CH_to_RxFreq( int rf_band, int arfcn )
+/*MT6186*/ {
+/*MT6186*/    unsigned short freq=4450+225;
+/*MT6186*/    switch( rf_band )
+/*MT6186*/    {
+/*MT6186*/       case  FrequencyBand850 :
+/*MT6186*/       {
+/*MT6186*/          freq=4121+(arfcn-128)+225;     //freq = f_ch*SYNTH_SCALE
+/*MT6186*/          break;
+/*MT6186*/       }
+/*MT6186*/       case  FrequencyBand900 :
+/*MT6186*/       {
+/*MT6186*/          if( arfcn<=124 )
+/*MT6186*/          {  freq=4450+arfcn+225;  }
+/*MT6186*/          else
+/*MT6186*/          {  freq=4450+(arfcn-1024)+225;  }
+/*MT6186*/          break;
+/*MT6186*/       }
+/*MT6186*/       case  FrequencyBand1800 :
+/*MT6186*/       {
+/*MT6186*/          freq=8551+(arfcn-512)+475;
+/*MT6186*/          break;
+/*MT6186*/       }
+/*MT6186*/       case  FrequencyBand1900 :
+/*MT6186*/       {
+/*MT6186*/          freq=9251+(arfcn-512)+400;
+/*MT6186*/          break;
+/*MT6186*/       }
+/*MT6186*/       default :
+/*MT6186*/       {
+/*MT6186*/          break;
+/*MT6186*/       }
+/*MT6186*/    }
+/*MT6186*/
+/*MT6186*/    return freq;
+/*MT6186*/ }
+/*MT6186*/ /* =========================================================================== */
+/*MT6186*/
+/*MT6186*/ unsigned short L1D_RF_ARFCN_CH_to_TxFreq( int rf_band, int arfcn )
+/*MT6186*/ {
+/*MT6186*/    unsigned short freq=4450;
+/*MT6186*/    switch( rf_band )
+/*MT6186*/    {
+/*MT6186*/       case  FrequencyBand850 :
+/*MT6186*/       {
+/*MT6186*/          freq=4121+(arfcn-128);     //freq = f_ch*SYNTH_SCALE
+/*MT6186*/          break;
+/*MT6186*/       }
+/*MT6186*/       case  FrequencyBand900 :
+/*MT6186*/       {
+/*MT6186*/          if( arfcn<=124 )
+/*MT6186*/          {  freq=4450+arfcn;  }
+/*MT6186*/          else
+/*MT6186*/          {  freq=4450+(arfcn-1024);  }
+/*MT6186*/          break;
+/*MT6186*/       }
+/*MT6186*/       case  FrequencyBand1800 :
+/*MT6186*/       {
+/*MT6186*/          freq=8551+(arfcn-512);
+/*MT6186*/          break;
+/*MT6186*/       }
+/*MT6186*/       case  FrequencyBand1900 :
+/*MT6186*/       {
+/*MT6186*/          freq=9251+(arfcn-512);
+/*MT6186*/          break;
+/*MT6186*/       }
+/*MT6186*/       default :
+/*MT6186*/       {
+/*MT6186*/          break;
+/*MT6186*/       }
+/*MT6186*/    }
+/*MT6186*/
+/*MT6186*/    return freq;
+/*MT6186*/ }
+/*MT6186*/ /* =========================================================================== */
+/*MT6186*/
+/*MT6186*/ unsigned short L1D_RF_GetTxDCOSCACodeTypeSetting(unsigned short Nint, unsigned long  Nfrac)
+/*MT6186*/ {
+/*MT6186*/    return 0;
+/*MT6186*/ }
+/*MT6186*/ /* =========================================================================== */
+/*MT6186*/
+/*MT6186*/ void L1D_RF_GetTxKDCOCAL2ndSetting(int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6186*/ {
+/*MT6186*/  
+/*MT6186*/    *rfN = 0;
+/*MT6186*/    *ifN = 0;
+/*MT6186*/ }
+/*MT6186*/
+/*MT6186*/ /* =========================================================================== */
+/*MT6186*/ unsigned short L1D_RF_GetTxDEMChunkSetting(int rf_band, unsigned short Nint)
+/*MT6186*/ {  
+/*MT6186*/    return 0;
+/*MT6186*/ }
+/*MT6186*/ /* =========================================================================== */
+/*MT6186*/
+#endif
+
+#if IS_RF_MT6186M
+/*MT6186M*/ //For DLIF mode
+/*MT6186M*/ char  L1D_RF_Cal_IF_Synth_State( void )
+/*MT6186M*/ {
+   #if IS_W_CANCELLATION_SUPPORT
+/*MT6186M*/    if( L1D_CheckIfMetaMode() )
+/*MT6186M*/    {  return l1d_rf.if_state;  }
+/*MT6186M*/    else
+/*MT6186M*/    {  return 0;  }
+   #else
+/*MT6186M*/    return 0;
+   #endif
+/*MT6186M*/ }
+/*MT6186M*/ /* =========================================================================== */
+/*MT6186M*/
+/*MT6186M*/ void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, unsigned long *freq_hsb, unsigned long *freq_lsb )
+/*MT6186M*/ {  
+/*MT6186M*/    unsigned short CH_freq =0;
+/*MT6186M*/    int64  FLO_scale_freq=0;
+/*MT6186M*/    CH_freq = L1D_RF_ARFCN_CH_to_RxFreq( rf_band, arfcn );
+/*MT6186M*/    FLO_scale_freq = (((int64)CH_freq)*SET_FLO_UNIT)<<L1D_FLO_SCALE_NUM; // FLO_scale_freq = FLO * (5*200000)* (2^11) (Hz), (2^11) is scale 
+/*MT6186M*/    *freq_hsb = (unsigned long)GET_FREQ_HSB(FLO_scale_freq);
+/*MT6186M*/    *freq_lsb = (unsigned long)GET_FREQ_LSB(FLO_scale_freq);
+/*MT6186M*/
+/*MT6186M*/    /* Switch +- DLIF */
+/*MT6186M*/    l1d_rf.obb_if_sign = -1;
+/*MT6186M*/ }
+/*MT6186M*/ /* =========================================================================== */
+/*MT6186M*/
+/*MT6186M*/ void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, unsigned long *freq_hsb, unsigned long *freq_lsb )
+/*MT6186M*/ {
+/*MT6186M*/    unsigned short  CH_freq =0;
+/*MT6186M*/    int64  FLO_scale_freq=0;
+/*MT6186M*/
+/*MT6186M*/    l1d_rf2.arfcn = arfcn;  //for L1D_RF_TxGainSetting
+/*MT6186M*/ #if IS_MIPI_SUPPORT 
+/*MT6186M*/    l1d_mipi.tx_arfcn = arfcn;  //for L1D_RF_TxGainSetting
+/*MT6186M*/ #endif
+/*MT6186M*/    CH_freq = L1D_RF_ARFCN_CH_to_TxFreq( rf_band, arfcn );
+/*MT6186M*/    FLO_scale_freq = (((int64)CH_freq)*SET_FLO_UNIT)<<L1D_FLO_SCALE_NUM; // FLO_scale_freq = FLO * (5*200000)* (2^11) (Hz), (2^11) is scale
+/*MT6186M*/    *freq_hsb = (unsigned long)GET_FREQ_HSB(FLO_scale_freq);
+/*MT6186M*/    *freq_lsb = (unsigned long)GET_FREQ_LSB(FLO_scale_freq);
+/*MT6186M*/ }
+/*MT6186M*/ /* =========================================================================== */
+/*MT6186M*/
+/*MT6186M*/ unsigned short L1D_RF_ARFCN_CH_to_RxFreq( int rf_band, int arfcn )
+/*MT6186M*/ {
+/*MT6186M*/    unsigned short freq=4450+225;
+/*MT6186M*/    switch( rf_band )
+/*MT6186M*/    {
+/*MT6186M*/       case  FrequencyBand850 :
+/*MT6186M*/       {
+/*MT6186M*/          freq=4121+(arfcn-128)+225;     //freq = f_ch*SYNTH_SCALE
+/*MT6186M*/          break;
+/*MT6186M*/       }
+/*MT6186M*/       case  FrequencyBand900 :
+/*MT6186M*/       {
+/*MT6186M*/          if( arfcn<=124 )
+/*MT6186M*/          {  freq=4450+arfcn+225;  }
+/*MT6186M*/          else
+/*MT6186M*/          {  freq=4450+(arfcn-1024)+225;  }
+/*MT6186M*/          break;
+/*MT6186M*/       }
+/*MT6186M*/       case  FrequencyBand1800 :
+/*MT6186M*/       {
+/*MT6186M*/          freq=8551+(arfcn-512)+475;
+/*MT6186M*/          break;
+/*MT6186M*/       }
+/*MT6186M*/       case  FrequencyBand1900 :
+/*MT6186M*/       {
+/*MT6186M*/          freq=9251+(arfcn-512)+400;
+/*MT6186M*/          break;
+/*MT6186M*/       }
+/*MT6186M*/       default :
+/*MT6186M*/       {
+/*MT6186M*/          break;
+/*MT6186M*/       }
+/*MT6186M*/    }
+/*MT6186M*/
+/*MT6186M*/    return freq;
+/*MT6186M*/ }
+/*MT6186M*/ /* =========================================================================== */
+/*MT6186M*/
+/*MT6186M*/ unsigned short L1D_RF_ARFCN_CH_to_TxFreq( int rf_band, int arfcn )
+/*MT6186M*/ {
+/*MT6186M*/    unsigned short freq=4450;
+/*MT6186M*/    switch( rf_band )
+/*MT6186M*/    {
+/*MT6186M*/       case  FrequencyBand850 :
+/*MT6186M*/       {
+/*MT6186M*/          freq=4121+(arfcn-128);     //freq = f_ch*SYNTH_SCALE
+/*MT6186M*/          break;
+/*MT6186M*/       }
+/*MT6186M*/       case  FrequencyBand900 :
+/*MT6186M*/       {
+/*MT6186M*/          if( arfcn<=124 )
+/*MT6186M*/          {  freq=4450+arfcn;  }
+/*MT6186M*/          else
+/*MT6186M*/          {  freq=4450+(arfcn-1024);  }
+/*MT6186M*/          break;
+/*MT6186M*/       }
+/*MT6186M*/       case  FrequencyBand1800 :
+/*MT6186M*/       {
+/*MT6186M*/          freq=8551+(arfcn-512);
+/*MT6186M*/          break;
+/*MT6186M*/       }
+/*MT6186M*/       case  FrequencyBand1900 :
+/*MT6186M*/       {
+/*MT6186M*/          freq=9251+(arfcn-512);
+/*MT6186M*/          break;
+/*MT6186M*/       }
+/*MT6186M*/       default :
+/*MT6186M*/       {
+/*MT6186M*/          break;
+/*MT6186M*/       }
+/*MT6186M*/    }
+/*MT6186M*/
+/*MT6186M*/    return freq;
+/*MT6186M*/ }
+/*MT6186M*/ /* =========================================================================== */
+/*MT6186M*/
+/*MT6186M*/ unsigned short L1D_RF_GetTxDCOSCACodeTypeSetting(unsigned short Nint, unsigned long  Nfrac)
+/*MT6186M*/ {
+/*MT6186M*/    return 0;
+/*MT6186M*/ }
+/*MT6186M*/ /* =========================================================================== */
+/*MT6186M*/
+/*MT6186M*/ void L1D_RF_GetTxKDCOCAL2ndSetting(int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6186M*/ {
+/*MT6186M*/  
+/*MT6186M*/    *rfN = 0;
+/*MT6186M*/    *ifN = 0;
+/*MT6186M*/ }
+/*MT6186M*/
+/*MT6186M*/ /* =========================================================================== */
+/*MT6186M*/ unsigned short L1D_RF_GetTxDEMChunkSetting(int rf_band, unsigned short Nint)
+/*MT6186M*/ {  
+/*MT6186M*/    return 0;
+/*MT6186M*/ }
+/*MT6186M*/ /* =========================================================================== */
+/*MT6186M*/
+#endif
+
+#if IS_RF_MT6190T
+/*MT6190T*/ //For DLIF mode
+/*MT6190T*/ char  L1D_RF_Cal_IF_Synth_State( void )
+/*MT6190T*/ {
+/*MT6190T*/ #if IS_W_CANCELLATION_SUPPORT
+/*MT6190T*/    if( L1D_CheckIfMetaMode() )
+/*MT6190T*/    {  return l1d_rf.if_state;  }
+/*MT6190T*/    else
+/*MT6190T*/    {  return 0;  }
+/*MT6190T*/ #else
+/*MT6190T*/    return 0;
+/*MT6190T*/ #endif
+/*MT6190T*/ }
+/*MT6190T*/ /* =========================================================================== */
+/*MT6190T*/
+/*MT6190T*/ void  L1D_RF_GetRxPLLSetting( int rf_band, int arfcn, unsigned long *freq_hsb, unsigned long *freq_lsb )
+/*MT6190T*/ {  
+/*MT6190T*/    unsigned short CH_freq =0;
+/*MT6190T*/    int64  FLO_scale_freq=0;
+/*MT6190T*/    CH_freq = L1D_RF_ARFCN_CH_to_RxFreq( rf_band, arfcn );
+/*MT6190T*/    FLO_scale_freq = (((int64)CH_freq)*SET_FLO_UNIT)<<L1D_FLO_SCALE_NUM; // FLO_scale_freq = FLO * (5*200000)* (2^11) (Hz), (2^11) is scale 
+/*MT6190T*/    *freq_hsb = (unsigned long)GET_FREQ_HSB(FLO_scale_freq);
+/*MT6190T*/    *freq_lsb = (unsigned long)GET_FREQ_LSB(FLO_scale_freq);
+/*MT6190T*/
+/*MT6190T*/    /* Switch +- DLIF */
+/*MT6190T*/    l1d_rf.obb_if_sign = -1;
+/*MT6190T*/ }
+/*MT6190T*/ /* =========================================================================== */
+/*MT6190T*/
+/*MT6190T*/ void  L1D_RF_GetTxPLLSetting( int rf_band, int arfcn, unsigned long *freq_hsb, unsigned long *freq_lsb )
+/*MT6190T*/ {
+/*MT6190T*/    unsigned short  CH_freq =0;
+/*MT6190T*/    int64  FLO_scale_freq=0;
+/*MT6190T*/
+/*MT6190T*/    l1d_rf2.arfcn = arfcn;  //for L1D_RF_TxGainSetting
+/*MT6190T*/    CH_freq = L1D_RF_ARFCN_CH_to_TxFreq( rf_band, arfcn );
+/*MT6190T*/    FLO_scale_freq = (((int64)CH_freq)*SET_FLO_UNIT)<<L1D_FLO_SCALE_NUM; // FLO_scale_freq = FLO * (5*200000)* (2^11) (Hz), (2^11) is scale
+/*MT6190T*/    *freq_hsb = (unsigned long)GET_FREQ_HSB(FLO_scale_freq);
+/*MT6190T*/    *freq_lsb = (unsigned long)GET_FREQ_LSB(FLO_scale_freq);
+/*MT6190T*/ }
+/*MT6190T*/ /* =========================================================================== */
+/*MT6190T*/
+/*MT6190T*/ unsigned short L1D_RF_ARFCN_CH_to_RxFreq( int rf_band, int arfcn )
+/*MT6190T*/ {
+/*MT6190T*/    unsigned short freq=4450+225;
+/*MT6190T*/    switch( rf_band )
+/*MT6190T*/    {
+/*MT6190T*/       case  FrequencyBand850 :
+/*MT6190T*/       {
+/*MT6190T*/          freq=4121+(arfcn-128)+225;     //freq = f_ch*SYNTH_SCALE
+/*MT6190T*/          break;
+/*MT6190T*/       }
+/*MT6190T*/       case  FrequencyBand900 :
+/*MT6190T*/       {
+/*MT6190T*/          if( arfcn<=124 )
+/*MT6190T*/          {  freq=4450+arfcn+225;  }
+/*MT6190T*/          else
+/*MT6190T*/          {  freq=4450+(arfcn-1024)+225;  }
+/*MT6190T*/          break;
+/*MT6190T*/       }
+/*MT6190T*/       case  FrequencyBand1800 :
+/*MT6190T*/       {
+/*MT6190T*/          freq=8551+(arfcn-512)+475;
+/*MT6190T*/          break;
+/*MT6190T*/       }
+/*MT6190T*/       case  FrequencyBand1900 :
+/*MT6190T*/       {
+/*MT6190T*/          freq=9251+(arfcn-512)+400;
+/*MT6190T*/          break;
+/*MT6190T*/       }
+/*MT6190T*/       default :
+/*MT6190T*/       {
+/*MT6190T*/          break;
+/*MT6190T*/       }
+/*MT6190T*/    }
+/*MT6190T*/
+/*MT6190T*/    return freq;
+/*MT6190T*/ }
+/*MT6190T*/ /* =========================================================================== */
+/*MT6190T*/
+/*MT6190T*/ unsigned short L1D_RF_ARFCN_CH_to_TxFreq( int rf_band, int arfcn )
+/*MT6190T*/ {
+/*MT6190T*/    unsigned short freq=4450;
+/*MT6190T*/    switch( rf_band )
+/*MT6190T*/    {
+/*MT6190T*/       case  FrequencyBand850 :
+/*MT6190T*/       {
+/*MT6190T*/          freq=4121+(arfcn-128);     //freq = f_ch*SYNTH_SCALE
+/*MT6190T*/          break;
+/*MT6190T*/       }
+/*MT6190T*/       case  FrequencyBand900 :
+/*MT6190T*/       {
+/*MT6190T*/          if( arfcn<=124 )
+/*MT6190T*/          {  freq=4450+arfcn;  }
+/*MT6190T*/          else
+/*MT6190T*/          {  freq=4450+(arfcn-1024);  }
+/*MT6190T*/          break;
+/*MT6190T*/       }
+/*MT6190T*/       case  FrequencyBand1800 :
+/*MT6190T*/       {
+/*MT6190T*/          freq=8551+(arfcn-512);
+/*MT6190T*/          break;
+/*MT6190T*/       }
+/*MT6190T*/       case  FrequencyBand1900 :
+/*MT6190T*/       {
+/*MT6190T*/          freq=9251+(arfcn-512);
+/*MT6190T*/          break;
+/*MT6190T*/       }
+/*MT6190T*/       default :
+/*MT6190T*/       {
+/*MT6190T*/          break;
+/*MT6190T*/       }
+/*MT6190T*/    }
+/*MT6190T*/
+/*MT6190T*/    return freq;
+/*MT6190T*/ }
+/*MT6190T*/ /* =========================================================================== */
+/*MT6190T*/
+/*MT6190T*/ unsigned short L1D_RF_GetTxDCOSCACodeTypeSetting(unsigned short Nint, unsigned long  Nfrac)
+/*MT6190T*/ {
+/*MT6190T*/    return 0;
+/*MT6190T*/ }
+/*MT6190T*/ /* =========================================================================== */
+/*MT6190T*/
+/*MT6190T*/ void L1D_RF_GetTxKDCOCAL2ndSetting(int rf_band, int arfcn, long *rfN, long *ifN )
+/*MT6190T*/ {
+/*MT6190T*/  
+/*MT6190T*/    *rfN = 0;
+/*MT6190T*/    *ifN = 0;
+/*MT6190T*/ }
+/*MT6190T*/
+/*MT6190T*/ /* =========================================================================== */
+/*MT6190T*/ unsigned short L1D_RF_GetTxDEMChunkSetting(int rf_band, unsigned short Nint)
+/*MT6190T*/ {  
+/*MT6190T*/    return 0;
+/*MT6190T*/ }
+/*MT6190T*/ /* =========================================================================== */
+/*MT6190T*/
+#endif
+
+
+
+
+