Skip to content
Success

Changes

Summary

  1. TCH UL path: add out-of-band BFI flag (details)
Commit a9f3c01ece6fb59b07cd251ce93b342b1772eaed by falcon
TCH UL path: add out-of-band BFI flag

In original OsmoBTS architecture prior to Themyscira patches,
BFI (Bad Frame Indication) condition was signaled internally by
zero-length payload passed from BTS model to l1sap, and externally
by absence of RTP output (intentional gap) or a zero-length RTP
payload emitted in 'rtp continuous-streaming' mode.  However, this
paradigm is contrary to classic GSM BSS architecture in which BFI
is an out-of-band metadata flag that travels alongside with frame
payload bits, whether the latter are valid or invalid.

Since 2024 OsmoBTS supports the option of TW-TS-001 output for
FR and EFR codecs, which allows the possibility of BFI-with-data
in RTP.  OsmoBTS can already emit such BFI-with-data packets when
the BTS model delivered a deemed-good traffic frame, but that frame
was subsequently deemed bad by the link quality check in l1sap -
but there is still no explicit out-of-band BFI flag inside OsmoBTS
TCH UL path.

By introducing an out-of-band BFI flag, we make it possible for BTS
model PHYs to deliver marked-bad traffic frames: when CRC fails
in GSM 05.03 channel decoding step, a PHY that permits modification
(libosmocoding or future FOSS DSP PHY) can be enhanced to preserve
channel-decoded bits while conveying BFI.

The link quality check in l1sap is reworked to use the new OOB BFI
flag.  Follow-on patches will introduce further logic that can also
assert BFI at high level, above BTS model PHYs.

While reworking the link quality check in l1sap, restrict it to
speech modes only: per GSM specs, BFI does not exist in CSD.

Change-Id: I8097946429e83eae90f89e49d17ffb8eb0636fcb
The file was modifiedsrc/common/l1sap.c
The file was modifiedinclude/osmo-bts/msg_utils.h