1 /****************************************************************************** 2 * 3 * Copyright(c) 2007 - 2017 Realtek Corporation. 4 * 5 * This program is free software; you can redistribute it and/or modify it 6 * under the terms of version 2 of the GNU General Public License as 7 * published by the Free Software Foundation. 8 * 9 * This program is distributed in the hope that it will be useful, but WITHOUT 10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 * more details. 13 * 14 * The full GNU General Public License is included in this distribution in the 15 * file called LICENSE. 16 * 17 * Contact Information: 18 * wlanfae <wlanfae@realtek.com> 19 * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, 20 * Hsinchu 300, Taiwan. 21 * 22 * Larry Finger <Larry.Finger@lwfinger.net> 23 * 24 *****************************************************************************/ 25 26 #ifndef __HALRF_IQK_8822C_H__ 27 #define __HALRF_IQK_8822C_H__ 28 29 #if (RTL8822C_SUPPORT == 1) 30 /*--------------------------Define Parameters-------------------------------*/ 31 #define MAC_REG_NUM_8822C 3 32 #define BB_REG_NUM_8822C 21 33 #define RF_REG_NUM_8822C 3 34 #define IQK_DELAY_8822C 2 35 #define IQK_STEP_8822C 7 36 #define RXK_STEP_8822C 6 37 #define IQK_CMD_8822C 0x8 38 39 #define TXIQK 0 40 #define RXIQK 1 41 #define SS_8822C 2 42 43 #define IQK_INFO_RSVD_LEN_8822C 568 44 /*---------------------------End Define Parameters-------------------------------*/ 45 #if !(DM_ODM_SUPPORT_TYPE & ODM_AP) 46 void do_iqk_8822c( 47 void *dm_void, 48 u8 delta_thermal_index, 49 u8 thermal_value, 50 u8 threshold); 51 #else 52 void do_iqk_8822c( 53 void *dm_void, 54 u8 delta_thermal_index, 55 u8 thermal_value, 56 u8 threshold); 57 #endif 58 59 void phy_iq_calibrate_8822c( 60 void *dm_void, 61 boolean clear, 62 boolean segment_iqk); 63 64 void iqk_get_cfir_8822c(void *dm_void, u8 idx, u8 path, boolean debug); 65 66 void iqk_set_cfir_8822c(void *dm_void, u8 idx, u8 path, boolean debug); 67 68 void iqk_reload_iqk_8822c(void *dm_void, boolean reset); 69 70 void phy_get_iqk_cfir_8822c(void *dm_void, u8 idx, u8 path, boolean debug); 71 72 void phy_iqk_dbg_cfir_backup_8822c(void *dm_void); 73 74 void phy_iqk_dbg_cfir_backup_update_8822c(void *dm_void); 75 76 void phy_iqk_dbg_cfir_reload_8822c(void *dm_void); 77 78 void phy_iqk_dbg_cfir_write_8822c(void *dm_void, u8 type, u32 path, u32 idx, u32 i, u32 data); 79 80 void phy_iqk_dbg_cfir_backup_show_8822c(void *dm_void); 81 82 void iqk_info_rsvd_page_8822c(void *dm_void, u8 *buf, u32 *buf_size); 83 84 void iqk_power_save_8822c(void *dm_void, boolean is_power_save); 85 86 87 #else /* (RTL8822C_SUPPORT == 0)*/ 88 89 #define phy_iq_calibrate_8822c(_pdm_void, clear, segment_iqk) 90 91 #endif /* RTL8822C_SUPPORT */ 92 93 #endif /*__HALRF_IQK_8822C_H__*/ 94