118d30067d3b0c7e1362b7a866a9873e03a6d7d62George/******************************************************************************
218d30067d3b0c7e1362b7a866a9873e03a6d7d62George *
3c1d6604d1e3357d734d209a04cc1f80af948364bLarry Finger * Copyright(c) 2009-2012  Realtek Corporation.
418d30067d3b0c7e1362b7a866a9873e03a6d7d62George *
518d30067d3b0c7e1362b7a866a9873e03a6d7d62George * This program is free software; you can redistribute it and/or modify it
618d30067d3b0c7e1362b7a866a9873e03a6d7d62George * under the terms of version 2 of the GNU General Public License as
718d30067d3b0c7e1362b7a866a9873e03a6d7d62George * published by the Free Software Foundation.
818d30067d3b0c7e1362b7a866a9873e03a6d7d62George *
918d30067d3b0c7e1362b7a866a9873e03a6d7d62George * This program is distributed in the hope that it will be useful, but WITHOUT
1018d30067d3b0c7e1362b7a866a9873e03a6d7d62George * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
1118d30067d3b0c7e1362b7a866a9873e03a6d7d62George * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
1218d30067d3b0c7e1362b7a866a9873e03a6d7d62George * more details.
1318d30067d3b0c7e1362b7a866a9873e03a6d7d62George *
1418d30067d3b0c7e1362b7a866a9873e03a6d7d62George * You should have received a copy of the GNU General Public License along with
1518d30067d3b0c7e1362b7a866a9873e03a6d7d62George * this program; if not, write to the Free Software Foundation, Inc.,
1618d30067d3b0c7e1362b7a866a9873e03a6d7d62George * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA
1718d30067d3b0c7e1362b7a866a9873e03a6d7d62George *
1818d30067d3b0c7e1362b7a866a9873e03a6d7d62George * The full GNU General Public License is included in this distribution in the
1918d30067d3b0c7e1362b7a866a9873e03a6d7d62George * file called LICENSE.
2018d30067d3b0c7e1362b7a866a9873e03a6d7d62George *
2118d30067d3b0c7e1362b7a866a9873e03a6d7d62George * Contact Information:
2218d30067d3b0c7e1362b7a866a9873e03a6d7d62George * wlanfae <wlanfae@realtek.com>
2318d30067d3b0c7e1362b7a866a9873e03a6d7d62George * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park,
2418d30067d3b0c7e1362b7a866a9873e03a6d7d62George * Hsinchu 300, Taiwan.
2518d30067d3b0c7e1362b7a866a9873e03a6d7d62George *
2618d30067d3b0c7e1362b7a866a9873e03a6d7d62George * Larry Finger <Larry.Finger@lwfinger.net>
2718d30067d3b0c7e1362b7a866a9873e03a6d7d62George *
2818d30067d3b0c7e1362b7a866a9873e03a6d7d62George *****************************************************************************/
2918d30067d3b0c7e1362b7a866a9873e03a6d7d62George
3018d30067d3b0c7e1362b7a866a9873e03a6d7d62George#include "../rtl8192ce/phy.h"
3118d30067d3b0c7e1362b7a866a9873e03a6d7d62George
321472d3a87586eb7529d1d85f7c888055650b7208Larry Fingervoid rtl92cu_bb_block_on(struct ieee80211_hw *hw);
3318d30067d3b0c7e1362b7a866a9873e03a6d7d62Georgebool rtl8192_phy_check_is_legal_rfpath(struct ieee80211_hw *hw, u32 rfpath);
3418d30067d3b0c7e1362b7a866a9873e03a6d7d62Georgevoid rtl92c_phy_set_io(struct ieee80211_hw *hw);
351472d3a87586eb7529d1d85f7c888055650b7208Larry Fingerbool _rtl92cu_phy_config_mac_with_headerfile(struct ieee80211_hw *hw);
361472d3a87586eb7529d1d85f7c888055650b7208Larry Fingerbool rtl92cu_phy_bb_config(struct ieee80211_hw *hw);
37d3bb1429a2c1470d1f84646c00e34dc6784ee06eLarry Fingeru32 rtl92cu_phy_query_rf_reg(struct ieee80211_hw *hw,
38d3bb1429a2c1470d1f84646c00e34dc6784ee06eLarry Finger			     enum radio_path rfpath, u32 regaddr, u32 bitmask);
39d3bb1429a2c1470d1f84646c00e34dc6784ee06eLarry Fingervoid rtl92cu_phy_set_rf_reg(struct ieee80211_hw *hw,
40d3bb1429a2c1470d1f84646c00e34dc6784ee06eLarry Finger			    enum radio_path rfpath,
41d3bb1429a2c1470d1f84646c00e34dc6784ee06eLarry Finger			    u32 regaddr, u32 bitmask, u32 data);
42d3bb1429a2c1470d1f84646c00e34dc6784ee06eLarry Fingerbool rtl92cu_phy_mac_config(struct ieee80211_hw *hw);
43d3bb1429a2c1470d1f84646c00e34dc6784ee06eLarry Fingerbool _rtl92cu_phy_config_bb_with_pgheaderfile(struct ieee80211_hw *hw,
44d3bb1429a2c1470d1f84646c00e34dc6784ee06eLarry Finger					      u8 configtype);
45d3bb1429a2c1470d1f84646c00e34dc6784ee06eLarry Fingervoid _rtl92cu_phy_lc_calibrate(struct ieee80211_hw *hw, bool is2t);
46d3bb1429a2c1470d1f84646c00e34dc6784ee06eLarry Fingerbool _rtl92cu_phy_config_bb_with_headerfile(struct ieee80211_hw *hw,
47d3bb1429a2c1470d1f84646c00e34dc6784ee06eLarry Finger					    u8 configtype);
48d3bb1429a2c1470d1f84646c00e34dc6784ee06eLarry Fingervoid rtl92cu_phy_set_bw_mode_callback(struct ieee80211_hw *hw);
49d3bb1429a2c1470d1f84646c00e34dc6784ee06eLarry Fingerbool rtl92cu_phy_set_rf_power_state(struct ieee80211_hw *hw,
50d3bb1429a2c1470d1f84646c00e34dc6784ee06eLarry Finger				    enum rf_pwrstate rfpwr_state);
51