blob: c5549479afdddaabc1bdf9760570da878098b3c0 [file] [log] [blame]
#ifndef _IDC_ERRC_STR_H
#define _IDC_ERRC_STR_H
#include "kal_general_types.h"
#include "kal_public_defs.h"
#include "global_type.h"
#include "idc_errc_enum.h"
/*Bitmap definitions for IDC victims in el1_idc_ul_ca_assist_info_struct */
#define IDC_UL_CA_VICTIM_NONE 0x00
#define IDC_UL_CA_VICTIM_GPS 0x01
#define IDC_UL_CA_VICTIM_GLONASS 0x02
#define IDC_UL_CA_VICTIM_BDS 0x04
#define IDC_UL_CA_VICTIM_GALILEO 0x08
#define IDC_UL_CA_VICTIM_WLAN 0x10
#define IDC_UL_CA_VICTIM_BLUETOOTH 0x20
typedef struct
{
auto_denial_subframe_enum sf;
auto_denial_validity_enum validity;
}idc_auto_denial_param_struct;
typedef struct
{
LOCAL_PARA_HDR
kal_bool idc_indication;
kal_bool idc_indication_ul_ca;
kal_bool idc_indication_hw_sharing;
kal_bool idc_indication_MRDC;
kal_bool auto_denial_param_valid;
kal_bool isMRDC;
kal_uint8 num_mrdc_freq;
kal_uint32 candidate_nr_serv_freq[32];
idc_auto_denial_param_struct auto_denial_param;
}errc_idc_idc_cfg_ntf_struct;
typedef struct
{
EARFCN earfcn;
kal_bool earfcn_valid;
kal_uint8 victims;
kal_uint32 nrarfcn;
idc_interference_direction_enum direction;
}idc_mrdc_affected_freq_struct;
typedef struct
{
kal_uint32 earfcn_1;
kal_uint32 earfcn_2;
}idc_ul_ca_freq_comb_struct;
typedef struct
{
kal_uint8 victims;
kal_uint8 affected_freq_comb_num;
idc_ul_ca_freq_comb_struct affected_freq_combinations[128];
}idc_ul_ca_assist_info_struct;
typedef struct
{
idc_sf_config_enum subframeConfig;
kal_uint8 fdd_sf_pattern;
kal_uint8 tdd_sf_pattern[9];
}idc_subframe_pattern_struct;
typedef struct
{
idc_valid_drx_cycle_enum drx_cycle;
kal_bool drx_offset_valid;
kal_uint16 drx_offset;
idc_active_time_enum drx_active_time;
}idc_drx_assist_info_struct;
typedef struct
{
kal_uint8 num_of_pattern;
idc_subframe_pattern_struct subframe_pattern[8];
}idc_sp_info_struct;
typedef union
{
idc_drx_assist_info_struct drx_assist_info;
idc_sp_info_struct idc_sp_info;
}idc_tdm_assist_info_union;
typedef struct _idc_affected_freq_struct
{
EARFCN earfcn;
idc_interference_direction_enum direction;
}idc_affected_freq_struct;
typedef struct
{
LOCAL_PARA_HDR
kal_bool ul_ca_assist_info_valid;
kal_bool hw_sharing_problem;
kal_bool hw_sharing_info_valid;
kal_uint8 num_freq;
kal_uint8 num_mrdc_freq;
idc_affected_freq_struct affected_freq[32];
idc_assist_info_type_enum assist_type;
idc_tdm_assist_info_union idc_tdm_assist;
idc_ul_ca_assist_info_struct ul_ca_assist_info;
idc_mrdc_affected_freq_struct affected_mrdc_freq[32];
}errc_idc_idc_ind_struct;
typedef struct
{
LOCAL_PARA_HDR
idc_protect_action_enum idc_action;
idc_traffic_type_enum traffic_type;
} errc_idc_idc_lte_protect_ntf_struct;
#endif