diff options
author | Vadim Yanitskiy <axilirator@gmail.com> | 2019-07-07 19:58:48 +0700 |
---|---|---|
committer | laforge <laforge@gnumonks.org> | 2019-07-21 13:51:57 +0000 |
commit | 9649a42d5a3c24a21c14bb9f54e7c34a398da7b1 (patch) | |
tree | 66363546279249833a49769a609a7989a4e9358f /src/common/bts.c | |
parent | db6c7863506ea3685d73df26c45723073ee1f109 (diff) |
Clarify and refactor link quality (C/I) handling
The radio link quality is defined by C/I (Carrier-to-Interference
ratio), which is computed from the training sequence of each
received burst, by comparing the "ideal" training sequence with
the actual (received) one.
Link quality measurements are used by L1SAP to filter out "ghost"
Access Bursts, and by the link quality adaptation algorithms. One
can define minimum link quality values using the VTY interface.
On the VTY interface we expect integer C/I values in centiBels
(cB, 10e-2 B), while the internal structures are using float
values in deciBels (dB, 10e-1 B). Some PHYs (sysmo, octphy,
oc2g, and litecell15) expose C/I measurements in deciBels,
while on the L1SAP interface we finally send then in centiBels.
Let's avoid this confusion and stick to a single format, that
will be used by the internal logic of OsmoBTS - integer values
(int16_t) in centiBels. This will give us the range of:
-32768 .. 32767 centiBels, or
-3276.8 .. 3276.7 deciBels,
which is certainly sufficient.
Change-Id: If624d6fdc0270e6813af8700d95f1345903c8a01
Diffstat (limited to 'src/common/bts.c')
-rw-r--r-- | src/common/bts.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/common/bts.c b/src/common/bts.c index f582ebd1..5c415e86 100644 --- a/src/common/bts.c +++ b/src/common/bts.c @@ -51,8 +51,8 @@ #include <osmo-bts/dtx_dl_amr_fsm.h> #include <osmo-bts/cbch.h> -#define MIN_QUAL_RACH 5.0f /* at least 5 dB C/I */ -#define MIN_QUAL_NORM -0.5f /* at least -1 dB C/I */ +#define MIN_QUAL_RACH 50 /* minimum link quality (in centiBels) for Access Bursts */ +#define MIN_QUAL_NORM -5 /* minimum link quality (in centiBels) for Normal Bursts */ static void bts_update_agch_max_queue_length(struct gsm_bts *bts); |