blob: 7f2827071e3783c4973211d0a793d3e50f2537d0 [file] [log] [blame]
/*****************************************************************************
* Copyright Statement:
* --------------------
* This software is protected by Copyright and the information contained
* herein is confidential. The software may not be copied and the information
* contained herein may not be used or disclosed except with the written
* permission of MediaTek Inc. (C) 2007
*
* 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:
* ---------
* mrs_as_enums.h
*
* Project:
* --------
* Multimode
*
* Description:
* ------------
*
*
* Author:
* -------
* -------
*
* ----------------------------------------------------------------------------
* removed!
*
* removed!
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
*
* removed!
* removed!
*
* removed!
* removed!
*
* removed!
* removed!
*
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
* removed!
*
* removed!
* removed!
*
* removed!
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
*
* removed!
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
* removed!
*
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
* removed!
******************************************************************************/
#ifndef _MRS_AS_ENUMS_H
#define _MRS_AS_ENUMS_H
#include "global_def.h"
#include "l3_inc_enums.h"
#include "ps_public_enum.h"
#include "mrs_as_inter_core_enum.h"
#include "mrs_as_irat_enums.h"
typedef enum
{
INITIAL,
SHARED,
OCCUPIED
}lower_layer_availability_enum;
#if defined(__GEMINI__)
#define MAX_GAS_CAPABILITY MAX_GSM_NUM
#define MAX_UAS_CAPABILITY MAX_UMTS_NUM
#define MAX_EAS_CAPABILITY MAX_LTE_NUM
#define MAX_MM_CAPABILITY MAX_GSM_NUM /* assume GSM number > UMTS number */
#define MAX_EMM_CAPABILITY MAX_LTE_NUM
#ifdef __FIVEG_NAS__
#define MAX_VGNAS_CAPABILITY MAX_SIM_NUM
#endif /* __FIVEG_NAS__ */
#define MAX_CAS_CAPABILITY 1
#ifdef __NR_RAT__
#define MAX_NRAS_CAPABILITY MAX_NR_NUM
#endif /* __NR_RAT__ */
#else
#define MAX_GAS_CAPABILITY 1
#define MAX_UAS_CAPABILITY 1
#define MAX_EAS_CAPABILITY 1
#define MAX_MM_CAPABILITY 1
#define MAX_EMM_CAPABILITY 1
#ifdef __FIVEG_NAS__
#define MAX_VGNAS_CAPABILITY 1
#endif /* __FIVEG_NAS__ */
#define MAX_CAS_CAPABILITY 1
#ifdef __NR_RAT__
#define MAX_NRAS_CAPABILITY 1
#endif /* __NR_RAT__ */
#endif
#define MAX_ASSOCIATION_LAI_CELL_INFO 12
#define MAX_ASSOCIATION_SAME_LAI_CELL_INFO 24
/* For fast resume and Search info. reuse for mode switch. */
#define SI1_RAW_VALID 0x01 //00000001
#define SI2_RAW_VALID 0x02 //00000010
#define SI2BIS_RAW_VALID 0x04 //00000100
#define SI3_RAW_VALID 0x08 //00001000
#define SI4_RAW_VALID 0x10 //00010000
#define SI13_RAW_VALID 0x20 //00100000
#define SI1_EXIS 0x80 //10000000
#define SI2SERIES_RAW_VALiD 0x06 //00000110 si2 & si2bis
#define ALL_SI_RAW_VALID 0xbf //10111111
#ifdef __PS_SERVICE__
#define GAS_FAST_MODE_SWITCH_VALID_SI 0xbf //10111111
#else
#define GAS_FAST_MODE_SWITCH_VALID_SI 0x9f //10011111
#endif
#define GAS_SI_RAW_DATA_LEN 20
#ifdef __GAS_STORED_SI_FEAT__
#define RRM_MAX_SI2TER_INSTANCES 8
#define RRM_SI2TER_REST_LEN 4
#define RRM_MAX_SI2QUARTER_INSTANCES 16
#define RRM_SI2QUARTER_REST_LEN 20
#define RRM_MAX_SIZE_OF_GAS_STORED_SI_LIST 8
#define GAS_CANDIDATE_TICK_INIT (0xFFFFFFFF)
#endif
#define AFR_MASK_2G4 0x0001
#define AFR_MASK_3G4 0x0002
#define AFR_MASK_2G5_FDD 0x0004
#define AFR_MASK_2G5_TDD 0x0008
#define AFR_MASK_3G5_FDD 0x0010
#define AFR_MASK_3G5_TDD 0x0020
#define AFR_MASK_4G5 0x0040
/* Already in l3_inc_enums.h
typedef enum
{
DEL_CSG,
ADD_CSG
}csg_update_type_enum;
*/
typedef enum
{
NO_CHANGE,
ALLOWED_CSG_LIST_CHANGED,
OPERATOR_CSG_LIST_CHANGED,
BOTH_CSG_LIST_CHANGED
}white_list_update_type;
/* Already in ps_public_enum.h
typedef enum
{
NOT_IN_WHITE_LIST,
ALLOWED_CSG,
OPERATOR_CSG,
UNAUTH_OPERATOR_CSG
}csg_type_enum;
*/
typedef enum
{
ALLOWED_CSG_LIST,
OPERATOR_CSG_LIST
}csg_list_type_enum;
typedef enum
{
SIM_NEW_INSERTED,
SIM_FILE_UPDATED,
AS_UPDATED
}csg_white_list_update_cause;
typedef enum
{
CSFB_REDUCE_LAU = 1,
CSFB_DEFER_SI13,
CSFB_2G_AFR,
CSFB_3G_AFR,
CSFB_2G_FDD_eCSFB,
CSFB_3G_FDD_eCSFB,
CSFB_2G_TDD_eCSFB,
CSFB_3G_TDD_eCSFB,
CSFB_ENHANCEMENT_ITEM_END
}csfb_enhancement_enum;
typedef enum
{
BAND_39_DISABLE,
BAND_39_ENABLE
}band_39_control_enum;
typedef enum
{
BAND_DISABLE,
BAND_ENABLE
}eas_band_control_enum;
typedef enum
{
BG_SEARCH_2G4_FDD,
BG_SEARCH_3G4_FDD,
BG_SEARCH_2G4_TDD,
BG_SEARCH_3G4_TDD,
BG_SEARCH_2G5_FDD,
BG_SEARCH_3G5_FDD,
BG_SEARCH_2G5_TDD,
BG_SEARCH_3G5_TDD,
BG_SEARCH_4G5
}background_search_enum;
typedef enum
{
MRS_GAS_FAST_MODE_SWITCH_NOT_ALLOWED = 0x00, //Initial value
MRS_GAS_FAST_MODE_SWITCH_COLLECTING_ESSENTIAL_SI = 0x01 << 0, //RATCM_GAS_SYS_INFO not sent or still receiving essential SI
MRS_GAS_FAST_MODE_SWITCH_ESSENTIAL_SI_COLLECTED = 0x01 << 1, //RATCM_GAS_SYS_INFO sent
MRS_GAS_FAST_MODE_SWITCH_NOT_HAPPENED = 0x01 << 2, // DUPLEX mode change not happened
MRS_GAS_FAST_MODE_SWITCH_HAPPENED = 0x01 << 3, // DUPLEX mode change happened
MRS_GAS_FAST_MODE_SWITCH_NOT_HAPPENED_WO_SI = MRS_GAS_FAST_MODE_SWITCH_COLLECTING_ESSENTIAL_SI
+ MRS_GAS_FAST_MODE_SWITCH_NOT_HAPPENED,
MRS_GAS_FAST_MODE_SWITCH_HAPPENED_BUT_WO_SI = MRS_GAS_FAST_MODE_SWITCH_COLLECTING_ESSENTIAL_SI
+ MRS_GAS_FAST_MODE_SWITCH_HAPPENED,
MRS_GAS_FAST_MODE_SWITCH_NOT_HAPPENED_W_SI = MRS_GAS_FAST_MODE_SWITCH_ESSENTIAL_SI_COLLECTED
+ MRS_GAS_FAST_MODE_SWITCH_NOT_HAPPENED,
MRS_GAS_FAST_MODE_SWITCH_ALLOWED = MRS_GAS_FAST_MODE_SWITCH_ESSENTIAL_SI_COLLECTED
+ MRS_GAS_FAST_MODE_SWITCH_HAPPENED,
} mrs_gas_fast_mode_switch_status_enum;
typedef enum
{
MODULE_NONE,
MODULE_ERRC_RCM,
MODULE_ERRC_CEL,
MODULE_ERRC_SPV,
MODULE_UAS_FDD,
MODULE_UAS_TDD,
MODULE_GAS_FDD,
MODULE_GAS_TDD,
MODULE_C2K
#ifdef __NR_RAT__
,
MODULE_NRRC_IDLE,
MODULE_NRRC_BACKGROUND,
MODULE_NRRC_NCONN,
MODULE_NRRC_MAIN
#endif /* __NR_RAT__ */
}function_caller_id_enum;
typedef enum
{
STATE_NONE=0,
CHINA_MCC
}mrs_sim_band_cfg_state_enum;
typedef enum
{
DISABLE_BAND_STATE_NONE = 0,
DISABLE_BAND_7_38,
DISABLE_BAND_NULL_BAND
}mrs_plmn_band_cfg_state_enum;
typedef enum
{
PARTIAL_BAND_SETTING_NONE = 0,
CHINA_PARTIAL_BAND_SETTING,
JAPAN_PARTIAL_BAND_SETTING
}mrs_sim_partial_band_cfg_state_enum;
typedef enum
{
CUSTOM_DISABLE_BAND_BY_PLMN_NONE = 0,
CUSTOM_DISABLE_BAND_BY_PLMN,
CUSTOM_DISABLE_BAND_BY_PLMN_NULL_BAND
}mrs_custom_disable_band_by_plmn_state_enum;
typedef enum
{
PLMN_REGION_BAND_SETTING_NONE=0,
PLMN_REGION_BAND_SETTING,
PLMN_REGION_BAND_SETTING_NULL_BAND
}mrs_plmn_region_band_cfg_state_enum;
typedef enum
{
AS_RELEASE_INVALID=0,
AS_RELEASE_REL9,
AS_RELEASE_REL10,
AS_RELEASE_REL11,
AS_RELEASE_REL12,
AS_RELEASE_REL13,
AS_RELEASE_REL14,
AS_RELEASE_REL15
}mrs_as_release_enum;
typedef enum
{
CSFB_CALL_STATUS_UNKNOWN=0,
CSFB_CALL_SUCCESS,
CSFB_CALL_FAILURE
}mrs_gas_ecsfb_call_status_enum;
typedef enum
{
AFR_2G4,
AFR_3G4,
AFR_2G5_FDD,
AFR_2G5_TDD,
AFR_3G5_FDD,
AFR_3G5_TDD,
AFR_4G5,
AFR_ENHANCEMENT_ITEM_END
}afr_enhancement_enum;
typedef enum
{
SRVC_VOICE_TRIGGER_AT_5G,
SRVC_VOICE_TRIGGER_AT_4G,
SRVC_SS_TRIGGER_AT_5G,
SRVC_SS_TRIGGER_AT_4G,
SRVC_CSFB_TRIGGER_AT_4G,
SRVC_EPSFB_TRIGGER_AT_5G,
SRVC_LPP,
SRVC_EMERGENCY,
SRVC_CELLULAR_CALL,
AFR_SRVC_MAX_NUM
}afr_service_enum;
typedef enum
{
PROC_CSFB_FROM_4G,
PROC_SRVCC_FROM_4G,
PROC_EPSFB_FROM_5G,
PROC_SRVCC_FROM_5G,
AFR_PROC_MAX_NUM
}afr_pre_cond_proc_enum;
typedef enum
{
IRAT_PINGPONG_4G3=0, /* When the RAT Change between 4G & 3G, inclding 4G3 and 3G4 */
IRAT_PINGPONG_4GC2K, /* When the RAT Change is 4G to C2K, but C2K to 4G is MPSR */
IRAT_PINGPONG_4G2, /* When the RAT Change between 4G & 2G, inclding 4G2 and 2G4 */
// IRAT_PINGPONG_3G2, /* When the RAT Change between 3G & 2G, inclding 3G2 and 2G3 */
IRAT_PINGPONG_4G5, /* When the RAT Change between 4G & 5G, inclding 4G5 and 5G4 */
IRAT_PINGPONG_TYPE_NUM
}mrs_irat_pingpong_type_enum;
typedef enum
{
MRS_GEMINI_DSDS_MODE,
MRS_GEMINI_DR_DSDS_MODE,
MRS_GEMINI_DSDA_MODE,
}mrs_gemini_mode_enum;
typedef enum
{
/* MRS_FEAT_IGNORE_REDIRECT_TO_LTE:
* - Usage: Ignore the redirection to LTE if no suitable cell could be found.
* [EAS] ERRC would set this feature to TRUE if continous redirection failures are detected.
* [UAS] 3G TDD would query if needed to ignore the redirection. */
MRS_FEAT_IGNORE_REDIRECT_TO_LTE=0,
MRS_FEAT_NUM
}mrs_feature_enum;
typedef enum
{
MRS_AFR_STRICT_CONSTRAIN_SEARCH_NOT_TRIGGERED,
MRS_AFR_STRICT_CONSTRAIN_SEARCH_TRIGGERED,
MRS_AFR_STRICT_CONSTRAIN_SEARCH_TRIGGERED_AND_FAILED
}mrs_afr_strict_constrain_state;
#define MRS_FEAT_BITMAP_SIZE ( (MRS_FEAT_NUM % 8 == 0)? (MRS_FEAT_NUM/8) : (MRS_FEAT_NUM/8 + 1) )
#if (CUR_GEN >= MD_GEN97)
typedef enum
{
MRS_GEMINI_STATUS_FULL_CAP,
MRS_GEMINI_STATUS_DATA_SIM,
MRS_GEMINI_STATUS_NON_DATA_SIM,
MRS_GEMINI_STATUS_INVALID
} mrs_gemini_status_enum;
#endif /* (CUR_GEN >= MD_GEN97) */
typedef enum
{
MRS_AS_CAPA_NONE =0,
MRS_AS_CAPA_ERRC_NSA_MODE_ASN_DECODE_ERROR =1,
MRS_AS_CAPA_ERRC_NSA_MODE_IE_ERROR =2,
MRS_AS_CAPA_EMM_TAU_TAI_CHANGED =3,
MRS_AS_CAPA_EMM_DETACH_REQ = 4
}mrs_as_capa_event_enum;
typedef enum
{
MRS_AS_CAPA_FEATURE_DISABLE_NSA = 0, /*bit 0 of mrs_capability_change_info.capability_change_feature_enable_state*/
MRS_AS_CAPA_FEATURE_INVALID
}mrs_as_capa_change_feature_enum;
#endif /* _MRS_AS_ENUMS_H */