From: Ching-Te Ku <ku920...@realtek.com>

[ Upstream commit 362c4a5cc886e9c369bf2106ab648c2ad076abb6 ]

Fix sometimes FW information will be parsed as wrong value,
do a correction of sign bit to show the correct information.
(Ex, Value should be 20, but it shows 236.)

Signed-off-by: Ching-Te Ku <ku920...@realtek.com>
Signed-off-by: Ping-Ke Shih <pks...@realtek.com>
Signed-off-by: Kalle Valo <kv...@codeaurora.org>
Link: https://lore.kernel.org/r/20201112031430.4846-12-pks...@realtek.com
Signed-off-by: Sasha Levin <sas...@kernel.org>
---
 drivers/net/wireless/realtek/rtw88/coex.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/wireless/realtek/rtw88/coex.c 
b/drivers/net/wireless/realtek/rtw88/coex.c
index 853ac1c2ed73c..634044a14bb78 100644
--- a/drivers/net/wireless/realtek/rtw88/coex.c
+++ b/drivers/net/wireless/realtek/rtw88/coex.c
@@ -2451,7 +2451,7 @@ void rtw_coex_wl_fwdbginfo_notify(struct rtw_dev *rtwdev, 
u8 *buf, u8 length)
                if (buf[i] >= val)
                        coex_stat->wl_fw_dbg_info[i] = buf[i] - val;
                else
-                       coex_stat->wl_fw_dbg_info[i] = val - buf[i];
+                       coex_stat->wl_fw_dbg_info[i] = 255 - val + buf[i];
 
                coex_stat->wl_fw_dbg_info_pre[i] = buf[i];
        }
-- 
2.27.0

Reply via email to