This patch is the first step in the series adding the ability to use twrtp+twjit instead of Belledonne ortp. twjit requires vty config for tunable parameters - add this config. Actual use of this added config will happen in subsequent patches.
RTP: use new abstraction layer instead of direct osmo_ortp
As of this patch in the series, the RTP library in active use is still always ortp, but all BTS code now accesses it through the new abstraction layer, paving the way for twrtp option.
With this patch it finally becomes possible for the user to select which RTP library should be used: ortp or twrtp. ortp is still the default for now, in order to not alter behavior for existing installations until twrtp receives more real world testing by users beyond the original author. Future patches may change the default or even remove ortp support altogether - but twrtp should receive more testing as a user opt-in feature first.
It is now possible to run osmo-bts configure with --disable-ortp option, which makes it use only twrtp library (integrated into libosmo-netif) and removes all dependency on Belledonne software, such that osmo-bts can be built on top of libosmo-abis that has also been configured with its respective --disable-ortp option.
TODO: contrib/ber/rtp_ber utility still uses ortp and has no support for twrtp or any other alternative - therefore, when osmo-bts is configured with --disable-ortp, this utility is not built.
This Makefile.am contained references to ORTP_CFLAGS and ORTP_LIBS, which are bogons because our configure makes no pkg-config calls for ortp, whether ortp support is included or excluded - instead these pkg-config calls that produce ORTP_CFLAGS and ORTP_LIBS happen only in libosmo-abis, while all subsequent ortp users in Osmocom go through osmo_ortp shim provided by that library.
osmo-bts-trx: trx_provision_fsm: do not send *_CNF events on failure
The trx_provision_fsm currently does not check the event data (rc), causing failed operations (rc != 0) to be treated as successful confirmations. Avoid emitting *_CNF events when a command fails, ensuring that only successful operations generate confirmation events.
osmo-bts-trx: apply 'max-initial' value before POWERON
Not applying this value before powering the transceiver on results in transmission at full Tx power for a certain amount of time before the power ramping begins.
Depending on the power control interval (P_Con_INTERVAL), the MS power loop may delay the power control decision for a certain amount of SACCH block periods. In this case lchan_ms_pwr_ctrl() returns early and no logging is printed at all.
Let's always log the input values (reported level, UL measurements) early in lchan_ms_pwr_ctrl(). This is useful for debugging, and this is exactly what lchan_bs_pwr_ctrl() does.