aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/realtek/rtlwifi/efuse.c
diff options
context:
space:
mode:
authorPing-Ke Shih <pkshih@realtek.com>2018-01-29 11:26:39 +0800
committerKalle Valo <kvalo@codeaurora.org>2018-02-27 18:15:25 +0200
commit2cdd634e7e364af7104901d9f81065cddfcb96de (patch)
treef716cf9e9f2cd26211f235f609c49b19bbc38ac2 /drivers/net/wireless/realtek/rtlwifi/efuse.c
parentrtlwifi: add definition radio_mask for RF and maximum bandwidth (diff)
downloadlinux-dev-2cdd634e7e364af7104901d9f81065cddfcb96de.tar.xz
linux-dev-2cdd634e7e364af7104901d9f81065cddfcb96de.zip
rtlwifi: add efuse ops for other components
The new component phydm need to access efuse content, so we prepare ops for reference. Signed-off-by: Tsang-Shian Lin <thlin@realtek.com> Signed-off-by: Ping-Ke Shih <pkshih@realtek.com> Acked-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Diffstat (limited to 'drivers/net/wireless/realtek/rtlwifi/efuse.c')
-rw-r--r--drivers/net/wireless/realtek/rtlwifi/efuse.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/drivers/net/wireless/realtek/rtlwifi/efuse.c b/drivers/net/wireless/realtek/rtlwifi/efuse.c
index 35b50be633f1..fd13d4ef53b8 100644
--- a/drivers/net/wireless/realtek/rtlwifi/efuse.c
+++ b/drivers/net/wireless/realtek/rtlwifi/efuse.c
@@ -50,6 +50,11 @@ static const struct efuse_map RTL8712_SDIO_EFUSE_TABLE[] = {
{11, 0, 0, 28}
};
+static const struct rtl_efuse_ops efuse_ops = {
+ .efuse_onebyte_read = efuse_one_byte_read,
+ .efuse_logical_map_read = efuse_shadow_read,
+};
+
static void efuse_shadow_read_1byte(struct ieee80211_hw *hw, u16 offset,
u8 *value);
static void efuse_shadow_read_2byte(struct ieee80211_hw *hw, u16 offset,
@@ -1364,3 +1369,11 @@ void rtl_fill_dummy(u8 *pfwbuf, u32 *pfwlen)
*pfwlen = fwlen;
}
EXPORT_SYMBOL_GPL(rtl_fill_dummy);
+
+void rtl_efuse_ops_init(struct ieee80211_hw *hw)
+{
+ struct rtl_priv *rtlpriv = rtl_priv(hw);
+
+ rtlpriv->efuse.efuse_ops = &efuse_ops;
+}
+EXPORT_SYMBOL_GPL(rtl_efuse_ops_init);