diff options
author | Sylvain Munaut <tnt@246tNt.com> | 2010-11-14 16:08:08 +0100 |
---|---|---|
committer | Sylvain Munaut <tnt@246tNt.com> | 2010-11-14 17:09:54 +0100 |
commit | 87b44798effc07a2a8d840d3ea4dacdf869f7469 (patch) | |
tree | af822401526291ec0296c41aa508c567f55847c4 /src | |
parent | 3a8e47430e6d5e266ff1ed2393d489e9453e22fa (diff) |
fw/layer1: Use dbm2rxlev instead of just '+110' so that overflows are handled
Without this, we would sometime get +143 dBm reported ... which is obviously
false.
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/target/firmware/layer1/prim_rx_nb.c | 2 | ||||
-rw-r--r-- | src/target/firmware/layer1/prim_tch.c | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/src/target/firmware/layer1/prim_rx_nb.c b/src/target/firmware/layer1/prim_rx_nb.c index e210d006..e3e808da 100644 --- a/src/target/firmware/layer1/prim_rx_nb.c +++ b/src/target/firmware/layer1/prim_rx_nb.c @@ -133,7 +133,7 @@ static int l1s_nb_resp(__unused uint8_t p1, uint8_t burst_id, uint16_t p3) avg_dbm8 += rxnb.meas[i].pm_dbm8; } rxnb.dl->snr = avg_snr / 4; - rxnb.dl->rx_level = (avg_dbm8 / (8*4)) + 110; + rxnb.dl->rx_level = dbm2rxlev(avg_dbm8 / (8*4)); num_biterr = dsp_api.ndb->a_cd[2] & 0xffff; if (num_biterr > 0xff) diff --git a/src/target/firmware/layer1/prim_tch.c b/src/target/firmware/layer1/prim_tch.c index d17ac553..4c08e3e8 100644 --- a/src/target/firmware/layer1/prim_tch.c +++ b/src/target/firmware/layer1/prim_tch.c @@ -223,7 +223,7 @@ static int l1s_tch_resp(__unused uint8_t p1, __unused uint8_t p2, uint16_t p3) } dl->snr = avg_snr / n; - dl->rx_level = (avg_dbm8 / (8*n)) + 110; + dl->rx_level = dbm2rxlev(avg_dbm8 / (8*n)); /* Errors & CRC status */ num_biterr = dsp_api.ndb->a_fd[2] & 0xffff; @@ -518,7 +518,7 @@ static int l1s_tch_a_resp(__unused uint8_t p1, __unused uint8_t p2, uint16_t p3) avg_dbm8 += rx_tch_a.meas[i].pm_dbm8; } rx_tch_a.dl->snr = avg_snr / 4; - rx_tch_a.dl->rx_level = (avg_dbm8 / (8*4)) + 110; + rx_tch_a.dl->rx_level = dbm2rxlev(avg_dbm8 / (8*4)); num_biterr = dsp_api.ndb->a_cd[2]; if (num_biterr > 0xff) |