[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/interface/l1/ul1/external/ul1cal.h b/mcu/interface/l1/ul1/external/ul1cal.h
new file mode 100644
index 0000000..b126703
--- /dev/null
+++ b/mcu/interface/l1/ul1/external/ul1cal.h
@@ -0,0 +1,686 @@
+/*****************************************************************************
+* 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:
+ * ---------
+ * ul1cal.h
+ *
+ * Project:
+ * --------
+ * Maui_Software
+ *
+ * Description:
+ * ------------
+ * The structure definition of UL1 calibration data
+ *
+ * Author:
+ * -------
+ * -------
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ * removed!
+ * removed!
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+#ifndef UL1CAL_H
+#define UL1CAL_H
+
+/*===============================================================================*/
+
+#include "kal_general_types.h"
+#include "ul1d_rf_public.h"
+#include "dcl.h" //SmartPhone Project's CommonModemImage need this
+#include "ul1d_rf_cid.h"
+#include "ul1d_rf_cal_poc_data.h"
+#include "ul1d_mipi_public.h"
+/*===============================================================================*/
+
+/* ------------------------------------------------------------------------- */
+typedef struct
+{
+ kal_uint16 tempdacData[8];
+}ul1cal_tempdacData_T;
+
+typedef struct
+{
+ U_sTEMPAGCOFFSET pathlossData;
+}ul1cal_pathlossData_T;
+
+typedef struct
+{
+ U_sRAMPDATA txdacData;
+}ul1cal_txdacData_T;
+
+/* PA 8-level control (MT6276, MT6573) */
+typedef struct
+{
+ U_sPAOCTLVLSETTING txPaOctLevData;
+}ul1cal_txPaOctLevData_T;
+
+typedef struct
+{
+ U_sPARACHTMCOMPDATA txPrachTmCompData;
+}ul1cal_txPrachTmCompData_T;
+
+typedef struct
+{
+ U_sAFCDACDATA afcDacData;
+}ul1cal_afcDacData_T;
+
+typedef struct
+{
+ U_sAFCCAPDATA afcCapData;
+}ul1cal_afcCapData_T;
+
+#if defined (__UL1_HS_PLATFORM__) || defined (__UL1_HS_PLUS_PLATFORM__)
+
+typedef struct
+{
+ U_sUl1dRfCustomInputData umtsRfCustomInput;
+}ul1cal_umtsRfCustomInput_T;
+
+#endif
+
+typedef struct
+{
+ U_sTEMPAGCOFFSET pathlossData;
+}ul1cal_pathlossRxdData_T;
+
+typedef struct
+{
+ U_sPADRIFTSETTING txPaDriftCompData;
+}ul1cal_txPaDriftCompData_T;
+
+
+#if IS_3G_SAR_TX_POWER_BACKOFF_SUPPORT
+typedef struct
+{
+ U_sSARBackoffDATA sarBackoffData;
+}ul1cal_SARBackoffData_T;
+
+typedef struct
+{
+ const U_sSARBackoffDATA* const* sarBackoffData_p;
+}Ul1CustomDynamicSARBackoffData;
+
+#endif
+
+
+#if IS_3G_TX_POWER_OFFSET_SUPPORT
+typedef struct
+{
+ U_sTXPOWEROFFSETDATA txPowerOffsetData;
+}ul1cal_txPowerOffsetData_T;
+
+typedef struct
+{
+ const U_sTXPOWEROFFSETDATA* const* TpoData_p;
+}Ul1CustomDynamicTpoData;
+
+#endif
+
+#if IS_3G_TX_NSFT_POWER_OFFSET_SUPPORT
+typedef struct
+{
+ const U_sTXNSFTPOWEROFFSETDATA* const* nsftTpoData_p;
+}Ul1CustomDynamicNsftTpoData;
+#endif
+
+#if (IS_3G_RX_POWER_OFFSET_SUPPORT )
+typedef struct
+{
+ U_sUl1dMetaRxPowerOffsetSetting RpoSetting;
+ const U_sRXPOWEROFFSETDATA* const* RpoData_p;
+}Ul1CustomDynamicRpoData;
+#endif
+#if (IS_3G_VPA_SEL_BY_BAND_SUPPORT)
+typedef struct
+{
+ const UMTS_VPA_SOURCE_TYPE* const* vpaSrcSelTable_p;
+}Ul1CustomDynamicVpaSrcSelData;
+#endif/*IS_3G_VPA_SEL_BY_BAND_SUPPORT*/
+
+/*------------- Single Software Load for Multiple Components Compatible -------------*/
+/*****************************************************************************
+* Constant : UL1CUSTOM_MAX_RF_BPI_EVENT_NUM
+* Group : Real target, Internal, UL1D common operation
+* Description : Constant to be used for record the maximum 3G BPI event
+* support numbers currently in use
+*****************************************************************************/
+#define UL1CUSTOM_MAX_RF_BPI_EVENT_NUM (15) //MT6280 Changes to 15
+
+/*****************************************************************************
+* Constant : UL1CUSTOM_MAX_RF_SUPPORT_BAND_NUM
+* Group : Real target, Internal, UL1D common operation
+* Description : Constant to be used for record the maximum 3G RF band
+* support numbers currently in use
+*****************************************************************************/
+#define UL1CUSTOM_MAX_RF_SUPPORT_BAND_NUM (MAX_SUPPORTED_BAND_INDEX) //MT6280 Changes to 5
+
+/*****************************************************************************
+* Constant : UL1CUSTOM_NULL_ACTION
+* UL1CUSTOM_GPIO_DETECTION_ID
+* UL1CUSTOM_ADC_DETECTION_ID
+* UL1CUSTOM_NVRAM_BARCODE_DETECTION_ID
+* Group : Real target, Internals, UL1D common operation
+* Description : Constant to be used to define the value to be used in
+* enumeration Ul1CustomActionId
+*****************************************************************************/
+#define UL1CUSTOM_NULL_ACTION (0)
+#define UL1CUSTOM_GPIO_DETECTION_ID (1)
+#define UL1CUSTOM_ADC_DETECTION_ID (2)
+#define UL1CUSTOM_NVRAM_BARCODE_DETECTION_ID (3)
+
+/*****************************************************************************
+* Typedef : Ul1CustomFunction
+* Group : Real target, Internals, UL1D common operation
+* Type : Function pointer
+* Description : Internal typedef used by UL1 Custom action function prototype
+*****************************************************************************/
+typedef void (*Ul1CustomFunction)(void *usrDataPtr);
+
+/*****************************************************************************
+* Typedef : Ul1CustomDynamicInitLnaPortTxPath
+* Group : Real target, Internals, UL1D common operation
+* Type : structure
+* Description : Internal typedef used by UL1 Custom dynamic initialization data
+* for LNA port and Tx path setting
+*****************************************************************************/
+typedef struct
+{
+ /* User input to notify the band of the data to be modified */
+ kal_uint32 bandToModify;
+
+ /* LNA port selection */
+ kal_uint8 lnaPortNum;
+
+ /* TX output path selection */
+ kal_uint8 txOutputSel;
+
+ /* RXD LNA port selection */
+ kal_uint8 lnaPortNum2;
+} Ul1CustomDynamicInitLnaPortTxPath;
+
+/*****************************************************************************
+* Typedef : Ul1CustomDynamicInitUmtsBpiData
+* Group : Real target, Internals, UL1D common operation
+* Type : structure
+* Description : Internal typedef used by UL1 Custom dynamic initialization data
+* 3G BPI data
+*****************************************************************************/
+typedef struct
+{
+ /* User input to notify the band of the data to be modified */
+ kal_uint32 bandToModify;
+
+ /* ASM logics */
+ kal_uint16 asmLogics[UL1CUSTOM_MAX_RF_BPI_EVENT_NUM];
+
+ /* PA enable control bits */
+// kal_uint8 paEnables[UL1CUSTOM_MAX_RF_BPI_EVENT_NUM];
+
+} Ul1CustomDynamicInitUmtsBpiData;
+
+/*****************************************************************************
+* Typedef : Ul1CustomDynamicInitUmtsTxRampData
+* Group : Real target, Internals, UL1D common operation
+* Type : structure
+* Description : Internal typedef used by UL1 Custom dynamic initialization data
+* 3G Tx Ramp data
+*****************************************************************************/
+typedef struct
+{
+ /* 3G TX Ramp data array */
+ U_sRAMPDATA *TxRampData[UL1CUSTOM_MAX_RF_SUPPORT_BAND_NUM];
+
+} Ul1CustomDynamicInitUmtsTxRampData;
+
+/*****************************************************************************
+* Typedef : Ul1CustomDynamicInitUmtsTxPaOctLvlData
+* Group : Real target, Internals, UL1D common operation
+* Type : structure
+* Description : Internal typedef used by UL1 Custom dynamic initialization data
+* 3G Tx PA oct-level data
+*****************************************************************************/
+typedef struct
+{
+ /* 3G TX Ramp data array */
+ U_sPAOCTLVLSETTING *TxPaOctLvl[UL1CUSTOM_MAX_RF_SUPPORT_BAND_NUM];
+
+} Ul1CustomDynamicInitUmtsTxPaOctLvlData;
+
+/*****************************************************************************
+* Typedef : Ul1CustomDynamicInitUmtsRxPathLossData
+* Group : Real target, Internals, UL1D common operation
+* Type : structure
+* Description : Internal typedef used by UL1 Custom dynamic initialization data
+* 3G Rx path loss data
+*****************************************************************************/
+
+typedef struct
+{
+ /* 3G TX Ramp data array */
+ U_sTEMPAGCOFFSET **RxPathLoss_p;
+
+} Ul1CustomDynamicInitUmtsRxPathLossData;
+
+typedef struct
+{
+ /* 3G RX path loss */
+ const U_sTEMPAGCOFFSET* const* RxPathLoss_p;
+ const U_sTEMPAGCOFFSET* const* RxDPathLoss_p;
+ const U_sPAOCTLVLSETTING* const* PaOctLev_p;
+ const U_sPARACHTMCOMPDATA* const* PaRachComp_p;
+ const U_sPADRIFTSETTING* const* PaDrift_p;
+ const U_sRAMPDATA* const* RampData_p;
+ const kal_uint16 *TempDac_p;
+ const U_sAFCCAPDATA *AfcCap_p;
+ const U_sAFCDACDATA *AfcDac_p;
+} Ul1CustomDynamicInitUmtsCalData;
+
+typedef struct
+{
+ const UMTS_FE_ROUTE_TABLE_T *FeSetting;
+
+} Ul1CustomDynamicInitUmtsFeSettingData;
+
+typedef struct
+{
+ const U_sDPD_COMMON_CTRL **DpdCtrlData_p;
+ const U_UL1D_PCFE_DPD_OTFC_CUSTOM_PARA_T *DpdPcfeCustomData_p;
+#if IS_3G_MIPI_SUPPORT
+ const UL1_UMTS_MIPI_TPC_T **DpdTpcTable_p;
+#endif
+ DPD_ENABLE_E dpd_enable;
+} Ul1CustomDynamicInitUmtsDpdfactoryData;
+
+/*****************************************************************************
+* Typedef : Ul1CustomDynamicInitUmtsTxPrachTmCompData
+* Group : Real target, Internals, UL1D common operation
+* Type : structure
+* Description : Internal typedef used by UL1 Custom dynamic initialization data
+* 3G Tx PRACH TM comp. data
+*****************************************************************************/
+typedef struct
+{
+ /* 3G TX PRACH TM comp data array */
+ U_sPARACHTMCOMPDATA *TxPrachTmComp[UL1CUSTOM_MAX_RF_SUPPORT_BAND_NUM];
+
+} Ul1CustomDynamicInitUmtsTxPrachTmCompData;
+
+/*****************************************************************************
+* Typedef : Ul1CustomDynamicInitUmtsTempDac
+* Group : Real target, Internals, UL1D common operation
+* Type : structure
+* Description : Internal typedef used by UL1 Custom dynamic initialization data
+* 3G temperature DAC data
+*****************************************************************************/
+typedef struct
+{
+ /* 3G Temperature DAC */
+ kal_uint16 *UTempDac;
+
+} Ul1CustomDynamicInitUmtsTempDac;
+
+/*****************************************************************************
+* Typedef : Ul1CustomDynamicInitUmtsAfcDac
+* Group : Real target, Internals, UL1D common operation
+* Type : structure
+* Description : Internal typedef used by UL1 Custom dynamic initialization data
+* 3G temperature DAC data
+*****************************************************************************/
+typedef struct
+{
+ /* 3G AFC DAC */
+ U_sAFCDACDATA *UAfcDac;
+
+} Ul1CustomDynamicInitUmtsAfcDac;
+
+/*****************************************************************************
+* Typedef : Ul1CustomDynamicInitUmtsAfcCap
+* Group : Real target, Internals, UL1D common operation
+* Type : structure
+* Description : Internal typedef used by UL1 Custom dynamic initialization data
+* 3G temperature DAC data
+*****************************************************************************/
+typedef struct
+{
+ /* 3G AFC CAP */
+ U_sAFCCAPDATA *UAfcCap;
+
+} Ul1CustomDynamicInitUmtsAfcCap;
+
+#if (IS_3G_MIPI_SUPPORT)
+typedef struct
+{
+ MIPI_Setting mipiSetting;
+ const UL1_MIPI_EVENT_TABLE_T* const* rxEventTable_p;
+ const UL1_MIPI_DATA_SUBBAND_TABLE_T* const* rxDataTable_p;
+ const UL1_MIPI_EVENT_TABLE_T* const* txEventTable_p;
+ const UL1_MIPI_DATA_SUBBAND_TABLE_T* const* txDataTable_p;
+ const UL1_UMTS_MIPI_TPC_T* const* tpcTable_p;
+ const UL1_MIPI_DATA_TABLE_T* const* asmIsoTable_p;
+}Ul1CustomDynamicInitMipiData;
+
+typedef struct
+{
+ const UL1_MIPI_SIMPLE_EVENT_TABLE_T* const* txEventTable_p;
+ const UL1_MIPI_SIMPLE_DATA_SUBBAND_TABLE_T* const* txDataTable_p;
+ const UL1_MIPI_SIMPLE_EVENT_TABLE_T* const* tpcEventTable_p;
+ const UL1_MIPI_SIMPLE_DATA_SUBBAND_TABLE_T* const* tpcDataTable_p;
+} Ul1CustomDynamicInitMipiEtmData;
+
+#endif
+
+#if (IS_3G_DAT_UL1_CUSTOM_SUPPORT)
+
+#if !IS_3G_GEN97_DAT_SUPPORT
+typedef struct
+{
+ const UMTS_CUSTOM_DAT_FE_ROUTE_DATABASE_T *dat_fe_route;
+}Ul1CustomDynamicDatRoute;
+#endif
+
+typedef struct
+{
+ UMTS_CUSTOM_DAT_FEATURE_BY_RAT_T dat_feature_byRat;
+}Ul1CustomDynamicDatFeatureByRat;
+
+#if !IS_3G_UDAT_SUPPORT
+typedef struct
+{
+ const UMTS_CUSTOM_DAT_FE_CAT_A_T *dat_cat_a_fe_db;
+ const UMTS_CUSTOM_DAT_FE_CAT_B_T *dat_cat_b_fe_db;
+}Ul1CustomDynamicDatDb;
+
+#if (IS_3G_MIPI_SUPPORT)
+typedef struct
+{
+ const UL1_MIPI_EVENT_TABLE_T* const* catA_eventTable_p;
+ const UL1_MIPI_DATA_SUBBAND_TABLE_T* const* catA_dataTable_p;
+ const UL1_MIPI_EVENT_TABLE_T* const* catB_eventTable_p;
+ const UL1_MIPI_DATA_SUBBAND_TABLE_T* const* catB_dataTable_p;
+}Ul1CustomDynamicDatMipiData;
+#endif
+#endif /*!IS_3G_UDAT_SUPPORT*/
+#endif
+
+#if (IS_3G_TAS_UL1_CUSTOM_SUPPORT)
+
+#if IS_3G_GEN97_TAS_SUPPORT
+typedef struct
+{
+ const UMTS_CUSTOM_TAS_FE_ROUTE_DATA_T *tas_fe_route;
+}Ul1CustomDynamicTasRoute;
+#else
+typedef struct
+{
+ const UMTS_CUSTOM_TAS_FE_ROUTE_DATABASE_T *tas_fe_route;
+}Ul1CustomDynamicTasRoute;
+#endif
+
+typedef struct
+{
+ const UMTS_CUSTOM_TAS_FE_CAT_A_T *tas_cat_a_fe_db;
+ const UMTS_CUSTOM_TAS_FE_CAT_B_T *tas_cat_b_fe_db;
+ const UMTS_CUSTOM_TAS_FE_CAT_C_T *tas_cat_c_fe_db;
+}Ul1CustomDynamicTasDb;
+
+typedef struct
+{
+ UMTS_CUSTOM_TAS_FEATURE_BY_RAT_T tas_feature_byRat;
+}Ul1CustomDynamicTasFeatureByRat;
+
+#if (IS_3G_MIPI_SUPPORT)
+typedef struct
+{
+ const UL1_MIPI_EVENT_TABLE_T* const* catA_eventTable_p;
+ const UL1_MIPI_DATA_SUBBAND_TABLE_T* const* catA_dataTable_p;
+ const UL1_MIPI_EVENT_TABLE_T* const* catB_eventTable_p;
+ const UL1_MIPI_DATA_SUBBAND_TABLE_T* const* catB_dataTable_p;
+ const UL1_MIPI_EVENT_TABLE_T* const* catC_eventTable_p;
+ const UL1_MIPI_DATA_SUBBAND_TABLE_T* const* catC_dataTable_p;
+}Ul1CustomDynamicTasMipiData;
+#endif
+
+#if IS_3G_TAS_TST_SUPPORT
+typedef struct
+{
+ const UMTS_CUSTOM_TAS_TST_FE_ROUTE_DATABASE_T *tas_tst_fe_route;
+}Ul1CustomDynamicTasTstRoute;
+#endif
+#endif
+
+#if IS_3G_TAS_INHERIT_4G_ANT
+typedef struct
+{
+ const UMTS_CUSTOM_TAS_INHERIT_LTE_BAND_T* const* inheritLteAntTable_p;
+}Ul1CustomDynamicTasInheritLteAnt;
+#endif
+
+#if IS_3G_REMOVE_MIPI
+typedef struct
+{
+ kal_bool xPMU_PA_CONTROL;
+ kal_bool umtsRxDAlwaysOn;
+ kal_bool ultra_low_cost_solution;
+ kal_uint32 umtsPADriftCompensation;
+ kal_uint8 PA_section;
+ kal_bool band5_and_band6_indicator;
+#if IS_3G_B5_AND_B19_INDICATOR_SUPPORT
+ kal_bool band5_and_band19_indicator;
+ kal_bool disable_band5_indicator;
+#endif
+ U_sUl1dRfBsiBpiTiming RfBpiTiming;
+ U_sUl1dRfPaControlTiming RfPaControlTiming;
+#if defined (__UL1_HS_PLUS_PLATFORM__)
+ U_sUl1dMprBackOff umtsMprBackOff;
+#endif
+#if IS_3G_MIPI_SUPPORT
+ U_sUl1dRfMipiSetting umtsRfMipiSetting;
+#endif
+
+}Ul1CustomDynamicRfParameter;
+#else
+typedef struct
+{
+ kal_bool xPMU_PA_CONTROL;
+ kal_bool umtsRxDAlwaysOn;
+ kal_bool ultra_low_cost_solution;
+ kal_uint32 umtsPADriftCompensation;
+ kal_uint8 PA_section;
+ kal_bool band5_and_band6_indicator;
+#if IS_3G_B5_AND_B19_INDICATOR_SUPPORT
+ kal_bool band5_and_band19_indicator;
+ kal_bool disable_band5_indicator;
+#endif
+ U_sUl1dRfBsiBpiTiming RfBpiTiming;
+ U_sUl1dRfPaControlTiming RfPaControlTiming;
+#if defined (__UL1_HS_PLUS_PLATFORM__)
+ U_sUl1dMprBackOff umtsMprBackOff;
+#endif
+#if IS_3G_MIPI_SUPPORT
+ //U_sUl1dRfMipiSetting umtsRfMipiSetting;
+#endif
+
+}Ul1CustomDynamicRfParameter;
+#endif
+
+#if IS_3G_ELNA_IDX_SUPPORT
+typedef struct
+{
+ UMTS_CUSTOM_ELNA_IDX_T umtsRxElnaIdxSetting;
+}Ul1CustomDynamicElnaIdxData;
+#endif
+
+#if IS_3G_RFEQ_COEF_SUBBAND_SUPPORT
+typedef struct
+{
+ const hs_dsch_rfeq_info_band_T* const* rfeqCoef_p;
+}Ul1CustomDynamicRfeqCoefData;
+#endif
+
+#if IS_3G_RFEQ_REAL_COEF_TEST
+typedef struct
+{
+ const URXDFE_REAL_RFEQ_CUSTOM_BAND_T* const* realRfeqCoef_p;
+}Ul1CustomDynamicRealRfeqCoefData;
+#endif
+
+#if IS_3G_FDD_INDICATION_FOR_AP_CLOCK_HOPPING_SUPPORT
+typedef struct
+{
+ UMTS_RF_INTERFERENCE_FREQUENCY_T umtsRfInterferenceFreq;
+}Ul1CustomDynamicInterferenceFrequencyTable;
+#endif
+
+/*****************************************************************************
+* Typedef : Ul1CustomActionId
+* Group : Real target, Internals, UL1D common operation
+* Type : Enumeration
+* Description : Internal typedef used by UL1 Custom action ID constant value
+*****************************************************************************/
+typedef enum
+{
+ UL1CUSTOM_NULL_ACTION_ID = UL1CUSTOM_NULL_ACTION,
+ UL1CUSTOM_BASE_PROC_ACTION_ID = UL1CUSTOM_NULL_ACTION_ID,
+ UL1CUSTOM_GPIO_DETECTION = UL1CUSTOM_GPIO_DETECTION_ID,
+ UL1CUSTOM_ADC_DETECTION = UL1CUSTOM_ADC_DETECTION_ID,
+ UL1CUSTOM_NVRAM_BARCODE_DETECTION = UL1CUSTOM_NVRAM_BARCODE_DETECTION_ID,
+ UL1CUSTOM_MAX_PROC_ACTIONS
+
+} Ul1CustomActionId;
+
+/*****************************************************************************
+* Typedef : Ul1CustomDynamicInitResultRFParams
+* Group : Real target, Internals, UL1D common operation
+* Type : Enumeration
+* Description : Internal typedef used by UL1 Custom Dynamic init debug
+*****************************************************************************/
+typedef struct
+{
+ /* BPI data allocation */
+ U_sUl1dRfBpiData umtsPdata;
+
+ /* RF Hign-band and Low-band indicator */
+ U_sUl1dRfBandIndicator umtsBandIndicator;
+
+ /* RX LNA port selection */
+ U_sUl1dRfRxLnaPortSel umtsRxLnaPortSel;
+
+ /* TX output path selection */
+ U_sUl1dRfTxPathSel umtsTxPathSel;
+
+ /* RXd Path Setting (Main/Diversity on off Switch) */
+ U_sUl1dRxdPathSetting umtsRxdPathSetting;
+
+ /* PA Drift Compensation (On/Off Switch Mask) */
+ kal_uint32 umtsPADriftCompensation;
+} Ul1CustomDynamicInitResultRFParams;
+
+/*****************************************************************************
+* Typedef : Ul1CustomDynamicInitDebug
+* Group : Real target, Internals, UL1D common operation
+* Type : Enumeration
+* Description : Internal typedef used by UL1 Custom Dynamic init debug
+*****************************************************************************/
+typedef struct
+{
+ kal_uint16 combined_config_index;
+ kal_uint8 first_config_index_base;
+ kal_uint8 second_config_index_base;
+ kal_uint8 third_config_index_base;
+ kal_int32 gpio_get_pin_rpc_status;
+ kal_uint32 gpio_return_pin_num[3];
+ kal_uint32 gpio_pin_value[3];
+ kal_uint32 gpio_combined_pin_value;
+ kal_int32 adc_get_ch_num_rpc_status;
+ DCL_STATUS adc_dcl_handle_status;
+ DCL_STATUS adc_cal_dcl_handle_status;
+ kal_uint32 adc_get_ch_num;
+ kal_uint32 adc_dac_read_result;
+ kal_uint32 adc_volt_translate_result;
+ kal_uint8 adc_volt_level;
+ kal_bool barcode_lid_read_status;
+ kal_uint8 barcode_digit_read_result;
+ kal_bool umts_tempdac_lid_write_status;
+ kal_bool umts_txrampdata_lid_write_status;
+ kal_bool umts_txpaoctlvl_lid_write_status;
+ kal_bool umts_rxpathloss_lid_write_status;
+ kal_bool umts_txprachtmcomp_lid_write_status;
+ kal_bool umts_rf_params_lid_write_status;
+ Ul1CustomDynamicInitResultRFParams custom_dynamic_init_result_params;
+
+} Ul1CustomDynamicInitDebug;
+/*------------- Single Software Load for Multiple Components Compatible -------------*/
+
+/*****************************************************************************
+* Description : POC calibration global
+*****************************************************************************/
+/************************************************************************************
+* Global Functions Prototype (Interface)
+************************************************************************************/
+/* Function Prototypes can be used by other files */
+void UL1D_RFC_SHARE_CW_INIT(void);
+
+/************************************************************************************
+* Global Variables extern (Interface)
+************************************************************************************/
+#if 0/* No more used */
+/* under construction !*/
+#endif
+
+#ifdef __MTK_TARGET__
+#if IS_3G_SAR_TX_POWER_OFFSET_CONDI_SUPPORT
+extern const Ul1CustomDynamicSARBackoffData ul1CustomSarBackoffDataCondi[TPO_3G_TABLE_TYPE_NUM];
+extern kal_uint32 TPO_3G_TOTAL_TYPE_NUM;
+#endif
+#endif//__MTK_TARGET__
+
+extern void UL1D_RF_DynamicCustomTable_Update(const Ul1CustomDynamicInitUmtsFeSettingData *RfFeRoute_array_ptr);
+extern void UL1D_RF_DynamicSetRfParameter(U_sUl1dRfCustomInputData *dst, const Ul1CustomDynamicRfParameter *RfTiming_ptr );
+ #if(IS_3G_RX_POWER_OFFSET_SUPPORT)
+extern void UL1D_RF_DynamicRxPowerOffset_Update(U_sUl1dRfCustomInputData *dst, const Ul1CustomDynamicRpoData *source);
+ #endif
+
+#endif