phy_common.h (2233B)
1/* SPDX-License-Identifier: GPL-2.0 */ 2/* Copyright(c) 2009-2014 Realtek Corporation.*/ 3 4#ifndef __PHY_COMMON__ 5#define __PHY_COMMON__ 6 7#define RT_CANNOT_IO(hw) false 8 9enum swchnlcmd_id { 10 CMDID_END, 11 CMDID_SET_TXPOWEROWER_LEVEL, 12 CMDID_BBREGWRITE10, 13 CMDID_WRITEPORT_ULONG, 14 CMDID_WRITEPORT_USHORT, 15 CMDID_WRITEPORT_UCHAR, 16 CMDID_RF_WRITEREG, 17}; 18 19struct swchnlcmd { 20 enum swchnlcmd_id cmdid; 21 u32 para1; 22 u32 para2; 23 u32 msdelay; 24}; 25 26u32 rtl8723_phy_query_bb_reg(struct ieee80211_hw *hw, 27 u32 regaddr, u32 bitmask); 28void rtl8723_phy_set_bb_reg(struct ieee80211_hw *hw, u32 regaddr, 29 u32 bitmask, u32 data); 30u32 rtl8723_phy_calculate_bit_shift(u32 bitmask); 31u32 rtl8723_phy_rf_serial_read(struct ieee80211_hw *hw, 32 enum radio_path rfpath, u32 offset); 33void rtl8723_phy_rf_serial_write(struct ieee80211_hw *hw, 34 enum radio_path rfpath, 35 u32 offset, u32 data); 36long rtl8723_phy_txpwr_idx_to_dbm(struct ieee80211_hw *hw, 37 enum wireless_mode wirelessmode, 38 u8 txpwridx); 39void rtl8723_phy_init_bb_rf_reg_def(struct ieee80211_hw *hw); 40bool rtl8723_phy_set_sw_chnl_cmdarray(struct swchnlcmd *cmdtable, 41 u32 cmdtableidx, 42 u32 cmdtablesz, 43 enum swchnlcmd_id cmdid, 44 u32 para1, u32 para2, 45 u32 msdelay); 46void rtl8723_phy_path_a_fill_iqk_matrix(struct ieee80211_hw *hw, 47 bool iqk_ok, 48 long result[][8], 49 u8 final_candidate, 50 bool btxonly); 51void rtl8723_save_adda_registers(struct ieee80211_hw *hw, u32 *addareg, 52 u32 *addabackup, u32 registernum); 53void rtl8723_phy_save_mac_registers(struct ieee80211_hw *hw, 54 u32 *macreg, u32 *macbackup); 55void rtl8723_phy_reload_adda_registers(struct ieee80211_hw *hw, 56 u32 *addareg, u32 *addabackup, 57 u32 regiesternum); 58void rtl8723_phy_reload_mac_registers(struct ieee80211_hw *hw, 59 u32 *macreg, u32 *macbackup); 60void rtl8723_phy_path_adda_on(struct ieee80211_hw *hw, u32 *addareg, 61 bool is_patha_on, bool is2t); 62void rtl8723_phy_mac_setting_calibration(struct ieee80211_hw *hw, 63 u32 *macreg, u32 *macbackup); 64void rtl8723_phy_path_a_standby(struct ieee80211_hw *hw); 65void rtl8723_phy_pi_mode_switch(struct ieee80211_hw *hw, bool pi_mode); 66 67#endif