| From 266e5715f17e4ed1aa32c2ae56ef55eb60f2e7bf Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Fri, 2 Sep 2022 14:48:32 +0300 |
| Subject: wifi: rtl8xxxu: gen2: Fix mistake in path B IQ calibration |
| |
| From: Bitterblue Smith <rtl8821cerfe2@gmail.com> |
| |
| [ Upstream commit e963a19c64ac0d2f8785d36a27391abd91ac77aa ] |
| |
| Found by comparing with the vendor driver. Currently this affects |
| only the RTL8192EU, which is the only gen2 chip with 2 TX paths |
| supported by this driver. It's unclear what kind of effect the |
| mistake had in practice, since I don't have any RTL8192EU devices |
| to test it. |
| |
| Fixes: e1547c535ede ("rtl8xxxu: First stab at adding IQK calibration for 8723bu parts") |
| Signed-off-by: Bitterblue Smith <rtl8821cerfe2@gmail.com> |
| Signed-off-by: Kalle Valo <kvalo@kernel.org> |
| Link: https://lore.kernel.org/r/30a59f3a-cfa9-8379-7af0-78a8f4c77cfd@gmail.com |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c | 4 ++-- |
| 1 file changed, 2 insertions(+), 2 deletions(-) |
| |
| diff --git a/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c b/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c |
| index e8b4544b5b15..8668b03bd8c7 100644 |
| --- a/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c |
| +++ b/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c |
| @@ -2925,12 +2925,12 @@ bool rtl8xxxu_gen2_simularity_compare(struct rtl8xxxu_priv *priv, |
| } |
| |
| if (!(simubitmap & 0x30) && priv->tx_paths > 1) { |
| - /* path B RX OK */ |
| + /* path B TX OK */ |
| for (i = 4; i < 6; i++) |
| result[3][i] = result[c1][i]; |
| } |
| |
| - if (!(simubitmap & 0x30) && priv->tx_paths > 1) { |
| + if (!(simubitmap & 0xc0) && priv->tx_paths > 1) { |
| /* path B RX OK */ |
| for (i = 6; i < 8; i++) |
| result[3][i] = result[c1][i]; |
| -- |
| 2.35.1 |
| |