ath9k: Fix possible overflow condition
Prevent a possible overflow condition which results in occasional bad IQ coefficients and EVM numbers. Signed-off-by: Sujith Manoharan <c_manoha@qca.qualcomm.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
522aaa182a
commit
3b24e9f8c0
|
@ -565,7 +565,7 @@ static bool ar9003_hw_solve_iq_cal(struct ath_hw *ah,
|
||||||
const s32 result_shift = 1 << 15;
|
const s32 result_shift = 1 << 15;
|
||||||
struct ath_common *common = ath9k_hw_common(ah);
|
struct ath_common *common = ath9k_hw_common(ah);
|
||||||
|
|
||||||
f2 = (f1 * f1 + f3 * f3) / result_shift;
|
f2 = ((f1 >> 3) * (f1 >> 3) + (f3 >> 3) * (f3 >> 3)) >> 9;
|
||||||
|
|
||||||
if (!f2) {
|
if (!f2) {
|
||||||
ath_dbg(common, CALIBRATE, "Divide by 0\n");
|
ath_dbg(common, CALIBRATE, "Divide by 0\n");
|
||||||
|
|
Loading…
Reference in a new issue