提交 225a644a 编写于 作者: D Daniel Golle 提交者: Kalle Valo

rt2800: fix LNA gain assignment for MT7620

The base value used for MT7620 differs from Rt5392 which resulted in
quite bad RX signal quality. Fix this by using the correct base value as
well as the LNA calibration values for HT20.
Reported-by: NTom Psyborg <pozega.tomislav@gmail.com>
Signed-off-by: NDaniel Golle <daniel@makrotopia.org>
Signed-off-by: NKalle Valo <kvalo@codeaurora.org>
上级 0b16e0e9
......@@ -3806,11 +3806,25 @@ static void rt2800_config_channel(struct rt2x00_dev *rt2x00dev,
}
if (rt2x00_rt(rt2x00dev, RT5592) || rt2x00_rt(rt2x00dev, RT6352)) {
reg = 0x10;
if (!conf_is_ht40(conf)) {
if (rt2x00_rt(rt2x00dev, RT6352) &&
rt2x00_has_cap_external_lna_bg(rt2x00dev)) {
reg |= 0x5;
} else {
reg |= 0xa;
}
}
rt2800_bbp_write(rt2x00dev, 195, 141);
rt2800_bbp_write(rt2x00dev, 196, conf_is_ht40(conf) ? 0x10 : 0x1a);
rt2800_bbp_write(rt2x00dev, 196, reg);
/* AGC init */
reg = (rf->channel <= 14 ? 0x1c : 0x24) + 2 * rt2x00dev->lna_gain;
if (rt2x00_rt(rt2x00dev, RT6352))
reg = 0x04;
else
reg = rf->channel <= 14 ? 0x1c : 0x24;
reg += 2 * rt2x00dev->lna_gain;
rt2800_bbp_write_with_rx_chain(rt2x00dev, 66, reg);
rt2800_iq_calibrate(rt2x00dev, rf->channel);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册