Skip to content

Commit

Permalink
rtlwifi: Fix alignment issues
Browse files Browse the repository at this point in the history
The addresses of Wlan NIC registers are natural alignment, but some
drivers have bugs. These are evident on platforms that need natural
alignment to access registers.  This change contains the following:
 1. Function _rtl8821ae_dbi_read() is used to read one byte from DBI,
    thus it should use rtl_read_byte().
 2. Register 0x4C7 of 8192ee is single byte.

Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Cc: Stable <stable@vger.kernel.org>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Ping-Ke Shih authored and Kalle Valo committed Dec 30, 2016
1 parent 26eb994 commit 40b368a
Showing 2 changed files with 2 additions and 2 deletions.
2 changes: 1 addition & 1 deletion drivers/net/wireless/realtek/rtlwifi/rtl8192ee/hw.c
Original file line number Diff line number Diff line change
@@ -1006,7 +1006,7 @@ static void _rtl92ee_hw_configure(struct ieee80211_hw *hw)
rtl_write_word(rtlpriv, REG_SIFS_TRX, 0x100a);

/* Note Data sheet don't define */
rtl_write_word(rtlpriv, 0x4C7, 0x80);
rtl_write_byte(rtlpriv, 0x4C7, 0x80);

rtl_write_byte(rtlpriv, REG_RX_PKT_LIMIT, 0x20);

2 changes: 1 addition & 1 deletion drivers/net/wireless/realtek/rtlwifi/rtl8821ae/hw.c
Original file line number Diff line number Diff line change
@@ -1127,7 +1127,7 @@ static u8 _rtl8821ae_dbi_read(struct rtl_priv *rtlpriv, u16 addr)
}
if (0 == tmp) {
read_addr = REG_DBI_RDATA + addr % 4;
ret = rtl_read_word(rtlpriv, read_addr);
ret = rtl_read_byte(rtlpriv, read_addr);
}
return ret;
}

0 comments on commit 40b368a

Please sign in to comment.