| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| #ifndef __HAL_PHY_H__ |
| #define __HAL_PHY_H__ |
| |
| |
| #if DISABLE_BB_RF |
| <------>#define HAL_FW_ENABLE 0 |
| <------>#define HAL_MAC_ENABLE 0 |
| <------>#define HAL_BB_ENABLE 0 |
| <------>#define HAL_RF_ENABLE 0 |
| #else |
| <------>#define HAL_FW_ENABLE 1 |
| <------>#define HAL_MAC_ENABLE 1 |
| <------>#define HAL_BB_ENABLE 1 |
| <------>#define HAL_RF_ENABLE 1 |
| #endif |
| |
| #define RF6052_MAX_TX_PWR 0x3F |
| #define RF6052_MAX_REG_88E 0xFF |
| #define RF6052_MAX_REG_92C 0x7F |
| |
| #define RF6052_MAX_REG \ |
| <------>((RF6052_MAX_REG_88E > RF6052_MAX_REG_92C) ? RF6052_MAX_REG_88E : RF6052_MAX_REG_92C) |
| |
| #define GET_RF6052_REAL_MAX_REG(_Adapter) \ |
| <------>(IS_HARDWARE_TYPE_8188E(_Adapter) ? RF6052_MAX_REG_88E : RF6052_MAX_REG_92C) |
| |
| #define RF6052_MAX_PATH 2 |
| |
| |
| |
| |
| |
| #define ANT_DETECT_BY_SINGLE_TONE BIT0 |
| #define ANT_DETECT_BY_RSSI BIT1 |
| #define IS_ANT_DETECT_SUPPORT_SINGLE_TONE(__Adapter) ((GET_HAL_DATA(__Adapter)->AntDetection) & ANT_DETECT_BY_SINGLE_TONE) |
| #define IS_ANT_DETECT_SUPPORT_RSSI(__Adapter) ((GET_HAL_DATA(__Adapter)->AntDetection) & ANT_DETECT_BY_RSSI) |
| |
| |
| |
| typedef enum _RF_CHIP { |
| <------>RF_CHIP_MIN = 0, |
| <------>RF_8225 = 1, |
| <------>RF_8256 = 2, |
| <------>RF_8258 = 3, |
| <------>RF_6052 = 4, |
| <------>RF_PSEUDO_11N = 5, |
| <------>RF_CHIP_MAX |
| } RF_CHIP_E, *PRF_CHIP_E; |
| |
| typedef enum _ANTENNA_PATH { |
| <------>ANTENNA_NONE = 0, |
| <------>ANTENNA_D = 1, |
| <------>ANTENNA_C = 2, |
| <------>ANTENNA_CD = 3, |
| <------>ANTENNA_B = 4, |
| <------>ANTENNA_BD = 5, |
| <------>ANTENNA_BC = 6, |
| <------>ANTENNA_BCD = 7, |
| <------>ANTENNA_A = 8, |
| <------>ANTENNA_AD = 9, |
| <------>ANTENNA_AC = 10, |
| <------>ANTENNA_ACD = 11, |
| <------>ANTENNA_AB = 12, |
| <------>ANTENNA_ABD = 13, |
| <------>ANTENNA_ABC = 14, |
| <------>ANTENNA_ABCD = 15 |
| } ANTENNA_PATH; |
| |
| typedef enum _RF_CONTENT { |
| <------>radioa_txt = 0x1000, |
| <------>radiob_txt = 0x1001, |
| <------>radioc_txt = 0x1002, |
| <------>radiod_txt = 0x1003 |
| } RF_CONTENT; |
| |
| typedef enum _BaseBand_Config_Type { |
| <------>BaseBand_Config_PHY_REG = 0, |
| <------>BaseBand_Config_AGC_TAB = 1, |
| <------>BaseBand_Config_AGC_TAB_2G = 2, |
| <------>BaseBand_Config_AGC_TAB_5G = 3, |
| <------>BaseBand_Config_PHY_REG_PG |
| } BaseBand_Config_Type, *PBaseBand_Config_Type; |
| |
| typedef enum _HW_BLOCK { |
| <------>HW_BLOCK_MAC = 0, |
| <------>HW_BLOCK_PHY0 = 1, |
| <------>HW_BLOCK_PHY1 = 2, |
| <------>HW_BLOCK_RF = 3, |
| <------>HW_BLOCK_MAXIMUM = 4, |
| } HW_BLOCK_E, *PHW_BLOCK_E; |
| |
| typedef enum _WIRELESS_MODE { |
| <------>WIRELESS_MODE_UNKNOWN = 0x00, |
| <------>WIRELESS_MODE_A = 0x01, |
| <------>WIRELESS_MODE_B = 0x02, |
| <------>WIRELESS_MODE_G = 0x04, |
| <------>WIRELESS_MODE_AUTO = 0x08, |
| <------>WIRELESS_MODE_N_24G = 0x10, |
| <------>WIRELESS_MODE_N_5G = 0x20, |
| <------>WIRELESS_MODE_AC_5G = 0x40, |
| <------>WIRELESS_MODE_AC_24G = 0x80, |
| <------>WIRELESS_MODE_AC_ONLY = 0x100, |
| } WIRELESS_MODE; |
| |
| typedef enum _SwChnlCmdID { |
| <------>CmdID_End, |
| <------>CmdID_SetTxPowerLevel, |
| <------>CmdID_BBRegWrite10, |
| <------>CmdID_WritePortUlong, |
| <------>CmdID_WritePortUshort, |
| <------>CmdID_WritePortUchar, |
| <------>CmdID_RF_WriteReg, |
| } SwChnlCmdID; |
| |
| typedef struct _SwChnlCmd { |
| <------>SwChnlCmdID CmdID; |
| <------>u32 Para1; |
| <------>u32 Para2; |
| <------>u32 msDelay; |
| } SwChnlCmd; |
| |
| typedef struct _R_ANTENNA_SELECT_OFDM { |
| <------>u32 r_tx_antenna:4; |
| <------>u32 r_ant_l:4; |
| <------>u32 r_ant_non_ht:4; |
| <------>u32 r_ant_ht1:4; |
| <------>u32 r_ant_ht2:4; |
| <------>u32 r_ant_ht_s1:4; |
| <------>u32 r_ant_non_ht_s1:4; |
| <------>u32 OFDM_TXSC:2; |
| <------>u32 Reserved:2; |
| } R_ANTENNA_SELECT_OFDM; |
| |
| typedef struct _R_ANTENNA_SELECT_CCK { |
| <------>u8 r_cckrx_enable_2:2; |
| <------>u8 r_cckrx_enable:2; |
| <------>u8 r_ccktx_enable:4; |
| } R_ANTENNA_SELECT_CCK; |
| |
| |
| |
| u32 |
| PHY_CalculateBitShift( |
| <------>u32 BitMask |
| ); |
| |
| #ifdef CONFIG_RF_SHADOW_RW |
| typedef struct RF_Shadow_Compare_Map { |
| <------> |
| <------>u32 Value; |
| <------> |
| <------>u8 Compare; |
| <------> |
| <------>u8 ErrorOrNot; |
| <------> |
| <------>u8 Recorver; |
| <------> |
| <------>u8 Driver_Write; |
| } RF_SHADOW_T; |
| |
| u32 |
| PHY_RFShadowRead( |
| <------><------>PADAPTER Adapter, |
| <------><------>enum rf_path eRFPath, |
| <------><------>u32 Offset); |
| |
| void |
| PHY_RFShadowWrite( |
| <------><------>PADAPTER Adapter, |
| <------><------>enum rf_path eRFPath, |
| <------><------>u32 Offset, |
| <------><------>u32 Data); |
| |
| BOOLEAN |
| PHY_RFShadowCompare( |
| <------><------>PADAPTER Adapter, |
| <------><------>enum rf_path eRFPath, |
| <------><------>u32 Offset); |
| |
| void |
| PHY_RFShadowRecorver( |
| <------><------>PADAPTER Adapter, |
| <------><------>enum rf_path eRFPath, |
| <------><------>u32 Offset); |
| |
| void |
| PHY_RFShadowCompareAll( |
| <------><------>PADAPTER Adapter); |
| |
| void |
| PHY_RFShadowRecorverAll( |
| <------><------>PADAPTER Adapter); |
| |
| void |
| PHY_RFShadowCompareFlagSet( |
| <------><------>PADAPTER Adapter, |
| <------><------>enum rf_path eRFPath, |
| <------><------>u32 Offset, |
| <------><------>u8 Type); |
| |
| void |
| PHY_RFShadowRecorverFlagSet( |
| <------><------>PADAPTER Adapter, |
| <------><------>enum rf_path eRFPath, |
| <------><------>u32 Offset, |
| <------><------>u8 Type); |
| |
| void |
| PHY_RFShadowCompareFlagSetAll( |
| <------><------>PADAPTER Adapter); |
| |
| void |
| PHY_RFShadowRecorverFlagSetAll( |
| <------><------>PADAPTER Adapter); |
| |
| void |
| PHY_RFShadowRefresh( |
| <------><------>PADAPTER Adapter); |
| #endif |
| #endif |
| |