Commit b1d771ee authored by Christian Lamparter's avatar Christian Lamparter Committed by John W. Linville

carl9170: use generic sign_extend32

This patch replaces the handcrafted
sign extension cruft with a generic
bitop function.
Signed-off-by: default avatarChristian Lamparter <chunkeey@googlemail.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 7919a57b
...@@ -1554,15 +1554,6 @@ static int carl9170_set_power_cal(struct ar9170 *ar, u32 freq, ...@@ -1554,15 +1554,6 @@ static int carl9170_set_power_cal(struct ar9170 *ar, u32 freq,
return carl9170_regwrite_result(); return carl9170_regwrite_result();
} }
/* TODO: replace this with sign_extend32(noise, 8) */
static int carl9170_calc_noise_dbm(u32 raw_noise)
{
if (raw_noise & 0x100)
return ~0x1ff | raw_noise;
else
return raw_noise;
}
int carl9170_get_noisefloor(struct ar9170 *ar) int carl9170_get_noisefloor(struct ar9170 *ar)
{ {
static const u32 phy_regs[] = { static const u32 phy_regs[] = {
...@@ -1578,11 +1569,11 @@ int carl9170_get_noisefloor(struct ar9170 *ar) ...@@ -1578,11 +1569,11 @@ int carl9170_get_noisefloor(struct ar9170 *ar)
return err; return err;
for (i = 0; i < 2; i++) { for (i = 0; i < 2; i++) {
ar->noise[i] = carl9170_calc_noise_dbm( ar->noise[i] = sign_extend32(GET_VAL(
(phy_res[i] >> 19) & 0x1ff); AR9170_PHY_CCA_MIN_PWR, phy_res[i]), 8);
ar->noise[i + 2] = carl9170_calc_noise_dbm( ar->noise[i + 2] = sign_extend32(GET_VAL(
(phy_res[i + 2] >> 23) & 0x1ff); AR9170_PHY_EXT_CCA_MIN_PWR, phy_res[i + 2]), 8);
} }
return 0; return 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment