/******************************************************************************
|
*
|
* Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved.
|
*
|
* This program is free software; you can redistribute it and/or modify it
|
* under the terms of version 2 of the GNU General Public License as
|
* published by the Free Software Foundation.
|
*
|
* This program is distributed in the hope that it will be useful, but WITHOUT
|
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
* more details.
|
*
|
* You should have received a copy of the GNU General Public License along with
|
* this program; if not, write to the Free Software Foundation, Inc.,
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA
|
*
|
*
|
******************************************************************************/
|
#ifndef __INC_PHYDM_API_H_8822B__
|
#define __INC_PHYDM_API_H_8822B__
|
|
#if (RTL8822B_SUPPORT == 1)
|
|
#define PHY_CONFIG_VERSION_8822B "27.5.31" /*2016.08.01 (HW user guide version: R27, SW user guide version: R05, Modification: R31)*/
|
|
#define INVALID_RF_DATA 0xffffffff
|
#define INVALID_TXAGC_DATA 0xff
|
|
#define config_phydm_read_rf_check_8822b(data) (data != INVALID_RF_DATA)
|
#define config_phydm_read_txagc_check_8822b(data) (data != INVALID_TXAGC_DATA)
|
|
u4Byte
|
config_phydm_read_rf_reg_8822b(
|
IN PDM_ODM_T pDM_Odm,
|
IN ODM_RF_RADIO_PATH_E RFPath,
|
IN u4Byte RegAddr,
|
IN u4Byte BitMask
|
);
|
|
BOOLEAN
|
config_phydm_write_rf_reg_8822b(
|
IN PDM_ODM_T pDM_Odm,
|
IN ODM_RF_RADIO_PATH_E RFPath,
|
IN u4Byte RegAddr,
|
IN u4Byte BitMask,
|
IN u4Byte Data
|
);
|
|
BOOLEAN
|
config_phydm_write_txagc_8822b(
|
IN PDM_ODM_T pDM_Odm,
|
IN u4Byte PowerIndex,
|
IN ODM_RF_RADIO_PATH_E Path,
|
IN u1Byte HwRate
|
);
|
|
u1Byte
|
config_phydm_read_txagc_8822b(
|
IN PDM_ODM_T pDM_Odm,
|
IN ODM_RF_RADIO_PATH_E Path,
|
IN u1Byte HwRate
|
);
|
|
BOOLEAN
|
config_phydm_switch_band_8822b(
|
IN PDM_ODM_T pDM_Odm,
|
IN u1Byte central_ch
|
);
|
|
BOOLEAN
|
config_phydm_switch_channel_8822b(
|
IN PDM_ODM_T pDM_Odm,
|
IN u1Byte central_ch
|
);
|
|
BOOLEAN
|
config_phydm_switch_bandwidth_8822b(
|
IN PDM_ODM_T pDM_Odm,
|
IN u1Byte primary_ch_idx,
|
IN ODM_BW_E bandwidth
|
);
|
|
BOOLEAN
|
config_phydm_switch_channel_bw_8822b(
|
IN PDM_ODM_T pDM_Odm,
|
IN u1Byte central_ch,
|
IN u1Byte primary_ch_idx,
|
IN ODM_BW_E bandwidth
|
);
|
|
BOOLEAN
|
config_phydm_trx_mode_8822b(
|
IN PDM_ODM_T pDM_Odm,
|
IN ODM_RF_PATH_E TxPath,
|
IN ODM_RF_PATH_E RxPath,
|
IN BOOLEAN bTx2Path
|
);
|
|
BOOLEAN
|
config_phydm_parameter_init(
|
IN PDM_ODM_T pDM_Odm,
|
IN ODM_PARAMETER_INIT_E type
|
);
|
|
|
/* ======================================================================== */
|
/* These following functions can be used for PHY DM only*/
|
|
BOOLEAN
|
phydm_write_txagc_1byte_8822b(
|
IN PDM_ODM_T pDM_Odm,
|
IN u4Byte PowerIndex,
|
IN ODM_RF_RADIO_PATH_E Path,
|
IN u1Byte HwRate
|
);
|
|
VOID
|
phydm_init_hw_info_by_rfe_type_8822b(
|
IN PDM_ODM_T pDM_Odm
|
);
|
|
s4Byte
|
phydm_get_condition_number_8822B(
|
IN PDM_ODM_T pDM_Odm
|
);
|
|
/* ======================================================================== */
|
|
#endif /* RTL8822B_SUPPORT == 1 */
|
#endif /* __INC_PHYDM_API_H_8822B__ */
|
|
|