osmo-bts (1.8.0) unstable; urgency=medium [ Vadim Yanitskiy ] * osmo-bts-{oc2g,lc15}: signal CBCH support to BSC * oml: oml_tx_attr_resp(): pass *mo to handle_attrs_{bts,trx}() * oml: refactor generation of Get Attribute Response * oml: oml_tx_attr_resp(): handle common nm_state attributes * oml: implement handling of NM_ATT_IPACC_SUPP_FEATURES * l1sap: l1sap_tch_ind(): fix segfault on stale TCH.ind * osmo-bts-trx: rx_tchh_fn(): fix copy-pasted comment * meas: also match stderr logging for meas_test * meas: lchan_meas_sub_num_expected(): proper cmode enforcement * meas: lchan_meas_check_compute(): fix -SUB frame substitution * meas: handle VAMOS specific chan modes * meas: fix ts45008_83_is_sub(): DTX is permitted on TCH/F sign * meas: ts45008_83_is_sub(): properly handle CSD modes * meas: lchan_meas_sub_num_expected(): handle CSD modes * osmo-bts-trx: tx_tch[fh]_fn(): use BUFPOS macro everywhere * osmo-bts-trx: tx_tch[fh]_fn(): rework generation of dummy FACCH * osmo-bts-trx: tx_tch[fh]_fn(): fix sending idle CSD frames * osmo-bts-trx: add_sbits(): simplify, improve coding style * osmo-bts-trx: use BPLEN macro instead of magic numbers * osmo-bts-trx: eliminate ul_bursts_prev, use the primary buffer * l1sap: fix logic error in gsmtap_csd_rlp_process() * osmo-bts-trx: add test VTY command to send arbitrary TRXC messages * doc/examples: fix missing config files in release tarballs * osmo-bts-{trx,virtual}: do not advertise TCH/F14.4 NT * tests/osmo-bts.vty: aligh with recent libosmovty changes * README.md: cosmetic: fix a typo * doc/examples: use common 'ipa unit-id' in all files * doc/examples: drop no-op 'gsmtap-sapi' lines * doc/examples: osmo-bts-trx.cfg: set 'oml remote-ip' to '127.0.0.1' [ Pau Espin Pedrol ] * oml: Store RSL connect related fields in bb_transc * Move trx->rsl_link to trx->bb_transc.rsl.link * nm: delay RSL connect until BBTRANSC object is OPSTARTed * cosmetic: oc2g_mgr: fix trailing whitespace * Drop use of deprectated vty callback is_config_node * Revert "trx_if: Allow calling trx_if_flush/close from within TRXC callback" * trx_if: Allow calling trx_if_flush/close from within TRXC callback (v2) [ Andreas Eversberg ] * ASCI: Ignore LAPD frames from MS, while the uplink is not active * Do not prefix UI header to System Information Type 10 * Increase RR scheduler priority to 20, to avoid dropped bursts * ASCI: Add control of uplink access to osmo-bts-trx * ASCI: Add control of uplink access to osmo-bts-sysmo * ASCI: Enable voice group/broadcast call feature at osmo-bts-trx * ASCI: Control uplink access bursts detection of physical interface * ASCI: Add library requirements for uplink access to TODO-RELEASE * Use uniform log format for default config files * Transmit invalid AMR speech blocks instead of dummy FACCH * LAPDm: Reject (release) establishment on DCCH, SAPI 0 without L3 payload * Handle empty (idle) PDCH blocks gracefully * Use polling based LAPDm with frame numbers * OML: Add Get Attributes for supported MOs for BTS Object Class * OML: Add Get Attributes for supported MOs for Radio Carrier Object Class * OML: Add Get Attributes for supported MOs for Channel Object Class * Fix ASCI access burst detection with osmo-bts-trx [ Oliver Smith ] * systemd: remove RestartPreventExitStatus=1 * contrib: remove rpm spec file * contrib/systemd: run as osmocom user [ Philipp Maier ] * pcuif_proto: rename PCU_IF_FLAG_SYSMO to PCU_IF_FLAG_DIRECT_PHY * pcuif_proto: clean up last remains of old PCUIF v10 * pcuif_proto: signal BTS model via PCUIF [ Harald Welte ] * Add GSMTAP encapsulation of RLP frames in CSD NT mode * gsmtap-rlp: Add support for skipping generating NULL frames * Fix license headers. * sysmobts_mgr_temp: Migrate to ctrl_cmd_send2() * osmo-bts-virtual: Port over to osmo_io * common: Add RTP related rate counters * Add funding link to github mirror * README.md: Add Forum + Issue Tracker sections [ Matan Perelman ] * ctrl: Add max ber10k rach [ Neels Hofmeyr ] * early-IA: use the correct TRX [ Keith ] * vty info: MS power levels in dBm are not negative [ Mychaela N. Falconia ] * rsl.adoc: mention currently undocumented IEs * rsl: parse RSL_IE_OSMO_OSMUX_CID correctly * common: add support for TW-TS-001 -- Oliver Smith Wed, 24 Jul 2024 16:40:02 +0200 osmo-bts (1.7.0) unstable; urgency=medium [ arehbein ] * common: Fix memleak in get_smscb_block() * doc: Adapt to use of 'telnet_init_default' * common: Remove redundant checks * common: Remove unused function gsm_objclass2nmstate() * gsm_objclass2mo(): Change signature/set NACK cause * gsm_objclass2obj(): Change signature/set NACK cause * PCU interface: Log version when starting listener * common: Have PCU socket connection use osmo_wqueue * common: Make socket queue max. length configurable [ Max ] * bts-virtual: fix segfault * osmo-bts-trx: log TRXC/TRXD connection address * osmo-bts-trx: use bool for true/false flags * GSMTAP: allow configuring local address * license: fix typos [ Vadim Yanitskiy ] * paging_add_imm_ass(): remove meaningless from_pcu argument * osmo-bts-{trx,virtual}: clean up bts_model_l1sap_down() * osmo-bts-{trx,virtual}: check lchan against NULL in bts_model_l1sap_down() * osmo-bts-{trx,virtual}: set rc on error in bts_model_l1sap_down() * GSMTAP: print 'gsmtap-local-host' if not NULL * osmo-bts-virtual: indicate BTS_FEAT_[E]GPRS to the BSC * rsl: remove redundant gsm_lchan_name() in rsl_tx_rf_rel_ack() * rsl: reduce logging verbosity on some messages * tests: use -no-install libtool flag to avoid ./lt-* scripts * scheduler: log pchan value in trx_sched_set_pchan() * osmo-bts-virtual: properly handle dynamic TS in vbts_set_ts() * contrib/osmo-bts.spec.in: do not depend on libosmogb * osmo-bts-trx: properly activate [CBCH/]BCCH/CCCH * rsl: rsl_handle_chan_mod_ie(): add missing GSM48_CMODE_* values * osmo-bts-{sysmo,lc15,oc2g}: fix segfault in ph_tch_req() * tests: $(BUILT_SOURCES) is not defined, depend on osmo-bts-virtual * osmo-bts-virtual: properly activate [CBCH/]BCCH/CCCH * flags: add missing entries to bts_impl_flag_desc[] * flags: group BTS_INTERNAL_FLAG_* into an enum * flags: ensure completeness of bts_impl_flag_desc[] * fixup: common: Remove unused function gsm_objclass2nmstate() * oml: gsm_objclass2{mo,obj}(): cosmetic: return immediately * oml: gsm_objclass2{mo,obj}(): set cause for unknown obj_class * oml: reset BCCH carrier power reduction mode (if enabled) * copyright: fix typo: sysmocom s/s.m.f.c./s.f.m.c./ GmbH * osmo-bts-trx: alloc/free burst buffers in trx_sched_set_lchan() * osmo-bts-trx: use direct pointer to chan_state->{ul,dl}_bursts * osmo-bts-trx: tch_dl_dequeue(): do not drop CSD frames * osmo-bts-trx: tx_pdtch_fn(): use msgb_l2len() * osmo-bts-trx: fix recent regression in Tx lchan handlers * osmo-bts-trx: remove redundant memset() on receipt of NOPE.ind * l1sap: use gsm0502_fn2ccch_block() from libosmogsm * scheduler: fix wrong union field in _sched_compose_tch_ind() * scheduler: use msgb_hexdump_l2() in _sched_compose_tch_ind() * scheduler: unify argument names/order for _sched_compose_*_ind() * scheduler: constify *data pointer in _sched_compose_*_ind() * scheduler: use size_t for data_len in _sched_compose_*_ind() * fix bts_supports_cm(): properly check feature flags for VGCS/VBS * measurement: suppress unsupported tch_mode warnings for CSD * osmo-bts-trx: pull the AMR header in tch_dl_dequeue() * osmo-bts-trx: implement CSD scheduling support * osmo-bts-trx: implement FACCH/[FH] support for CSD * osmo-bts-trx: implement TCH/F2.4 support for CSD * osmo-bts-trx: visualize rx_tch[fh]_fn() functions * osmo-bts-trx: unify and enrich 'Received bad data' logging * osmo-bts-trx: rx_tchf_fn(): move compute_ber10k() above * osmo-bts-trx: rx_tch[fh]_fn(): combine rc-checking ifs * osmo-bts-trx: change 'Received bad data' back to LOGL_DEBUG * osmo-bts-trx: tx_tch[fh]_fn(): fix NULL pointer dereference * osmo-bts-trx: document/clarify the meaning of BUFMAX=24 * l1sap: proper rate adaptation for CSD (RFC4040 'clearmode') * csd_v110_rtp_encode(): properly set E1/E2/E3 bits * osmo-bts-trx: bts_supports_cm_data(): allow non-transparent modes * rsl: rsl_handle_chan_mod_ie(): set lchan->csd_mode * rsl: rsl_handle_chan_mod_ie(): do not use legacy defines * csd_v110: fix comments in csd_v110_rtp_{en,de}code() * csd_v110: properly set E1/E2/E3 for non-transparent data * csd_v110: handle empty/incomplete Uplink frames gracefully [ Philipp Maier ] * pcu_sock: rename rc to fd * pcu_sock: cosmetic: remove whitespace after type cast * pcu_sock: cosmetic: remove unnecessary line breaks * pcu_sock: do not mess with the osmo fd flags directly * sched_lchan_tchx: use GSM_HR_BYTES_RTP_RFC5993 constant * l1sap: fix wording in comment * pcu_sock: don not continue when running out of TRX space * paging: cosmetic: rename all IMM.ASS references to MAC block * paging: parse PCUIF data indication outside of paging.c * paging: do not confirm PAGING COMMAND messages * pcu_sock: move variable declaration of imsi[4] into related scope * l1sap: cosmetic: rename payload_len to rtp_pl_len * pcu_sock: use PCUIF version 11 (direct TLLI) * paging: also accept zero length IMSI strings 3 * pcuif_proto: rename tlli to msg_id * pcu_sock: get rid of fn parameter in pcu_tx_pch_data_cnf * pcuif_proto: remove unnecessary members from gsm_pcu_if_data_cnf_dt * pcuif_proto: get rid of _DT, _dt (Direct TLLI) * bts: make bts_agch_dequeue static * pcuif_proto: use confirm flag in struct gsm_pcu_if_pch * pcu_sock: use PCU_IF_SAPI_AGCH_2 instead PCU_IF_SAPI_AGCH * pcu_sock: print SAPI and msg_id when sending confirmation [ Pau Espin Pedrol ] * bts-trx: Fix no NM Radio{Carrier,Channel} switching to Enabled if one TRX is rf_locked * pcu_sock: Submit all DATA.ind regardless of link quality * pcu_sock.c: Call osmo_fd_unregister() before closing and changing bfd->fd * Rewrite pcu_sock_write() * lchan: Improve error path logging in gsm_pchan2chan_nr() * cosmetic: gsm_pchan2chan_nr(): Update spec documentation * cosmetic: bts_trx.h: Fix whitespace * Avoid tx RF Resource Ind for disabled TRX * bts-trx: Avoid pushing interf_meas for disabled TRX * contrib/ber: Avoid regenerating codec_bit_class.h every build * bts-trx: Drop unused param to internal function * Clarify configuration of TSC on each timeslot * bts_model_apply_oml(): Drop unneded code * oml.c: Remove dot character at the end of log lines * nm: Apply BTS/TRX/TS OML Attributes through NM FSMs * nm: Drop NM_EV_SETATTR_{ACK/NACK} * oml: Get rid of unused tlv_parsed param in bts_model_apply_oml() * bts_model_apply_oml(): Improve definition of parameter * lc15,oc2g,sysmo: Update GPRS NM object state at the right time * Simplify implementation of bts_model_opstart() in all bts types * nm: Apply OPSTART through NM FSMs * NM: NACK received OML OPSTART if no attributes were set beforehand * Introduce NM FSM for GPRS NSE object * Fix octet 2 of NM GPRS Cell * Introduce NM FSM for GPRS Cell object * Rearrange declaration of struct gsm_bts_gprs_nsvc * Move NSVC structs to be part of NSE * bts: Simplify lifecycle of BTS inside bts_list * Introduce NM FSM for GPRS NSVC object * nm: Dispatch NM_EV_SW_ACT in cascade to BTS SiteMgr children * Merge gsm_network into gsm_bts_sm and place gsm_bts under it * Move GPRS NSE under BTS SiteMgr * Drop NM_EV_BBTRANSC_INSTALLED in favour of generic NM_EV_SW_ACT * nm: Document current state of SW_ACT in TRX related objects * Properly report all states through NM FSM upon OML link up * Update g_bts_sm->num_bts when bts is added/removed from bts list * Move pcu_sock_state to gprs section of bts_sm * pcu_sock: Allocate pcu_sock_state using g_bts_sm talloc context * pcu_sock: Drop bts_sm pointer * oml: Fix potential null ptr access on trx object * bts-sysmo: Fix pinst->version filled too early * bts-sysmo: Delay marking phy_link as connected until L1 reset + got info * vty.c: Use already available tpp pointer * octphy: Fix clearly wrong noop assignment * bbtransc/rcarrier: Fix statechg done twice upon NM_EV_RX_OPSTART * Increase PCUIF wqueue size * bts-trx: Fix CCCH not enabled if BS_AG_BLKS_RES!=1 is provided by BSC * rsl: Improve logic reactivating CCCH upon SI3 BS_AG_BLKS_RES change [ Oliver Smith ] * gitignore: add vty pdf * doc: rsl: add RSL_IE_IPAC_RTP_CSD_FORMAT * rsl_rx_ipac_XXcx: parse csd_fmt_d/ir * debian: set compat level to 10 * systemd: depend on networking-online.target * gitignore: add arm-poky-linux-gnueabi-libtool * osmo-bts-sysmo: trx_mute_on_init_cb: call bts_update_status * osmo-bts-sysmo: activate_rf: no dispatch on fail * osmo-bts-sysmo/l1_if: move mute_rf_compl_cb up * osmo-bts-sysmo: mute PHY until OML is ready [ Harald Welte ] * DTX: bts-{sysmo,oc2g,lc15}: Print DEBUG messages about ONSET * cosmetic: Replace %i with %d * Introduce LOGPLCFN() for logging lchan-name + frame number * bts-{sysmo,oc2g,lc15}: Fix RTP of AMR SID_FIRST_P1 * common/vty: Print AMR MultiRate Configuration in "show lchan" * bts-{sysmo,oc2g,lc15}: Dump logical channel params during MPH-ACTIVATE.req * cosmetic: use __func__ instead of __FUNCTION__ * lc15: fix compiler warning about wrong indent * lc15: Remove unused warning * lc15/oc2g: remove unused variables * oc2g: Fix 'unused variable' compiler warning * cosmetic: Remove "FIXME?" from Odd AMR CMI phase * lc15: fix compiler warning about unused variable cell_size * Replace explicit gsm_lchan_name() calls with LOGPLCHAN * logging: Introduce LOGPLCGT() * cosmetic: Change LOGPLCFN argument order * paging: Add support for generating NLN/NLN-Status in P1 Rest Octets * Add ASCI (advanced speech call items) log sub-system * ASCI: NCH / NOTIFICATION support * validate RSL "channel rate and type" against VGCS/VBS flags * Store "Channel rate and type" from RSL Channel Mode IE in BTS * ASCI: VGCS/VBS RACH -> RSL TALKER/LISTENER DETECT * sysmo: Enable VGSCS + VBS feature flags * omldummy: Claim to support VBS + VGCS towards BSC [ Mychaela N. Falconia ] * trx: detect UL SID in EFR just like in FR * sysmo: fix handling of SID in EFR * common: implement rtp continuous-streaming mode * rtp continuous-streaming: fix BFI in the quality-suppressed case * sysmo: emit empty RTP ticks during FACCH stealing on TCH/F * bts-{lc15,oc2g,sysmo}: support EFR in repeat_last_sid() * RTP input, FR & EFR: preen incoming payloads for SID errors * lc15,oc2g: fix handling of SID in EFR * all models, FR/EFR UL: change SID check to _is_any_sid() * trx: remove model-specific BFI packet formats * refactor: replace rtppayload_is_valid() with preening before enqueue * all models, HR1 codec: accept both TS101318 and RFC5993 formats * trx: fix HR1 codec breakage from format change * trx, HR1 codec: change UL PHY output format to TS 101 318 * all models, HR1 codec: select RTP output format via vty option * FR/HR/EFR TCH DL: implement DTX rules * HR1 codec: validate ToC header in RFC5993 RTP input * HR1 codec: act on SID indication in RFC5993 RTP input * trx TCH DL: transmit invalid speech blocks instead of dummy FACCH * ECU in UL path: make it optional per vty config * ECU in UL path: move state alloc/free to l1sap * ECU in UL path: move it from trx model to l1sap [ Sylvain Munaut ] * contrib: Add BER testing tool [ Andreas Eversberg ] * Change return value of bts_supports_cm() from int to bool * ASCI: Add function to reactivate channel * ASCI: Retrieve NCH position from System Information 1 * ASCI: Add Notification CHannel (NCH) support * ASCI: Add support for rest octets in Paging request type 2 and 3 * ASCI: Send only NLN on Paging request type 1 rest octets * ASCI: Add Notification/FACCH support * ASCI: Repeat UPLINK FREE message until uplink becomes busy * Add test cases for rest octets of Paging Requests * ASCI: Enable UPLINK ACCESS on various BTS models [ Keith ] * Fix incorrect order of params passed to logging macro -- Pau Espin Pedrol Tue, 12 Sep 2023 16:05:30 +0200 osmo-bts (1.6.0) unstable; urgency=medium [ Vadim Yanitskiy ] * osmo-bts-trx: call osmo_timer_del() unconditionally * osmo-bts-trx: amr_loop: trigger the loop unconditionally * osmo-bts-trx: fix handling of ciphering params in PRIM_INFO_MODIFY * osmo-bts-trx: rx_rach_fn(): properly detect handover RACH * osmo-bts-trx: handle MTS 0b0110 indicating an Access Burst * osmo-bts-trx: use lookup tables for checking AMR CMI/CMR on Downlink * osmo-bts-trx: drop ul_amr_fn_is_cmi() / dl_amr_fn_is_cmi() [ Pau Espin Pedrol ] * rsl: rx ipac crcx/mdcx: Log payload_type2 * logging: Move category descriptions to be in order with enum * Clean up osmo-bts-*/Makefile.am * Split out lchan rtp socket creation from rsl handling code * Avoid counting lchan->dl_tch_queue length every time a msg is enqueued * Use libosmocore API msgb_queue_free() to free lists * rsl: Reduce scope of variable * Move lchan_dl_tch_queue_enqueue to lchan.c and make it public * cosmetic: Fix formatting of if-else block brackets * Depend on libosmo-netif * Clarify RTP AMR header offset in TCH enc/dec * tests/*/Makefile.am: Fix typo in LIBOSMONETIF_CFLAGS * tests/*/Makefile.am: Add missing libosmo-netif cflags * oc2g: Makefile.am Fix typo in LIBOSMONETIF_LIBS * Introduce Osmux support * abis: Avoid TCP/IPA RSL sockets continue conn establishment while shutting down * osmux: Log sendto() error * lchan: Reset Abis RTP/Osmux config during lchan release * vty: Fix SPEECH_MODE printed with hex prefix but dec value * vty: Print Osmux CID on lchans using Osmux * Allocate struct osmux_in_handle through new libosmo-netif APIs * osmux: Drop logging of osmux internal counters * osmux: Match remote address in osmux_lchan_find() * osmux: Log remote address upon rx of osmux pkt * osmux: Lower log level when osmux batch received for unknown CID * osmux: nullify osmux.rtpst after freeing it * osmux: Skip lchans in lookup which still have no remote associated * osmux: Close osmux socket when bts is freed * osmux: Fix null ptr dereference sending UL data before the remote is configured * osmux: Rotate over available Osmux CID when allocating a new one * osmux: Use new osmux_xfrm_input API to set name on each link * vty: Fix typo in write-config: osmux / local-port * vty: Fix typo in symbol name [ Max ] * Set working directory in systemd service file * Don't manually create pid file * Document realtime options in .service units * Update realtime scheduling priority in service file * ctrl: take both address and port from vty config * Add SI10 support [ Philipp Maier ] * pcu_sock: fix sourcecode formatting * measurement: do not call msgb_l3len without checking * l1sap: do not call msgb_l2hlen without checking * rsl: use unsigned int * pcuif_proto: cosmetic: add constant PCU_IF_NUM_NSVC and replace magic numbers * sched_lchan_tchf: replace numeric constant with define constant * l1sap: remove unused pointer variable * pcuif_proto: use define constant to specify nax number of trx * pcu_sock: use ARRAY_SIZE rather then magic number [ Keith ] * osmo-bts-trx: respond to tx-attenuation config in real time. [ Harald Welte ] * update outdated vty copyright statement [ Daniel Willmann ] * shutdown_fsm: Only ramp down power when stopping bts through Ctrl-C * shutdown_fsm: Add power_ramp_force() to jump straight to the tgt power [ daniel ] * Revert "shutdown_fsm: Only ramp down power when stopping bts through Ctrl-C" [ Alexander Couzens ] * OML: NSVC[1] MO should have the same initial state as NVSC[0] [ Oliver Smith ] * oc2gbts_mgr_calib: fix build against gpsd >= 3.20 * contrib/jenkins: build libosmo-abis without dahdi [ arehbein ] * osmo-bts: Transition to use of 'telnet_init_default' -- Pau Espin Pedrol Tue, 07 Feb 2023 17:15:52 +0100 osmo-bts (1.5.0) unstable; urgency=medium [ Pau Espin Pedrol ] * bts_shutdown_fsm.h: Remove wrong comment describing enum * bts: Properly free bts->shutdown_fi when struct gsm_bts is freed * bts-trx: amr: Fix return code of osmo_amr_rtp_dec() checked too late * Change some log levels NOTICE->INFO * rsl: Conditionally decrease log level if cause is normal event * bts-trx: Log lchan if avaialble in Meas Avg * doc: rsl: Fix description of 'IP Connection Statistics' IE * bts-trx: sched_lchan_tchh.c: Workaround gcc false positive error * bts-sysmo: Replace use of deprecated ipa_client_conn_create API [ Harald Welte ] * cbch: Fix bts_smscb_state_reset() to avoid double-free * cbch: Fix dangling cur_msg leading to double-free in bts_cbch_reset() * [lc15,oc2g,octphy] Fix memory leak on write queue overflow * update git URLs (git -> https; gitea) [ Oliver Smith ] * debian/control: add osmo-bts meta-package * treewide: remove FSF address * model_init: order features alphabetically * model_init: set BTS_FEAT_PAGINATION_COORDINATION * model_init: order features alphabetically, part 2 * src/common/bts.c: set BTS_FEAT_PAGING_COORDINATION * src/common/bts.c: set BTS_FEAT_CCN [ Vadim Yanitskiy ] * oml: use proper talloc context in oml_rx_set_radio_attr() * oml: use ts->trx as talloc-context in oml_rx_set_chan_attr() * oml: fix copy-pasted comments in oml_rx_set_*_attr() * oml: assign unique names to 'struct tlv_parsed' chunks * osmo-bts-trx: use l1ts as talloc context for burst buffers * osmo-bts-trx: fix a memleak in trx_sched_set_lchan() * cbch: cosmetic: use talloc_zero() in bts_process_smscb_cmd() * phy_instance_destroy(): fix NULL pointer dereference * logging: get rid of logging category DSUM * osmo-bts-trx: make use of OSMO_UNLIKELY() when handling TRXD PDUs * osmo-bts-trx: cosmetic: use rate_ctr_inc2() instead of rate_ctr_inc() * osmo-bts-trx: new rate counter 'trx_sched:dl_fh_cache_miss' * VTY: fix ambiguity in BTS specific command definitions * osmo-bts-trx: do not run osmo_{fr,hr}_check_sid() on FACCH/U frames * osmo-bts-trx: rx_tchh_fn(): do not calculate BER10k for FACCH twice * rsl: fix wrong IE being checked in rsl_rx_chan_activ() * osmo-bts-trx: rx_tchh_fn(): fix HR SID detection (wrong offset) * osmo-bts-trx: rx_tchh_fn(): mark valid SID frames as such * osmo-bts-trx: use consistent naming for 'enum sched_meas_avg_mode' * osmo-bts-trx: use a lookup table in trx_sched_meas_avg() * osmo-bts-trx: rx_tchh_fn(): use proper meas averaging mode * trx_sched_ul_burst(): get rid of the 'switch' statement * fix gsm_bts_get_cbch(): CBCH can be allocated on Cn * osmo-bts-trx: rx_tchh_fn(): indicate BER10k=0 for FACCH BFIs * osmo-bts-trx: rx_tchh_fn(): get rid of chan_state->meas_avg_facch * osmo-bts-trx: rx_{tchf,tchh}_fn(): also use meas_avg for BFI * osmo-bts-trx: rx_{tchf,tchh}_fn(): shift Rx burst buffer on bid=0 * osmo-bts-trx: rx_{tchf,tchh}_fn(): ensure complete set of bursts * osmo-bts-trx: rx_{tchf,tchh}_fn(): get TDMA FN from meas history * osmo-bts-trx: rx_{tchh,tchf}_fn(): use AMR CMI lookup tables * osmo-bts-trx: rx_{tchh,tchf}_fn(): use tch_mode directly * osmo-bts-trx: rx_tchh_fn(): fix meas reporting in signalling mode * osmo-bts-trx: move AMR CMI lookup tables to the respective files * osmo-bts-trx: rx_tchh_fn(): fix indexes in the AMR CMI lookup table * osmo-bts-trx: rx_tchf_fn(): clarify indexes in the AMR CMI lookup table * power_ctrl_params_def_reset(): set .ctrl_interval for both UL/DL * scheduler: remove redundant OSMO_ASSERT() statements * scheduler: rts_tchh_fn(): use a lookup table for FACCH/H * osmo-bts-trx: rx_tchh_fn(): use a lookup table for FACCH/H * osmo-bts-{trx,virtual}: tx_tchh_fn(): remove FACCH/H alignment check * osmo-bts-trx: rename 'loops.[ch]' to 'amr_loop.[ch]' * osmo-bts-trx: use '#pragma once' in amr_loop.h * osmo-bts-trx: amr_loop: remove unneeded #includes * rsl: de-duplicate parsing of MultiRate configuration IE * rsl: rsl_rx_chan_{activ,modif}: do not sent an Error Report * rsl: parse_multirate_config(): check if AMR codec is used * logging: use a different color tone for DLOOP * rsl: always check return value of rsl_tlv_parse() * rsl: misc / cosmetic fixes for tx_ipac_XXcx_nack() * osmo-bts-virtual: remove unused 'codec_mode_request' argument * l1sap: l1sap_chan_act(): alloc DTX FSM only for TCH * l1sap: l1sap_chan_act(): remove unused *tp argument * osmo-bts-trx: bts_report_interf_meas(): remove unused fn param * rsl: use hard-coded defaults if the MultiRate conf IE is absent * tests/amr/Makefile.am: use proper binary name prefix 'amr_test_' * tests/amr: add a unit test for amr_parse_mr_conf() * amr: fix parsing of threshold and hysteresis in amr_parse_mr_conf() * tests: use 'check_PROGRAMS' instead of 'noinst_PROGRAMS' * struct amr_multirate_conf: remove ms_mode[], raname bts_mode[] * common: fix coding style: if is not a function * osmo-bts-trx: amr_loop: simplify trx_loop_amr_set() * osmo-bts-trx: use C/I in the AMR link adaptation loop * osmo-bts-trx: amr_loop: improve logging in trx_loop_amr_input() * osmo-bts-trx: amr_loop: allow upgrading codec mode > 0 * osmo-bts-trx: amr_loop: log if AMR mode remains unchanged * osmo-bts-trx: amr_loop: do not miss C/I samples * osmo-bts-trx: prioritize FACCH in s/tx_tch_common()/tch_dl_dequeue()/s * osmo-bts-trx: tx_tchh_fn(): make handling of FACCH/H cleaner * osmo-bts-trx: fix scheduling of dummy FACCH/H and FACCH/F * VTY: fix NULL-pointer dereference in 'show transceiver' * osmo-bts-trx: check if scheduling of [dummy] FACCH/H is allowed * osmo-bts-trx: rx_{tchh,tchf}_fn(): improve logging of AMR DTX frames * pcu_sock: comment out {dl,ul}_tbf_ext related warnings * osmo-bts-trx: drop Uplink loss detection from Downlink path * scheduler: trx_sched_is_sacch_fn(): make ts pointer const * struct bts_ul_meas: reflect C/I units in field name s/c_i/ci_cb/ * tests/meas: improve logging in test_ts45008_83_is_sub_single() * tests/meas: improve test_ts45008_83_is_sub_is_sub() * measurement: log SUB/FULL as text in lchan_new_ul_meas() * measurement: move SACCH detection to process_l1sap_meas_data() * measurement: fix matching of SUB frames by TDMA FN * osmo-bts-trx: rx_tchf_fn(): do not treat AFS_SID_UPDATE as SUB frame * Revert "osmo-bts-trx: rx_tchf_fn(): do not treat AFS_SID_UPDATE as SUB frame" -- Pau Espin Pedrol Wed, 29 Jun 2022 09:41:38 +0200 osmo-bts (1.4.0) unstable; urgency=medium [ Philipp Maier ] * l1sap: Store status of SRR in an lchan struct memeber * l1sap: add logging and VTY introspection for ACCH repetition * sched_lchan_tchh: fix frame number and fill FACCH gap * main,abis: change model name from sysmoBTS to osmo-bts * paging: prioritize CS related paging over PS related pagings. * allow to configure multiple oml remote-ip addresses * sched_lchan_tch_x: do not use cmr as ft * sched_lchan_tch_x: use functions to determine AMR tranmssion phase * sched_lchan_tch_x: use ul_cmr and ul_ft when generating RTP bad frame * rsl: simplfy parse_repeated_acch_capability * rsl: parse temporary overpower value RSL CHAN ACT / MODIFY [ Vadim Yanitskiy ] * doc/examples: remove obsolete power control parameters * doc/examples: enable stderr logging for osmo-bts-virtual.cfg * osmo-bts-trx: fix: do not call trx_if_close() two times * osmo-bts-trx: fix segfault on trx_phy_inst_open() failure * l1sap: use the passed 'trx' pointer in l1sap_chan_act() * l1sap: use TLVP_PRES_LEN() macro in l1sap_chan_act() * l1sap: check BTS_FEAT_MULTI_TSC in l1sap_chan_act() * l1sap: fix wrong IEI and parsing in l1sap_chan_act() * manuals: fix wrong VTY node for 'gsmtap-sapi' command * manuals: document GSMTAP 'enable-all' / 'disable-all' * osmo-bts-trx: correct definition of 'osmotrx rx-gain' command * rsl: do not blindly ignore unhandled/unknown Channel Mode * manuals: remove deprecated command line parameters * manuals: document new 'gsmtap-remote-host' command * l1sap: fix incorrect pointer cast in l1sap_chan_act() * rsl: rename, fix and refactor lchan_tchmode_from_cmode() * rsl: add missing Channel Mode values to rsl_handle_chan_mod_ie() * lchan2lch_par(): fix missing default branch in switch * osmo-bts-trx: cosmetic: TRXD 'header version' -> 'PDU version' * osmo-bts-trx: remove outdated TRXD protocol documentation * osmo-bts-trx: cosmetic: use '#pragma once' in trx_if.h * osmo-bts-trx: define TRXC/TRXD message buffer size * osmo-bts-trx: 'burst type' is actually modulation type * osmo-bts-trx: move MTS parser into trx_data_parse_mts() * osmo-bts-trx: discard TRXD PDUs with unexpected version * osmo-bts-trx: move TDMA frame number check to trx_data_read_cb() * osmo-bts-trx: cosmetic: get rid of TRX_CHDR_LEN macro * osmo-bts-trx: generalize checking of TRXD header length * osmo-bts-trx: pass 'struct phy_instance' to TRXD dissectors * osmo-bts-trx: refactor handling of version specific TRXD parts * osmo-bts-trx: enlarge and share TRXD message buffer * osmo-bts-trx: assert PDU version in trx_if_send_burst() * osmo-bts-trx: reduce code nasting in trx_if_send_burst() * vty: fix the use of deprecated osmo_bts_feature_name() * common/abis: fix the use of deprecated e1inp_line_get() API * osmo-bts-trx: refactor parse_rsp(), fix compilation warnings * rsl: fix wrong value printed in rsl_handle_chan_mod_ie() * struct gsm_bts_trx: remove unused leftovers from openbsc * common/sysinfo: make struct gsm_bts_trx const in num_agch() * osmo-bts-{lc15,oc2g}: drop redundant checks in VTY commands * [VAMOS] struct gsm_bts_trx: fix the PHY instance pointer * [VAMOS] Merge bts_trx_init() into gsm_bts_trx_alloc() * [VAMOS] osmo-bts-trx: move {chan,bid} to trx_{dl,ul}_burst_{req,ind} * osmo-bts-trx: implement TRXDv2 protocol support * scheduler.h: cosmetic: use #pragma once * osmo-bts-trx: cosmetic: s/trx_sched_fn/bts_sched_fn/g * osmo-bts-trx: remove redundant assert() in bts_sched_fn() * osmo-bts-trx: fix hopping pointer bug in bts_sched_fn() * [VAMOS] Re-organize osmo-bts-trx specific structures * osmo-bts-trx: clarify logging messages in trx_if_{open,close}() * osmo-bts-{trx,virtual}: fix: pinst->trx may be NULL * common: make the arguments of phy_{link,instance}_name() const * [VAMOS] common: make 'struct gsm_bts_trx_ts' pointers const * [VAMOS] gsm_data.h: fix wrong bit-mask in BSIC2BCC macro * [VAMOS] gsm_data.h: introduce and use BTS_TSC macro * common: phy_links_open(): warn about dangling PHY instances * [VAMOS] osmo-bts-trx: rework and split up bts_sched_fn() * Fix regression in 'osmo-bts-trx: rework and split up bts_sched_fn()' * [VAMOS] osmo-bts-trx: implement and enable PDU batching for TRXDv2 * [VAMOS] osmo-bts-trx: indicate MTS in Downlink TRXDv2 PDUs * [VAMOS] rsl_rx_mode_modif(): handle Channel Identification IE * [VAMOS] rsl: call bts_supports_cm() from rsl_handle_chan_mod_ie() * [VAMOS] bts_supports_cm(): handle RSL_CMOD_CRT_OSMO_TCH_VAMOS_{Bm,Lm} * [VAMOS] common/scheduler: unify symbol names for training sequences * [VAMOS] osmo-bts-trx: rework handling of Training Sequence * [VAMOS] osmo-bts-trx: properly handle per-timeslot TSC values * [VAMOS] scheduler: add new GMSK training sequences from 3GPP 45.002 * [VAMOS] l1sap_chan_act(): handle Osmocom specific TSC IE * [VAMOS] common/oml: generalize checking BTS_FEAT_MULTI_TSC * [VAMOS] gsm_pchan2chan_nr(): use ABIS_RSL_CHAN_NR_CBITS_* macros * [VAMOS] rsl_lchan_lookup(): use ABIS_RSL_CHAN_NR_CBITS_* macros * [VAMOS] rsl_lchan_lookup(): make it more readable * [VAMOS] gsm_data: rework and rename gsm_lchan_name_compute() * [VAMOS] l1sap: get_lchan_by_chan_nr() may return NULL * [VAMOS] oml_rx_set_chan_attr(): clarify NM_ATT_CHAN_COMB handling * manuals/abis/rsl.adoc: s/TS 08.58/TS 48.058/ * manuals/abis/rsl.adoc: rework Channel Number description * manuals/abis/rsl.adoc: add missing CBCH Channel Number values * manuals/abis/rsl.adoc: add VAMOS specific Channel Number values * osmo-bts-trx: fix NULL pointer dereference in trx_if_send_burst() * trx_sched_is_sacch_fn(): fix handling of dynamic timeslots * [VAMOS] scheduler: drop meaningless channel number checks * [VAMOS] conf_lchans_as_pchan(): improve readability * [VAMOS] Implement the concept of 'shadow' timeslots * [VAMOS] osmo-bts-trx: schedule bursts on 'shadow' timeslots * l1sap: fix TDMA frame number wrap in l1sap_info_time_ind() * conf_lchans_as_pchan(): fix GSM_LCHAN_{CCCH->CBCH} regression * conf_lchans_as_pchan(): initialize all lchans with GSM_LCHAN_NONE * measurement: remove over-defensive checks in is_meas_complete() * [VAMOS] trx_sched_init_ts(): assign names to per-timeslot counters * common/vty: facilitate finding duplicate PHY/TRX associations * vty: ensure all warning messages are prefixed with '%%' * osmo-bts-octphy: drop talloc_replace(), use osmo_talloc_replace_string() * l1sap: fix TDMA frame number arithmetic in fn_ms_adj() * osmo-bts-trx: fix typo: s/bisc/bsic/ in 'show transceiver' * osmo-bts-trx: fix copy-pasted comment: s/sysmoBTS/osmo-bts-trx/ * oml: fix handling of NM_ATT_INTERF_BOUND attribute * Report interference levels in RSL RF RESource INDication * scheduler: reorder enum trx_chan_type, add TRX_CHAN_IS_DEDIC() * osmo-bts-trx: report interference levels to the upper layers * osmo-bts-{trx,virtual}: get rid of dummy tx_idle_fn() * scheduler: unset TRX_CHAN_FLAG_AUTO_ACTIVE for TRXC_IDLE * osmo-bts-trx: print timeslot brief info in 'show transceiver' * osmo-bts-trx: measure interference levels on TRXC_IDLE * osmo-bts-trx: report PDCH interference levels to the PCU * scheduler: fix wrong union field in trx_sched_tch_req() * scheduler: fix: use ts_pchan() in trx_sched_set_cipher() * Revert "power_control: BS power shall not be reduced on C0" * osmo-bts-omldummy: indicate BTS_FEAT_BCCH_POWER_RED as supported * osmo-bts-trx: implement BCCH carrier power reduction mode * power_control: constrain BS power reduction on BCCH carrier * manuals/abis/rsl.adoc: clarify RF Resource Indication conformance * rsl: use tlvp_val16be() in rsl_rx_ipac_XXcx() * gsm_lchan_interf_meas_calc_band(): also print number of AVG samples * osmo-bts-trx: send dummy FACCH in the absense of RTP frames * osmo-bts-trx: return -ENODEV if 'bursts_p' is NULL * l1sap: unify channel (de)activation/modification messages * gsm_lchan2chan_nr(): separate RSL specific variant of this API * osmo-bts-trx: bts_model_l1sap_down(): remove chan_nr patching * trx_sched_set_lchan(): use LOGL_INFO for logging messages * osmo-bts-trx: remove an 'else' branch in _sched_dl_burst() * osmo-bts-trx: implement Temporary Overpower for SACCH/FACCH * scheduler: fix comments explaining the interleaving of TCH/H * fix handle_ms_meas_report(): properly count measurement reports * abis: fix memory leak in abis_oml_sendmsg() * rsl: remove redundant logging in rsl_rx_chan_activ() * .gitignore: add tests/amr/amr_test * rsl: prevent race condition during timeslot re-configuration * rsl_tx_rf_res(): separate interference AVG / band calculation * rsl_tx_rf_res(): also report noise levels for PDTCH * osmo-bts-trx: report PDCH interference levels to L1SAP * l1sap: check if BTS model supports interference reporting * vty: show interference level / band in 'show lchan' * trx_sched_clean_ts(): also free() the associated 'struct l1sched_ts' * trx_sched_clean(): also free() the shadow timeslot * osmo-bts-trx: refactor 'maxdly' / 'maxdlynb' commands * rsl: rsl_tx_meas_res() does not change l3, make it const * rsl: send NACK if BTS_FEAT_ACCH_REP is not supported * measurement: handle_ms_meas_report() accepts const gh * measurement: move repeated_dl_facch_active_decision() here * measurement: make sure that DL measurements are valid * cosmetic: s/repeated_acch_capability/rep_acch_cap/g * struct gsm_lchan: group ACCH repetition state fields * struct gsm_lchan: move tch.rep_facch to rep_acch.dl_facch * measurement: fix wrong operator used in handle_ms_meas_report() * osmo-bts-trx: fix potential NULL pointer dereference * lchan_set_state(): also free pending messages if any * lchan: introduce and use lchan_is_tch() helper * [overpower] rsl: store full content of RSL_IE_OSMO_TEMP_OVP_ACCH_CAP * [overpower] lchan_dump_full_vty(): print overpower state * [overpower] scheduler: handle {sacch,facch}_enabled flags * l1sap: fix handling of lchan->pending_rel_ind_msg * l1sap: move false PTCCH/U detection into PDCH branch * l1sap: use designated initializers in process_l1sap_meas_data() * l1sap: process_l1sap_meas_data() accepts pointer to lchan * l1sap: make 'l1sap' argument of process_l1sap_meas_data() const * rsl: fix a memory leak in handle_gprs_susp_req() * l1sap: rework handling of DATA.ind on SACCH * lchan_meas_handle_sacch(): check if Measurement Result is valid * measurement: get rid of *le in lchan_meas_handle_sacch() * measurement: pass *mr to repeated_dl_facch_active_decision() * measurement: pass *mr to lchan_bs_pwr_ctrl() * [overpower] Turn it on and off depending on DL RxQual * measurement: make use of gsm48_meas_res_is_valid() * common/Makefile.am: reformat {AM_CPPFLAGS,AM_CFLAGS,LDADD} * rsl: exclude disabled timeslots from interference reports * oml: use ARRAY_SIZE() in oml_rx_set_bts_attr() * gsm_lchan_interf_meas_calc_avg(): fix band calculation [ Pau Espin Pedrol ] * l1sap: Transmit pdtch invalid MAC blocks to PCU * bts-trx: Always submit rx PDTCH DATA.ind to l1sap * bts-trx: Avoid submitting first data_ind with FN=0 to upper layers * bts-trx: Drop duplicate set of last_clk_ind * bts-trx: reorder first timerfd schedule to decrease first timeout skew * sysmo,oc2g,lc15: Make RadioChannel MO depend on RadioCarrier MO * bts: Clean up TS selection in sign_link_up * Fix regression in 'bts: Clean up TS selection in sign_link_up' * Add missing value_string for NM_EV_* introduced recently * pcuif: Set missing bsic field during Tx of info_ind * Use new stat item/ctr getter APIs * rsl: Use switch statement in rsl_rx_bcch_info() * pcu_sock: Transmit SI2 * doc: rsl.adoc: Fix trailing whitespace * gsm_data: Drop unused function gsm_pchan_parse() * pcuif_proto.h: Add new container messages * Support forwarding proto IPAC_PROTO_EXT_PCU BSC<->PCU * Rename osmo dyn ts enums to contain SDCCH8 * Support SDCCH8 in osmo dyn ts * Make gcc 11.1.0 false positivies happy * rsl: Fix rx of multiple RSL_IPAC_EIE_MEAS_AVG_CFG IEs * rsl: Support parsing up to 3 RSL_IPAC_EIE_MEAS_AVG_CFG IEs * MS Power Control Loop: Take C/I into account * MS Power Control Loop: Support EWMA algorithm for C/I measurements * MS Power Control Loop: Improve logging * BS Power Control Loop: refactor lchan_bs_pwr_ctrl() to look similar to lchan_ms_pwr_ctrl() * BS Power Control Loop: Support EWMA average algo for RxQual meas * BS Power Control Loop: Increase attenuation if RxQual is better than upper threshold * MS/BS Power Control Loop: Do RxLEV meas avg & delta calculations directly on RxLevels * MS/BS Power Control Loop: Fix downscaling averaging bug * Power Control Loop: Move skip loop logic to function helper * comsetic: measurement.c: fix typo in comment * l1sap: Take L1SACCH MS_PWR from bitfield instead of manual parsing * TA loop: Take into account UL SACCH 'Actual Timing advance' field * ta_control: Allow switching TA quicker * lchan: Move TA CTRL param to its own substruct * MS Power Control Loop: Feed UL RSSI from correct measurement period * MS Power Control Loop: Feed UL C/I from correct measurement period * TA Control Loop: Change toa256 switch threshold to 75% of a symbol * Power Control Loop: Set P_CON_INTERVAL to 1 by default * Support configuring TA loop SACCH block rate * MS Power Control Loop: Fix sub vs full being passed to algo * abis: Clear code and drop code not executed * abis.h: Drop unused state * cosmetic: fix typo in comment * abis.c: Rearrange code to follow logic state order * abis.c: Convert early return to assert() * power_control: Drop unused param in function * tests: MS Power Control Loop: Show oscillation among good power levels * cosmetic: Fix formatting of conditional operator * abis: Move FSM registration to constructor function * abis: Shorten string names of events * abis.c: Transition to CONNECTED state only when OML link is up * abis.c: Fix mess with priv->bsc_oml_host * abis.c: Loop over list of BSCs until connection succeeds * trx_provision_fsm: Add missing state transition OPEN_WAIT_POWEROFF_CNF => OPEN_POWEROFF * nm_*_fsm: Add missing item in event mask list for state ENABLED * Allow setting administrative state through oml_mo_state_chg() * nm_*_fsm: Set adminsitrative state 'shutting down' when shutdown procedure starts * MS Power Control Loop: Fix oscillations within good MS Power Levels * nm_*_fsm: Move to state Disabled NotInstalled Locked when shtudown proc ends * abis: Drop internal OML msg queue * nm_*fsm: Make FSMs aware of object being properly configured or not * bts_shutdown_fsm: Fix event name * trx_if: Set pointer to null after freeing it * trx_if: Allow calling trx_if_flush/close from within TRXC callback * trx_if: delete retrans timer when flushing the Tx queue * trx_provision_fsm: Properly reset FSM state upon starting listening for events * bts-trx: Submit TRX_PROV_EV_CFG_ARFCN for C0 during SetBtsAttr * bts-trx: Get rid of check_transceiver_availability_trx() * MS Power Control Loop: Disable threshold comparison on {LOWER,UPPER}_CMP_N=0 * l1sap: Support rx of empty rlcmac blocks from PCU * bts-trx: Avoid race condition configuring TS-specific TSC values * bts-trx: Submit TRX SW_ACT when PHY becomes connected * trx_sched_clean_ts: Clean VAMOS shadow TS too * phy_link: Introduce bts_model_phy_link_close() and use it in bts-trx * nm_bts_fsm: Make sure PHYs are opened when SW_ACTivating it * bts_shutdown_fsm: Allow configuring FSM to shutdown without exiting process * abis: Call bts_model_abis_close() when Abis link goes down * bts_trx: Drop non-executed path in trx_link_estab() * Avoid sending Load Indications when BTS is not RSL-connected * abis: Fix memory leak of bts->osmo_link upon link going down * abis: Fix line leaked & recreated upon every reconnect * bts-trx: Keep the process ongoing trying to reconnect on Abis link down * Revert "bts-trx: Keep the process ongoing trying to reconnect on Abis link down" * Revert "abis: Fix line leaked & recreated upon every reconnect" * osmo-bts-omldummy: Fix crash accessing null phy * bts-trx: Fix rxgain & maxdly VTY values being reset * Decouple handling of Measurement Report from lapdm * Move TA & Power Loops further up the stack, take DTXu flag into account * scheduler: Fix lqual_cb not populated for TCH.ind * abis: Fix line leaked & recreated upon every reconnect * trx_provision_fsm: Fix TRX!=0 never going back to CLOSED state * trx_provision_fsm: Support OPEN_POWEROFF->CLOSED transition * bts-trx: Delay power ramp up until RCARRIER is ENABLED * Delay abis reconnect while bts is shutting down * bts-trx: Keep the process ongoing trying to reconnect on Abis link down * trx_provision_fsm: Drop unneeded reset of fields * trx_provision_fsm: Drop impossible paths * trx_provision_fsm: poweronoff_sent flag: track POWERON and POWEROFF separately * trx_provision_fsm: Fix shutdown while POWERON in transit * rsl: NACK Chan Activation for lchans on disabled TS * Introduce gsm_lchan_init() function helper * MS Power Control Loop: Use P_CON_INTERVAL=2 by default * load_indication.c: Avoid sending if CCCH is still not operational * Move lchan,power_ctrl specific code from gsm_data.h to their own files * Move lchan,power_control related code from gsm_data.c to their own files * lchan.h: Add related ticket info to FIXME comment * Introduce gsm_lchan_release function helper * nm_channel_fsm: Release lchans after BTS shutdown * nm_bts_fsm: Reset si_valid bitmask when BTS is shut down * nm_*_fsm: Move reset state code to st_op_disabled_notinstalled_on_enter * nm_*_fsm: reset mo.nm_attr from previous runs when entering state NOT_INSTALLED * Add new gsm_bts_trx_free_shadow_ts() function * Make sure lchan allocated memory from shadow_ts is properly freed * rsl: Fix all shadow TS being Chan Act NACKed * bts-trx: Guard call to trx_sched_clean with NULL trx ptr * lchan: Setup early_rr_ia timer only once during init * Move lchan related code to lchan.{c,h} * lchan: Update log line level to use macro and level INFO * lchan: Avoid applying transition changes if state new==old * Move lchan_deactivate() to lchan.c * Move lchan_init_lapdm inside lchan_set_state(LCHAN_S_ACTIVE) * lchan: Call lapdm_channel_exit() when state changes to NONE * bts_shutdown_fsm: Make sure pending power ramping are aborted before closing TRX * gsm_pchan2chan_nr(): Properly assert if unexpected pchan is passed * Reset CBCH state after BTS shutdown * bts-trx: sched_lchan_pdtch: Refactor tx_pdtch_fn to get rid of goto tag * bts-trx: sched: tx_pdtch_fn: Handle PCU idle blocks properly * Revert "bts-trx: sched: tx_pdtch_fn: Handle PCU idle blocks properly" * scheduler: Fix check against empty PDCH blocks * bts-trx: sched: tx_pdtch_fn: Drop log line clogging logs * l1sap: Avoid re-(de)activating already (de)active lchans * scheduler: Avoid crash upon call to trx_sched_set_lchan if l1ts is uninitialized * bts-trx: sched_lchan_tchf: Drop impossible code path * scheduler: Fix FACCH msg with l2len==0 going to lower layers and logging errors * bts-trx: sched_lchan_tchf: Change log level to debug for line informing about missing dl prim * abis: Drop unneded if condition in else clause * abis: Try one reconnect to previously connected BSC before trying next one * gsm_ts_release(): Make sure pchan{,is_want} is reset to NONE [ Neels Hofmeyr ] * osmobts-abis.adoc: add missing bibliography * Abis manual: s/TS 12.21/TS 52.021 * Abis manual: add Get Attributes, add BTS features * Abis manual: add VAMOS to BTS features * Abis manual: add RSL_IE_OSMO_TRAINING_SEQUENCE * omldummy: introduce using getopt_long * omldummy: add cmdline arg --features * [VAMOS] osmo-bts-omldummy: allocate shadow timeslots * remove unused LCHAN_S_INACTIVE * enable Early Immediate Assignment * add VTY transcript testing * jenkins: enable new flag --enable-external-tests * add osmo_tdef groups, exposing T timers on VTY config * early IMM ASS: add configurable delay for RR IMM ASS * early IA: change default X15 timer to 0 ms * gsm_lchan_interf_meas_calc_avg(): adapt to the order of boundaries [ Harald Welte ] * Introduce ability to set socket priority of RTP sockets * manual: Include QoS chapter and add osmo-bts specific example * manual: Remove manual revision history; we don't use it anywawy * manuals: Update copyright years * l1sap/gsmtap: Don't log UI fill frames [zero information field] * rsl: fix handling of REL IND in lapdm_rll_tx_cb() * initial support for static userspace probes via systemtap [ Keith ] * sysmobts-mgr: Fix path to hwmon in /sys [ Eric Wild ] * osmo-bts-trx: indicate A5/4 support, handle Kc128 [ Oliver Smith ] * debian/control: remove dh-systemd build-depend [ Eric ] * lc15, oc2g, sysmo: fix show dsp-trace-flags * osmo-trx: fix maxdly [ Martin Hauke ] * osmo-bts-trx-calypso.cfg: Adjust settings to work with current osmo-bts versions -- Pau Espin Pedrol Tue, 16 Nov 2021 16:40:05 +0100 osmo-bts (1.3.0) unstable; urgency=medium [ Michael McTernan ] * measurement: use signed integer for division of ta256b_sum [ Vadim Yanitskiy ] * common/vty.c: get rid of generic exit / end commands * common/abis.c: make use of RSL TEI from OML IPA RSL Connect * L1SAP: use LOGL_DEBUG for logging from rach_pass_filter() * osmo-bts-sysmo/Makefile.am: fix: do not overwrite bin_PROGRAMS * vty: fix left shift by 31 cannot be represented in type 'int' * common/sysinfo: reduce criticality of a logging message * osmo-bts-virtual: fix wrong endianness in gsmtap_hdr_stringify() * osmo-bts-virtual: do not print redundant info in tx_to_virt_um() * osmo-bts-virtual: do not log GSMTAP message sending failure twice * l1sap: fix gsmtap_ph_rach(): properly pack 8-bit and 11-bit RA * osmo-bts-{sysmo,oc2g,lc15}: fix segfault on 'dsp-trace-flag' * osmo-bts-trx/scheduler: remove a left-over from UL TCH handlers * oml: fix oml_mo_tx_sw_act_rep(): do not allocate FOM header twice * fix typo in osmo_bts_variant_names: s/omso/osmo/g * doc/manuals: fix typo in interfaces.adoc: s/Omsocom/Osmocom/g * osmo-bts-omldummy: print a brief usage statement if argc < 3 * osmo-bts-omldummy: make number of transceivers configurable * vty: get rid of unused ournode_{exit,end}_cmd declarations * vty: cosmetic: make an error message more informative * vty: use gsm48_chan_mode_name() from libosmocore * gsm_data_shared: drop unused supports_egprs_11bit_rach * gsm_data_shared: drop unused enum bts_gprs_mode * gsm_data_shared: drop unused channel request reason definitions * gsm_data_shared: get rid of unused HARDCODED_{ARFCN,BSIC} * gsm_data_shared: get rid of unused HARDCODED_BTS{0,1,2}_TS * gsm_data_shared: get rid of unused enum gsm_hooks * gsm_data_shared: drop declaration of non-existing gsm_parse_reg() * gsm_data_shared: drop unused A38_XOR_{MIN,MAX,COMP128}_KEY_LEN * gsm_data_shared: drop unused MAX_EARFCN_LIST * gsm_data_shared: drop unused LCHAN_SAPI_{UNUSED,MS,NET,REL} * gsm_data_shared: drop unused struct bts_codec_conf * gsm_data_shared: drop meaningless comments * gsm_data_shared: drop unused sacch_deact from struct gsm_lchan * gsm_data_shared: drop forward declaration of struct vty * gsm_data_shared: drop unused *nmh from struct gsm_bts * gsm_data_shared: drop unused dtxu from struct gsm_bts * gsm_data_shared: drop unused ctrl_ack_type_use_block & net_ctrl_ord * gsm_data_shared: drop unused rach_b_thresh & rach_ldavg_slots * gsm_data_shared: drop force_combined_si & bcch_change_mark * scheduler: drop non-existing extern declarations * vty: fix bts_dump_vty(): properly print OML stream ID (TEI) * rsl: refactor handling of RSL_IE_MR_CONFIG * osmo-bts-trx: prettify Makefile.am: make it git friendly * osmo-bts-trx: fix: use noinst_HEADERS instead of EXTRA_DIST * osmo-bts-virtual: cosmetic: use LID_{SACCH,DEDIC} macros * doc/examples: remove virtual/openbsc-virtual.cfg * common/scheduler: fix unreachable code in trx_sched_set_lchan() * common/scheduler: use boolean for channel activation state * osmo-bts-trx/trx_if: fix memleak in trx_ctrl_cmd_cb() * osmo-bts-trx/trx_if: cosmetic: s/ocommand/command/ * oml: fix TL16V length calculation in add_bts_feat() * osmo-bts-trx: indicate BTS_FEAT_EGPRS support to BSC * gsm_data_shared: use bitvec API to allocate the feature vector * Do not mix public and private BTS features, use libosmocore's API * osmo-bts-trx/scheduler: properly handle NOPE.ind during handover * osmo-bts-trx: use osmo_store32be() in trx_if_send_burst() * osmo-bts-trx: move logical channel handlers to separate files * osmo-bts-trx: introduce and use struct trx_dl_burst_req * osmo-bts-trx: store pointer to gsm_lchan in l1sched_chan_state * osmo-bts-trx: include BS Power reduction in Downlink bursts * A-bis/RSL: refactor handling of BS Power IE (power reduction) * A-bis/OML: fix logging: do not print A-bis MO name twice * Use libosmocore's TDMA frame number API (constatns & arithmetic) * osmo-bts-trx: fix trx_sched_fn(): properly advance frame number * osmo-bts-trx/scheduler: make mark trx_sched_fn() return void * vty: fix missing separator in help for power ramp commands * osmo-bts-trx/scheduler: get rid of _sched_fcch_burst * A-bis/OML: handle hopping params in Set Channel Attributes * osmo-bts-trx/scheduler: cosmetic: move trx_if_powered() check * osmo-bts-trx/scheduler: get rid of unused 'meas' in l1sched_chan_state * l1sap: do not print redundant info in l1sap_chan_act() * Constify the 'trx' argument of trx_get_hlayer1() everywhere * common: constify the argument of trx_ms_pwr_ctrl_is_osmo() * pcu_sock: constify the argument of ts_should_be_pdch() * osmo-bts-trx/scheduler: fix CLCK.ind handling during ramping down * osmo-bts-trx/scheduler: refactor dummy burst scheduling * oml: fix ARFCN range check in oml_rx_set_radio_attr() * oml: fix ARFCN range check in oml_rx_set_bts_attr() * pcu_sock: use a 'switch' statement in ts_should_be_pdch() * pcu_sock: warn about maximum transceiver number constraints * pcu_sock: separate trx / ts filling from pcu_tx_info_ind() * pcu_sock: use LOGPTRX() in info_ind_fill_trx() * osmo-bts-trx/scheduler: implement baseband frequency hopping * osmo-bts-trx: indicate support of BTS_FEAT_HOPPING * l1sap: radio_link_timeout(): clarify logging messages * l1sap: radio_link_timeout(): use LOGPLCHAN() macro * l1sap: radio_link_timeout(): bad_frame is a boolean * rsl: constify the 'lchan' argument of rsl_tx_conn_fail() * debian/control: change maintainer to the Osmocom team / mailing list * osmo-bts-omldummy: enable BTS_FEAT_{CBCH,HOPPING} support * vty: clarify documentation of '[no] gsmtap-sapi' command * vty: add 'gsmtap-sapi (enable-all|disable-all)' command * osmo-bts-trx/trx_provision_fsm: fix misleading comment in header * osmo-bts-trx/trx_provision_fsm: cosmetic: switch is not a function * osmo-bts-trx/l1_if: drop redundant logging message * osmo-bts-trx: fix trx_init(): do not send OPSTART ACK blindly * osmo-bts-trx/trx_provision_fsm: add missing default labels * osmo-bts-trx: also print 'txtune-ack' in st_open_poweroff() * struct gsm_bts_trx: remove unused per-TRX OML Link pointer * struct gsm_bts_trx[_ts]: remove unused parsed NM attribute list * gsm_data: rename hopping.{ma,ma_len} to hopping.arfcn_{list,num} * pcuif_proto: version 10: add frequency hopping parameters * osmo-bts-trx/scheduler: refactor UL burst measurement processing * vty: fix bts_dump_vty_features(): properly check BTS model flags * bts: cosmetic: make param 'net' of gsm_bts_num() const * vty: cosmetic: use osmo_talloc_replace_string() * tx_power: make trx/lchan struct pointers const where possible * vty: make most struct pointers const in show/write commands * osmo-bts-omldummy: fix: do not crash on OML connection drop/failure * osmo-bts-omldummy: suppress 'Unimplemented bts_model_trx_deact_rf' * vty: fix 'show bts' command: print proper BTS variant * vty: fix 'show bts' command: BTS number is optional * pcu_sock: cosmetic: use ARRAY_SIZE() in pcu_tx_info_ind() * pcu_sock: cosmetic: make *nsvc a scoped and const variable * pcu_sock: use llist_for_each_entry() in pcu_sock_close() * pcu_sock: fix pcu_sock_close(): deactivate dynamic timeslots too * oml: fix handling of NSVC local port in oml_ipa_mo_set_attr_nsvc() * pcu_sock: fix {local,remote}_port byte ordering in pcu_tx_info_ind() * pcu_sock: support handling multiple BTS instances in pcu_rx() * gsm_data: check in and use enum lchan_rel_act_kind * tests/power_test: also match stderr, not only stdout * tests/power_test: move bts/trx/ts/lchan init to init_test() * tests/power_test: do not assert in apply_power_test() * power_control: clarify argument names of lchan_ms_pwr_ctrl() * power_control: implement EWMA based Uplink power filtering * fix pcu_if_signal_cb(): do not send INFO.ind if PCU is not connected * scheduler: ensure PRIM_OP_REQUEST when adding to the queue * scheduler: _sched_dequeue_prim(): make 'l1sap' a scoped pointer * scheduler: use RSL_CHAN_NR_MASK in trx_sched_set_lchan() * measurement: remove redundant 'break' statements in modulus_by_lchan() * measurement: use LOGPLCHAN() macro in lchan_meas_check_compute() * power_test: fix incorrect line termination in init_test() * power_control: do nothing if 'rx-current' equals 'rx-target' * power_control: tolerate small deviations from 'rx-target' * scheduler: use RSL_CHAN_NR_MASK in trx_sched_set_cipher() * scheduler: drop meaningless check in trx_sched_set_lchan() * scheduler: drop redundant check in trx_sched_set_cipher() * scheduler: get rid of useless TRX_CHAN_FLAG_PDCH * scheduler: reduce nesting in trx_sched_set_lchan() * scheduler: treat subsequent lchan (de)activation as error * scheduler: join conditions in trx_sched_set_lchan() * scheduler: remove pending Tx prims on lchan deactivation * power_control: fix default EWMA smoothing coefficient (80% -> 50%) * main: do not print deprecated '-r' / '--realtime' in help * main: increase spacing between commands and description * main: separate model-specific arguments in help * main: add --vty-ref-mode, use vty_dump_xml_ref_mode() * osmo-bts-trx/scheduler: fix comments related to FACCH/H and BFI * main: register VTY commands before handle_options() * main: move general options from bts_vty_init() * vty: fix double '%' in description of some commands * vty: fix missing / wrong documentation for some commands * vty: call bts_model_vty_init() from bts_vty_init() * fixup: vty: call bts_model_vty_init() from bts_vty_init() * main: do not print asciiart to stdout, use stderr instead * osmo-bts-lc15: use consistent name for containing directory * doc/manuals: generate XML VTY reference at build-time * doc/manuals: also generate VTY reference for osmo-bts-virtual * doc/manuals: move osmobts-vty-reference.xml to vty/ * osmo-bts-trx/scheduler: ensure no DL power attenuation on C0 * struct gsm_bts: move ul_power_{target,hysteresis} to ul_power_ctrl * bts: rename MS_UL_PF_ALGO_{NONE,EWMA} to BTS_PF_ALGO_{NONE,EWMA} * bts: generalize a struct for UL/DL power control parameters * bts: add Downlink power control parameters * l1sap: make sure that UL SACCH is always 23 octets long * tests/power: rename s/power_test/ms_power_loop_test/ * power_control: generalize power control state structure * power_control: lchan_ul_pf_ewma(): do not use lchan->meas.res_nr * power_control: lchan_ms_pwr_ctrl(): use existing 'trx' pointer * power_control: generalize and rename lchan_ul_pf_ewma() * power_control: lchan_ms_pwr_ctrl(): make use of params/state pointers * power_control: remove a logging statement and early return * power_control: do not log averaged RSSI values as 'rx-current' * power_control: derive calc_delta() from lchan_ms_pwr_ctrl() * power_control: implement BS (Downlink) Power Control * power_control: cosmetic: fix weird spacing * power_control: clarify units in 'struct bts_power_ctrl_params' * power_control: clarify units in 'struct lchan_power_ctrl_state' * rsl: properly initialize MS/BS Power Control state * power_control: make raise/lower step limitation configurable * vty: resurrect per-lchan BS/MS Power Control information * vty: fix dump_lchan_trx_ts(): dump dedicated channels only * rsl: remove redundant boolean flag in rsl_rx_chan_activ() * power_control: check-in new parameters and default values * power_control: add VTY introspection commands for MS/BS params * l1sap: fix: enable UL SACCH repetition if RxQual threshold is 0 * sysinfo: fix less-than-zero comparison of an unsigned value * osmo-bts-trx: vty: clarify and improve some deprecation messages * power_control: vty: re-use cfg_bts_ul_power_target() * power_control: vty: deprecate 'uplink-power-control' commands * power_control: handle MS/BS Power control params on A-bis/RSL * vty: add a command to show GPRS related info * power_control: migrate MS/BS control loops to the new params * power_control: generalize measurement pre-processing state * power_control: properly track the first initial state * power_control: use more reasonable reduce step size * power_control: rework handling of DL RxQual measurements * power_control: BS power shall not be reduced on C0 * paging: refactor and optimize fill_paging_type_1() * power_control: print current RxLev and lower/upper thresholds * power_control: fix: properly print 'delta' applied to attenuation * vty: fix error messages in lchan specific commands * vty: add macro for 'bts <0-0> trx <0-0> ts <0-7> lchan <0-1>' * vty: extend trx / lchan number range in BTS_T_T_L_CMD * vty: make commands related to the loopback mode hidden * vty: add expert commands for MS/BS power control * power_control: add test for inc / red step size limitations * l1sap: fix gsmtap_ph_{data,pdch,rach}(): use 'const' * l1sap: include Uplink RSSI in GSMTAP packets * power_control: clarify the meaning of 'delta' in logging messages * pcu_sock: pcu_tx_si_all(): make 'si_types' const * pcu_sock: pcu_tx_si_all(): cosmetic coding style change * pcu_sock: pcu_tx_si_all(): fix returning ununitialized rc * osmo-bts-trx/scheduler: use DMEAS in trx_sched_meas_avg() * oml: cosmetic code style changes in rx_oml_ipa_rsl_connect() * vty: register libosmocore's FSM introspection commands * oml: avoid redundant ntohl() / htonl() conversion * oml: make 'struct tlv_parsed' pointer const where possible * oml: use regular TLVP_PRES() in rx_oml_ipa_rsl_connect() * power_control: cosmetic: fix swapped {L,U}_RXQUAL_XX_P comments * power_control: implement handling of P_Con_INTERVAL parameter * oml: reuse the given msgb in oml_fom_ack_nack() * oml: ensure that IPA RSL Connect ACK/NACK contains all IEs * main: cosmetic: tweak deprecation warning messages * GSMTAP: move 'gsmtap_sapi_names' from l1sap.c to vty.c * GSMTAP: fix wrong naming of per-BTS SAPI commands * GSMTAP: move 'struct gsmtap_inst' and masks to 'struct gsm_bts' * ta_control: cosmetic: use correct naming for MIN/MAX constraints * ta_control: make 'struct bts_ul_meas' parameters const * ta_control: fix Timing Advance control for SDCCH channels [ Harald Welte ] * rsl.c: Fix compiler error on gcc-9.2.1 * virtual: Fix VTY commands to specify GSMTAP multicast groups * l1sap: Use msgb_pull_l2() and unify l1sap_tch_ind + l1sap_ph_data_ind * osmo-bts-virtual: implement GSMTAP_CHANNEL_VOICE * osmo-bts-virtual: Add "virtual-um ttl <0-255>" VTY option * osmo-bts-virtual: Fix "virtual-um net-device NETDEV" * cosmetic: remove dead code from logging.c * fix compilation with gcc-10 * osmo-bts-virtual: Avoid rejecting AMR in uplink * virtual/scheduler: log unknown GSMTAP chan * Ensure we include lchan name in all LAPDm log lines * osmo-bts.spec.in: Use %config(noreplace) to retain current config file * bts: Add VTY command to manually override Radio Link Timeout * sysinfo: Only send SI13 if PCU is connected * sysinfo: Don't broadcast SI4 GPRS INDICATOR if PCU is disconnected * use osmo_fd_setup() everywhere * remove dead oml_router code * sysinfo.c: Fix SI4 GPRS patching which overwrote CBCH IE * fix-up missed review comment in CBCH SI4 patching fix * major README uppdate * Use osmo_fd_*_{disable,enable} * add support for sysmoBTS 1003 aka "1002 with GPS and PoE" [ Philipp Maier ] * ta_control: move timing advance code from osmo-bts-trx to common * measurment: write irssi_full_sum variable correctly * l1sap: merge MEAS IND into PRIM PH DATA / PRIM TCH * Do not depend on pcu_direct flag when populating ph_data_ind * osmo-bts-sysmo: merge measurement data and payload * osmo-bts-trx: do not set rx-gain to 1 by default * scheduler: always call Uplink burst handler on NOPE.ind * logging: use only LOGL_NOTICE as defualt loglevel * dtx: add detection of AMR DTX frames for osmo-bts-trx * measurement: remove unecessary is_amr_sid_update parameter * measurement: make measurements more debugable * measurement: expect at least 1 SUB frame for AMR * osmo-bts-trx/scheduler: fix measurement handling for SUB frames * vty: add attributes to VTY commands indicating when they apply * sched_lchan_tchh: initialize meas_avg with zeros * main: add commandline option --vty-ref-xml * cosmetic: add missing semicolon after OSMO_ASSERT() * sched_lchan_tchf: count measurements for FACCH/F only once * measurement: count all blocks as SUB for TCH/F in signalling mode * measurement: fix expected number of measurements * measurement.c: fix integer overflow problem * rsl.adoc: add info about RSL_IE_OSMO_REP_ACCH_CAP * l1sap: pre-initalize pointer with NULL to avoid gcc warning * l1sap: add repeated downlink FACCH * rsl.adoc: update documentation for RSL_IE_OSMO_REP_ACCH_CAP * l1sap: also include SRR bit in RSL l1 info field. * l1sap: add repeated downlink SACCH * l1sap: add repeated uplink SACCH * l1sap: acch_repetition fix hysthereis threshold table * l1sap: use rxlev_full when no DTX was used * pcu_sock: send SI1, SI3 and SI13 via PCUIF * pcu_sock: fix uninitalized returncode value * l1sap: fix repeated_dl_facch_active_decision() * l1sap.c: be sure that FACCH repetition is turned off * l1sap: be sure that UL-SACCH repetition is turned off * l1sap: fix comment: sapi number is missing * vty: dont put a colon after vty_out in cfg_out macro * gsm_data: handle l1_info with structs [ Pau Espin Pedrol ] * l1_if: Fix strange formatting of Meas info logging * l1sap: Change loglevel of Rx TCH.ind INFO->DEBUG * bts-trx: trx_if.c: Fix some printf formats * cosmetic: Fix some typos with codespell * lc15: Fix returning values on void function * lc15: Fix mismatching signature in callback provided * oc2g: Fix returning values on void function * oc2g: Fix mismatching signature in callback provided * Use OSMO_FD_* instead of deprecated BSC_FD_* * l1_utils.h: Avoid redefinition of global vars defined in l1_utils.c * vty: Fix misleading define name * tests/tx_power: Speed up test * doc: Update vty reference xml file * bts-trx: vty: Add 'nominal-tx-power' cmd * bts-trx: phy_link: Improve logging fmt in phy_link_state_set() * oml.c: Fix whitespace in log line * oml.c: Log ADM STATE change locked/unlocked * scheduler.c: Fix trailing whitespace * pcu_sock: Change log about tx PCH confirm INFO->DEBUG * bts-trx: Implement power ramping during BTS bring up * bts-trx: Rename setpower TRXC functions to describe they use power attenuation * bts-trx: Introduce helper func l1if_trx_set_nominal_power * bts-trx: Use TRXC cmd NOMTXPOWER to retrieve nominal tx power from osmo-trx * bts-trx: Re-apply tx power if nominal power is received after POWERON * scheduler: Fix reading out of buffer during tx of dummy burst on PDCH TS with EGPRS enabled * abis.c: Grab reference to e1inp_line_get if already created * doc: Fix typos in bts-models.adoc * scheduler: Improve logging about prim being out of range * scheduler: Early return in _sched_dequeue_prim() and clarify FN cases * scheduler: _sched_dequeue_prim(): Refactor goto paths * scheduler: _sched_dequeue_prim(): Refactor found_msg goto path * cosmetic: common/Makefile.am: split each source file in one line * cosmetic: include/osmo-bts/Makefile.am: split each header file in one line * Merge gsm_data_shared.h into gsm_data.h * scheduler: Add rate_ctr informing about too low rts-advance * scheduler: Add rate_ctr informing about Dl block not found * handover_tests: Avoid redefining all bts_model stubs * meas_tests: Avoid redefining all bts_model stubs * tests/stubs.c: Add missing stub for bts_model_change_power * cosmetic: {oc2g,lc15}bts_bty.c: Fix trailing whitespace * Fix missing bts_model implementations in stubs.c and bts_model.c * Introduce LOGPTRX macro and use it in tx_power.c * power_ramp: Add support to get callback when ramping process completes * bts-trx: Instruct user to set manually nominal-tx-power if NOMTXPOWER not supported * tx_power: Log bypass param in power_ramp_start * phy_link.h: Drop unimplemented function definition * bts.c: Fix typo in log line and improve it * abis.c: Use LOGPIL when logging signalling link down * Introduce bts_shutdown FSM * Implement tx power ramp down during BTS shutdown * bts-trx: Split part of bts_model_trx_close() steps into bts_model_deact_rf * bts_shutdown: First deact RF on all TRX, finally close them * bts_model: Convert bts_model_trx_close() to return asynchronously * bts_shutdown: Wait until all TRX are closed * bts-virtual: Implement bts_model_trx_close * bts-trx: Mark 'osmotrx power' VTY cmd as deprecated * Fix shutdown in osmo-bts-{omldummy,virtual} * bts-omldummy: Implement bts_model_trx_close * bts-omldummy: Speed up shutdown (instantaneous ramp) * tx_power: Support controlling BTS with nominal tx pwr < 0dBm * bts-trx: Introduce rate counter for scheduler timerfd missed FNs * bts_shutdown: Speed up shutdown if no TRX is operational * pcu_sock: Avoid presenting TS from disabled TRX as available to PCU * bts-trx: Implement ramp up/down during ADM state change * gsm_data.h: Use enum type for NM state fields * Move nm_state and Mo related code gsm_data.* => oml.* * Move gsm_bts code gsm-data.* => bts.* * bts-virt: Don't rely on gsmtap_makemsg() returning NULL for GSMTAP_CHANNEL_UNKNOWN * Move struct gsm_bts_trx: gsm_data.* & bts.* => bts_trx.* * bts-trx: Don't set OPSTATE enabled during trx_init * common: Avoid changing OPSTATE to Enabled upon RSL up * bts-trx: Remove unused function l1if_provision_transceiver() * bts-trx: introduce TRX provisioning FSM * tx_power_test: Disable using color in log output * bts-trx: Use bool type for on/off state variables * bts-trx: Integrate TRX provisioning logic more tightly into the FSM * bts-trx: Delay TRXC POWERON cmd until all TRXs are provisioned * rsl: Fix wrong param passed to gsm_pchan_name() in log line * bts-trx: Fix osmocom dyn ts assert hit during Adm State Unlock * bts-trx: prov_fsm: Fix mess with 1 event having 2 names * bts_shutdown_fsm: Fix switching too quickly to state WAIT_TRX_CLOSED * common: Avoid call to bts_model_chg_adm_state() if there's no ADM state change * bts-trx: Fix handling ADM state change while previous one WIP * vty: Allow setting power-ramp max-initial to negative values * bts-trx: Fix assert hit when rf_locked in .cfg and TS TCH/F_PDCH * tx_power: Take into account max-initial when ramping up bigger power lvl intervals * doc: configuration.adoc: Document ramping down feature * common: Support setting rt prio through new libosmovty sched VTY cmds * tests: tx_power: Extend and add extra power_ramp buggy case * common: tx_power: Fix bug in power ramp up below max-initial value * Update dependency on libosmocore 1.4.0 * configure.ac: Fix trailing whitespace * pcu_sock: Fix typo in log message * bts-trx: Use TRXC RFMUTE instead of resetting the scheduler * bts-trx: Ensure RFMUTE state is set properly at startup * scheduler: Drop unused function trx_sched_reset() * Fix RadioCarrier OML Operative State Change report not sent on some scenarios * Improve logging around failing to (de)activate chan_nr * Improve error handling and logging in gsm_pchan2chan_nr() * Improve logging and error handling receiving act_req for dyn TS not yet configured * pcu_sock: Only announce dyn TS already configured by lower layers * Avoid sending RSL RF REL ACK if PDCH chan is disabled by administrative lock * oml: Set RadioChannel operational state to Enabled only during OPSTART * gsm_data.h: Drop unused struct field * contrib/jenkins: Enable parallel make in make distcheck * Drop unused param in oml_init() * Change NM Channel availability Dependency->Offline when RadioCarrier becomes enabled * Introduce NM BTS Site Manager FSM * Introduce NM BTS FSM * Introduce NM Radio Carrier and Baseband Transceiver FSMs * Introduce NM Channel FSM * bts_trx.c: Dispatch missing NM_EV_RSL_UP/DOWN to the bb_transc object * oml: Set NM_OPSTATE_DISABLED by default * common: Enable SIGABRT signal handler * common: generate coredump and exit upon SIGABRT received * sysmobts-mgr: generate coredump and exit upon SIGABRT received * oc2g-mgr: generate coredump and exit upon SIGABRT received * lc15-mgr: generate coredump and exit upon SIGABRT received * nm_channel_fsm: Fix several FSM internal transitions not being made * cosmetic: sysmobts-mgr: fix whitespace indentation * tests: Explicitly drop category from log * tests: Replace deprecated API log_set_print_filename [ Oliver Smith ] * rsl: make IP DSCP configurable * VTY: add "test send-failure-event-report" * contrib: import RPM spec * contrib: integrate RPM spec * Makefile.am: EXTRA_DIST: debian, contrib/*.spec.in * contrib/jenkins: don't build osmo-gsm-manuals * configure.ac: set -std=gnu11 * common/measurement.c: fix gcc 4 + -std=gnu11 error [ Harld Welte ] * trx: Fix reported BER for TCH/H * trx: Use NOPE indications from OsmoTRX for TCH/F and TCH/H * trx: Use NOPE indications on SDCCH [ Eric ] * configure.ac: fix libtool issue with clang and sanitizer [ Rafael Diniz ] * osmo-bts-litecell15: Implement missing features. [ Alexander Couzens ] * measurement: replace u_int64_t with uint64_t * pcuif_proto: version 0xa: add support for IPv6 NSVCs * pcuif_proto: fix typo in comment * Revert "pcuif_proto: version 0xa: add support for IPv6 NSVCs" * pcuif_proto: version 10: add support for IPv6 NSVCs * Introduce the new OML NM_ATT_OSMO_NS_LINK_CFG to configure IPv6 NSVC for PCU * common/bts: set feature IPV6_NSVC * OML: correct parse the NM_ATT_OSMO_NS_LINK_CFG field address_family [ Daniel Willmann ] * osmo-bts-trx: Use much lower clock advance values towards PCU and TRX [ Neels Hofmeyr ] * rename to release_sapi_ul_rach(), simplify * part 1 of: fix SAPIs for handover to match 48.058 4.1.{3,4} * part 2 of: fix SAPIs for handover, osmo-bts-sysmo * part 3 of: fix SAPIs for handover, osmo-bts-trx * part 4 of: fix SAPIs for handover, osmo-bts-lc15 * part 5 of: fix SAPIs for handover, osmo-bts-oc2g * log: rsl_rx_chan_activ: show chan type as human readable string * chan activ: activate DL SACCH only when TA is known * GSMTAP: make remote host for Um logging configurable via VTY -- Pau Espin Pedrol Tue, 23 Feb 2021 16:35:17 +0100 osmo-bts (1.2.0) unstable; urgency=medium [ Oliver Smith ] * Cosmetic: virtual: l1sap.c: fix typos * virtual: set link quality for GSMTAP_CHANNEL_RACH * pcu_sock: fix endian-swapped CellID * gitignore: add oc2g generated files * log: set L1 SAPI log context * vty: add "logging filter l1-sapi" * vty.c: don't ignore get_string_value() errors * vty.c: avoid coverity BAD_SHIFT issues * osmo-bts-virtual.cfg: ms-power-control dsp -> osmo [ Harald Welte ] * ETWS Primary Notification via P1 Rest Octets * pcu_interface: Forward ETWS Primary Notification to PCU * doc: Update Abis manual RSL section with ETWS related infomration * osmo-bts-trx/scheduler: prevent uninitialized memory access * osmo-bts-trx: migrate to new generic ECU abstraction * rach_pass_filter(): Add information about channel type [ Vadim Yanitskiy ] * common/rsl.c: fix possible NULL-pointer dereference * osmo-bts-trx/scheduler: fix tx_tch_common(): do not send AMR BFI twice * osmo-bts-trx/scheduler: add FIXME note about FACCH/H and BFI * osmo-bts-trx/scheduler: fix: check rc of osmo_ecu_frame_out() * scheduler: fix handling of PTCCH/U and PTCCH/D logical channels * osmo-bts-trx/scheduler: also detect TSC for Access Bursts on PDCH * common/l1sap: increase ToA precision for packet Access Bursts * L1SAP: use RSL_CHAN_* definitions from libosmogsm * L1SAP: also consider RSL_CHAN_OSMO_CBCH8 as CBCH * L1SAP: clarify debug messages in rach_pass_filter() * L1SAP: do not pass unused parameter to l1sap_handover_rach() * L1SAP: refactor handling of Access Bursts on PDCH * L1SAP: properly handle 11-bit encoded RACH.ind in gsmtap_ph_rach() * L1SAP: use the actual ARFCN for outgoing PCUIF messages * L1SAP: fix gsmtap_pdch(): there can be no DATA.ind on PTCCH/U * L1SAP: use GSMTAP_CHANNEL_PDTCH for PDTCH blocks by default * L1SAP: there can be no DATA.ind primitives on PTCCH/U, reject them * README.md: update osmo-bts-trx specific limitations * osmo-bts-trx/scheduler: fix: print the last frame number in rx_data_fn() * osmo-bts-trx: general handling of NOPE / IDLE indications * osmo-bts-trx/trx_if.c: fix: always initialize bi->burst_len for NOPE.ind * osmo-bts-trx/trx_if.c: also print both RSSI and ToA256 for NOPE.ind * osmo-bts-trx/trx_if.c: fix: NOPE.ind also contains C/I field * pcuif_proto.h: extend RACH.ind with TRX and timeslot number fields * common/vty.c: fix: properly assert() the result of get_string_value() * common/abis.c: pass gsm_bts_trx to e1inp_sign_link_create() * common/abis.c: use tall_bts_ctx as talloc-context for libosmo_abis_init() * osmo-bts-trx/vty: ensure backwards compatibility with older config files [ Pau Espin Pedrol ] * bts-trx: Log case where no SETFORMAT is sent * bts-trx: Change super verbose IDLE ind not-supported line to DEBUG * doc: bts-models.adoc: Fix typos in rts-advance section * bts-trx: vty: Use API to get poweron state * bts.h: Remove non-existent function definitions * scheduler.c: Move some message log level to DEBUG * scheduler: Use OSMO_ASSERT instead of abort * l1sap: Log conn dropped due to radio link counter timeout * struct gsm_bts: Add model_priv pointer handing bts_model specific data * bts-trx: Allocate struct osmo_trx_clock_state as part of bts-trx private data * bts-trx: vty: Print phy link state in cmd 'show transceiver' * bts-trx: trx_set_bts(): Avoid double loop by checking current trx * bts-trx: Rework code handling poweron state * bts-trx: Don't reset transceiver_available in scheduler_trx.c * bts-trx: Get rid of messy transceiver_available state handler * bts-trx: Drop unused func check_transceiver_availability() * bts-trx: Log TRXC and TRXD socket recv()/send() failures * bts-trx: Time out if no clock ind recvd after RSP POWERON * cosmetic: bts-trx: document variable power level * bts-trx: loops.c: Take into account RSL CHAN ACT ms power level limits * loops.h: Fix missing include for struct l1sched_trx * power_control.c: Take into account RSL CHAN ACT ms power level limits * cosmetic: l1sap.c: Fix typo * rsl: Assign recv pwr to lchan's max ms power * bts-trx: Implement MS Power control loop calculations using dBm instead of ctl levels * rsl: Fix logged value in rx MS Power Control * cosmetic: Fix trailing whitespace * Change gsm_bts_trx field to bool and rename it * Change gsm_lchan field fixed to bool * rsl: Remove unneeded duplicate reset on some lchan fields * Move and rename gsm_lchan.ms_power field * bts-trx: loops.c: Avoid always clamping MS power to MS power class 1 * power_control.c: Apply latests improvements from loops.c * power_control.c: Log rx current and target signal levels * power_control.c: Fix ms pwr ctrl skipped if MS doesn't support announced MS Power Level * Introduce BTS feature BTS_FEAT_MS_PWR_CTRL_DSP * power_control.c: Don't use announced MS Power level as input for loop calculations * power_control.c: Limit speed of announced MS Power Level value changes * scheduler_trx.c: cast ptrdiff value to fix printf format * bts-trx: Drop low layer MS Power Control Loop algo * rsl_rx_chan_act: Apply bitmask when parsing IE MS_POWER * rsl: Clarify when autnonoums MS Power Ctrl Loop is used * power_control.c: Log maximum allowed MS Power Level * power_control.c: Clarify loop algo vars and use correct ones during log * l1sap: is_fille_frame(): verify len of data compared [ Martin Hauke ] * Fix common misspellings and typos * Rename variable: CALIB_SUCESS -> CALIB_SUCCESS [ Philipp Maier ] * scheduler_trx: use gsm0502_fn_remap() to calculate frame number * scheduler_trx: initalize n_errors, n_bursts_bits, n_bits_total * scheduler_trx.c: avoid division by zero when calculating BER * rsl: ensure measurement reports are sent * l1sap.c: ensure ms power control loop is running -- Pau Espin Pedrol Fri, 03 Jan 2020 17:18:44 +0100 osmo-bts (1.1.0) unstable; urgency=medium [ Daniel Willmann ] * Rename oc2g config file to match new naming scheme * dump_docs: Use new config file naming scheme * systemd: Install OC2G service files with autotools * doc/examples: Install OC2G config files with autotools * osmo-bts-oc2g: Fix status LED responsibilities * osmo-bts-lc15: Change LED behaviour to be the same as oc2g * manuals: Add script to regenerate counter/vty documentation * manuals: Add counter documentation * manuals: Update vty documentation [ Harald Welte ] * Bump version: 0.8.1.199-5c93-dirty → 1.0.0 * scheduler_trx: Fix erroneous multiply-by-four * OML: some more comments on what functions do * OML: Return attributes in ACK/NACK messages * OML: Ensure MOs are initialized with valid "Administrative State' * OML: Don't overwrite MO instance before oml_tx_failure_event_rep() * OML: remove double-logging on oml_tx_failure_event_rep() * OML: send proper OML alerts in case of errors * OML: Reduce code duplication in down_mom/down_fom * OML: Report short messages even for invalid TRX numbers in down_fom() * OML: Use 'const struct abis_oml_mo *' whenever users only read * OML: Reject segmented OML messages * OML: Properly reject short messages and truncate over-long messages * OML: Work around OsmoBSC sending "GET ATTRIBUTES" with short length * OML: Store merged attributes of IPA OML Managed Objects * OML: Don't advertise baseband transceiver as UNLOCKED at startup * OC-2G: Nominal transmit power is 25 dBm, not 40 * rsl.c: Add missing #include of gsm0808.h * Forward GPRS SUSPEND REQ from DCCH to PCU socket * handle NULL return from rate_ctr_group_alloc() * rsl: Send RSL Error Report in case of unknown/unsupported msg_type * rsl: Include Channel Nr and Link ID in Error reports whenever possible * RSL: Reject RLL messages for lchans that are not active yet * RSL: Fix off-by-one error when parsing SACCH INFO IE in RSL CHAN ACT * cbch: Implement handling of "Schedule" message * cbch: Refactor get_smscb_block() / remove smscb_msg.next_seg * cbch: Log every RSL SMSCB COMMAND with type and number of blocks * cbch: Implement support for DEFAULT message * cbch: Fix memory leak and send error message on invalid SMSCB command * cbch: Support Extended CBCH * cbch: Keep SMSCB queue length counter * manual: We now support RSL CBCH LOAD INDICATION * manual: SMSCB BROADCAST COMMAND has no limitations anymore * README.md: Mention LimeSDR as SDR device * sysmo: Fix "nominal power" / BS power display in VTY * cbch: Add counters; queue length limits and CBCH LOAD reporting * cbch: Improve verbosity and extend logging; Always indicate BASIC/EXTD CBCH * Use LOGPLCHAN whenever possible * rsl.adoc: DELETE INDICATION is implemented since Feb '18 * RSL: Fix logic about fixed/dynamic MS power control in MS POWER COMMAND * rsl: Implement parsing of BS Power Control message * rsl: MS POWER COCNTROL isn't (only) about "forcing" power levels * load_indication: Fix missing re-set of RACH parameters * l1sap: Correctly count RACH slots in calc_exprd_rach_frames() * l1sap: Fix calculation of expired RACH slots in case of missing frame numbers * oml: Print more context from FOM Header or using MO * oml: Have one generic log message for all transmitted messages * Add severity to OML FAILURE EVENT REPORT * Fix passing of RR SUSPEND REQ from DCCH to PCU socket * clear GPRS indicator in SI3 while PCU is disconnected * trx: Update documentation for fn-advance and rts-advance * l1sap: Compute statistics on FN advance in PH-RTS.ind * [correctly] use the LAPDm T200 values received via OML * Update T200 timer default values * lapdm: Use new libosmocore API to ensure per-channel-type N200 values * sysmo/l1_if.c: Annotate fall-through in switch statement * osmo-bts-trx: Don't increment rssi_valid_count twice * osmo-bts-trx: Don't attemtp to adjust MS power if fixed * scheduler_trx: Handle negative return of gsm0503_tch_hr_decode() [ Vadim Yanitskiy ] * common/vty.c: fix 'cfg_phy_no_inst_cmd' command description * common/oml.c: fix: properly push abis_nm_ipa_magic * common/pcu_sock.c: fix possible memleaks in pcu_sock_read() * common/oml.c: constify argument 'trx' of handle_attrs_trx() * common/oml.c: use proper NACK reason in oml_tx_attr_resp() * common/oml.c: use proper OML object for Get Attribute Response * common/oml.c: fix total length calculation in cleanup_attr_msg() * common/l1sap.c: fix: add missing new line to a debug message * common/rsl.c: fix size argument in memcmp() call * common/rsl.c: fix unaligned pointers in rsl_add_rtp_stats() * common/paging.c: fix unaligned pointer access * common/oml.c: introduce and use both LOGPFOH and DEBUGPFOH * common/oml.c: use proper format specifier for uint16_t * common/oml.c: fix broken debug print in down_mom() * common/oml.c: refactor Get Attribute Response message generation * common/oml.c: fix: properly encode NM_ATT_SW_CONFIG * osmo-bts-trx: distinguish 11-bit Access Bursts by synch. sequence * osmo-bts-sysmo: fix: indicate BTS_FEAT_CBCH support on OML * README.md: remove OS#1865 from 'Known limitations' * common/rsl.c: fix NULL-pointer dereference in rsl_rx_rll() * osmo-bts-trx/trx_if.c: dropping Tx bursts is a noticeable event * osmo-bts-trx/l1_if.h: drop unused ho_rach_detect from trx_l1h * osmo-bts/scheduler.h: cosmetic: use bool for ho_rach_detect * common/rsl.c: RSL_IE_HANDO_REF is mandatory for handover CHAN ACT * common/bts.c: bts_supports_cm(): take care about GSM48_CMODE_SIGN * Use #define RSL_CHAN_RACH for RSL Channel Number of RACH * common/scheduler.c: refactor description of TRXC_* lchans * osmo-bts-trx/trx_if.c: use osmo_loadXXbe() for TDMA FN and ToA256 * osmo-bts-trx/trx_if.c: rename and clarify TRX_MAX_BURST_LEN * osmo-bts-trx/trx_if.c: introduce TRXD header version handling * osmo-bts-trx/trx_if.c: introduce TRXD header version 0x01 support * osmo-bts-trx/trx_if.c: drop RSSI / ToA debugging code * osmo-bts-trx/trx_if.c: properly describe TRXD messages in logs * osmo-bts-trx/trx_if.c: add TRXD header version negotiation * osmo-bts-trx/trx_if.c: encode actual TRXD header version * osmo-bts-trx/scheduler: pass trx_ul_burst_ind to lchan handlers * osmo-bts/scheduler: provide actual C/I values to OsmoPCU * osmo-bts-trx/scheduler: rx_rach_fn(): use optional TSC info from TRX * osmo-bts-trx/scheduler: rx_rach_fn(): clarify handover RACH handling * osmo-bts-trx/scheduler: rx_rach_fn(): enrich debug message * common/rsl.c: fix: properly handle SI3 Rest Octets * Clarify and refactor link quality (C/I) handling * Move Access Burst link quality handling to L1SAP * osmo-bts-trx/scheduler: rx_rach_fn(): provide actual C/I ratio to L1SAP * osmo-bts-trx/scheduler: rx_data_fn(): provide actual C/I ratio to L1SAP [ Max ] * osmo-bts-trx: add extended (11-bit) RACH support * Log lchan kind on PCU-related error * Enable statsd support * Make gsm_pchan2chan_nr() static * Constify pcu_rx_*() parameters [ Philipp Maier ] * scheduler_trx: use stored fn for pdtch data indications * oc2g: remove unused define constant FACTORY_ROM_PATH * lc15: remove unused define constant FACTORY_ROM_PATH * oml: make oml_tx_failure_event_rep() public * oc2gbts_mgr_vty: remove calls to vty_install_default() * oc2g: l1if: delay trx initialization to avoid race condition * oc2gbts_mgr: use msgb_talloc_ctx_init() instead of msgb_set_talloc_ctx() * oc2g: generate failure event report in case of bad calibration * oc2g: change log level for calibration file errors to FATAL * vty: add function gsmnet_from_vty() to vty.h * main: remove wrong call to oml_fail_rep() on SIGUSR1/2 and SIGABRT * oml: use oml_tx_failure_event_rep() instead of oml_fail_rep() * oml: use oml_tx_failure_event_rep() instead of signals to SS_FAIL * l1_if: add include for missing header file * oc2gbts_mgr_calib: don't use fsync() on *FILE pointer * oc2gbts_mgr_calib: do not return NULL on integer function * oc2gbts_mgr: use osmo_init_logging2() instead of osmo_init_logging() * pcu_sock: use %zu conversion specifier for printing sizeof() result [ Pau Espin Pedrol ] * oc2g: Fix compilation error (comment mark inside comment) * oc2g: Add get_hwversion_desc to header file * oc2g: Cleanup of get_hwversion_desc * oc2g: led_sleep_cb: pass correct ptr to llist_move_tail * oc2g: fsync requires fd instead of file stream * oc2g: Remove unused variables * oc2g: Remove unused static function * oc2g: vty: Compilation error fixes due to commented code * contrib: Remove deprecated screen script helpers * bts-trx: trx_if.c: Introduce logging macro LOGPPHI * gsm_data_shared.h: Remove unused loc_list from struct gsm_bts * bts: Bypass T200 DCCH values for CCCH * bts-trx: Introduce VTY command osmotrx trxd-max-version * trx: Use LOGPPHI instead of LOGP in some more messages * Remove undefined param passed to {logging,osmo_stats}_vty_add_cmds * configure.ac: Require libosmocore 1.2.0 [ Alexander Huemer ] * Remove 11-bit RACH support from 'Known Limitations' [ Oliver Smith ] * debian: create -doc subpackage with pdf manuals * Revert "debian: create -doc subpackage with pdf manuals" * debian: create -doc subpackage with pdf manuals * contrib/jenkins.sh: run "make maintainer-clean" [ Neels Hofmeyr ] * lc15,sysmo,oc2g: fix dsp-trace-flag command [ Eric Wild ] * revert changes to T200 * RSL: Fix fixed MS power control in RSL CHAN ACTIV [ Thorsten Alteholz ] * fix spelling stuff mentioned by lintian -- Pau Espin Pedrol Wed, 07 Aug 2019 15:59:02 +0200 osmo-bts (1.0.0) unstable; urgency=medium [ Stefan Sperling ] * let osmo-bts log a special notice if OML connection is closed early * log reception of PCU_IF_MSG_PAG_REQ messages from osmo-pcu * update sysinfo copies in all lchans upon SACCH FILL * preserve lchan-specific SI overrides on SACCH FILL * fix timespec subtraction in compute_elapsed_us() * fix conditions for sending fill frames during RTS IND * send TCH/F fill frames in DTX mode (WIP) * Revert "send TCH/F fill frames in DTX mode (WIP)" * prevent potential NULL dereference in virtbts's tx_tchh_fn * properly initialize si3 in test_is_ccch_for_agch_setup() * add missing check of osmo_wqueue_enqueue() return value [ Harald Welte ] * scheduler_trx: Add reminders to use libosmocore functions * cosmetic: it's n_r in check_for_first_ciphrd(), not n_s * Add min/max/std-dev measurement reporting for TOA256 * debian/rules: Don't overwrite .tarball-version * CBCH: Fix rejecting SMS-CB related RSL messages * [sysmo,lc15]: Consider CBCH channel combinations in chan_nr_by_sapi() * CBCH: Move processing via L1SAP * CBCH: Implement CBCH support for osmo-bts-{trx,virtual} * CBCH: Use llist_first_entry_or_null() instead of reinventing it * l1sap/scheduler: Consistently print chan_nr as hex number * CBCH: Fix CBCH via L1SAP for osmo-bts-{sysmo,octphy,litecell15} * get_lchan_by_chan_nr(): Fix resolution of CBCH * CBCH: Add FIXME comments on queue overflow/underflow handling * CBCH: sprinkle some OMSO_ASSERT() and guard against talloc failure * CBCH: Fix CBCH implementation for osmo-bts-trx * CBCH: Some more scheduler_mframe cleanup * ensure all config file examples are well-formed * lc15bts_mgr_vty: Ensure writing well-formed config files * paging_test: Fix AGCH/PCH split test for second half of 102 multiframe * Fix computing CCCH block number from frame number * sysmo, virtual: properly handle BS-AG-BLKS-RES as received from BSC * scheduler_trx.c: Switch to osmo_timerfd() of libosmocore >= 0.12.0 * initial checkin of manuals to public repo * Add link to Asciidoc source code of manual * spelling: message discriminator, not descriminator * osmobts-abis: Add Revision log regarding dynamic cannels * Documentation on AMR RTP in case of DTX * rtp-amr.adoc: TCH/AFS Uplink * rtp-amr.adoc: TCH/AFS Downlink: Inhibiting * rtp-amr: TCH/AHS Uplink: FACCH/H During DTX * rtp-amr.adoc: New TCH/AHS downlink chapters * rtp-amr.adoc: Fixes to Message Sequence Charts * update osmo-bts-virtual documentation, now that code is merged * vty-ref: Update URI of docbook 5.0 schema * osmo-bts-trx/loops.c: Add comments documenting TA + MS power control loop * osmo-bts-trx/loops.[ch]: Make functions "void" if they always return 0 * osmo-bts-trx/loops.c: Use lchan name based logging * osmo-bts-trx/loops.c: Make code control flow more readable [ Philipp Maier ] * rtp: make port range configurable, assign correct port numbers * octphy: add support for 16x oversampling mode * cosmetic: separate measurement testcase definitions * cosmetic: unify measurement sample handling in one function * measurement: make sure state is reset on chan act. * measurement: make sure measurement interval end is detected * measurement: fix measurement interval end detection * osmo_mcast_sock: make sure SO_REUSEADDR is applied * cosmetic: fix sourcecode formatting * cosmetic: remove wrong comment * measurement: add unit tests for is_meas_complete() * measurement: fix sub frame table for TCH/H, SS1 * measurement: add unit tests for ts45008_83_is_sub() * measurement: fix is_meas_overdue() and increase testcoverage * cosmetic: rename *_meas_rep_fn10* to *_meas_rep_fn10*_by_*s * cosmetic: test_is_meas_overdue() does not test is_meas_complete() * measurement: substitue missing measurements * measurement: add SUB measurements in test_lchan_meas_process_measurement * paging: add unit-test to check different bs_ag_blks_res settings * measurement: display fn_mod when measuremnet is added * cosmetic: fix typo in comment * measurement: remove missed interval end detection * measurement: fix unit-test test_lchan_meas_process_measurement [ Pau Espin Pedrol ] * bts.c: Log name of RR msg type instead of value * bts.c: Add missing include for gsm48_rr_msg_name * bts_agch_enqueue: Decrease queue len hard_limit from 1000 to 100 * compact AGCH queue: Drop too msg diff than IMM_ASS_REJ * Send DELETE_IND when dropping Imm Assign pending message * lc15: Use correct type for hLayer1 field * lc15: Fix incorrect cast of hLayer1 * pcu_sock: Log event pcu_sock created * l1_if.c: Move decl of vars used in conditional macro * sysmo: vty: Add missing include for lchan_deactivate * sysmo: Fix memcmp in RF-MUTE.req for superfemto < 3.6.0 * sysmo: l1if_mute_rf: Declare vars inside ifdef section * sysmo: l1_if.c: Avoid decl of unused vars and funcs with femtobts_v2.7 build * sysmo: calib_file.c: Avoid decl of unused vars and funcs with femtobts_v2.7 build * jenkins_*.sh: add --enable-werror to configure flags * doc: Move calypsoBTS example into trx subdir * build: Install example cfg files * debian: Package installed example doc files * Remove unneeded direct libortp dependency * debian: Make osmo-bts-* packages conflict with old osmo-bts package * debian: Create dbg package for osm-bts-virtual * rsl: Use value_string to print encryption algo name * l1sap: add_l1sap_header: Compact msgb_push ret assignment * sched: Log RX->RTP packet like we do in add_l1sap_header * scheduler: Log error on fn jump * trx: scheduler: Keep RTP clock up to date while in DTXu pause * Move systemd service to contrib/systemd * Install systemd services with autotools * Install sample cfg file to /etc/osmocom * doc/examples/Makefile: Install bts-mgr cfg files used by systemd services * lc15: vty: Add missing include for lchan_deactivate * lc15: fsync requires fd instead of file stream * lc15: rewrite and refactor code to print hwversion description * lc15: led_sleep_cb: pass correct ptr to llist_move_tail * abis: inp_s_cbfn: Improve logging signal related information * lchan_meas_check_compute: Log value during incorrect num of SUB measurementes detected * l1sap: Log name of chan_nr instead of hex value * rsl_rx_chan-activ: Improve logging information * gsm_pchan2chan_nr: Fix conversion of CCCH_LCHAN * Convert lchan CCCH_LCHAN to chan_nr BCCH and viceversa * {oc2g,sysmo}-mgr-calib: Fix build against gpsd >= 3.18 * bts: Allocate TRX for BTS dynamically, deprecate -t * bts-trx: trx_if: Use struct to store CTRL msg parsed responses * bts-trx: setup timer once at creation time * common: Implement OML for trx_set_available(1) * bts-trx: Allow re-try without exit if POWERON fails in osmo-trx * bts: Fix TRX0 param initialization * rsl: Log lchan state during dynts PDCH->TCH * rsl: Avoid sending ipa PDCH DEACT NACK followed by ACK * bts-trx: early return on POWERON success * cosmetic: fix whitespace * bts_model: Allow TS connect to be processed asynchronously * OsmoBTS/chapters/configuration.adoc: Add bts index in example * OsmoBTS: Update osmotrx ip to diff between local and remote * rtp-amr: Describe requirement to recieve all PH-DATA.ind events * rtp-amr: Fix typo and trailing whitespace * Allow easily disabling GFDL references * OsmoBTS: bts-models: Add Lime Microsystems devices as supported osmo-trx * Introduce chapter trx_if.adoc and add it to OsmoTRX and OsmoBTS * bts: Fix typo * oc2g: Fix headers missing during make distcheck * bts-trx: (n)ack PDCH DEACT only after TRX answered SETSLOT * sysmobts_mgr: Prepare code for gpsd < 2.96 support * sysmobts_mgr: Add support for gpsd < 2.96 * rsl: Send PDCH ACT NACK if TCH chan is still active [ Vadim Yanitskiy ] * Clarify frame loss counter for l1sched_chan_state * osmo-bts-trx/l1_if.c: cosmetic: fix typo in debug msg * common/rsl.c: tweak log message in lapdm_rll_tx_cb() * contrib/jenkins_*.sh: drop rudimentary '--with-osmo-pcu' * common/pcu_sock.c: cosmetic: explicitly address lchan * common/scheduler.c: track TDMA frame loss per logical channels * common/vty.c: fix deprecated osmo_str2lower() usage * Fix deprecated gsm_arfcn2band(), use gsm_arfcn2band_rc() [ Neels Hofmeyr ] * cosmetic: abis.c: typo "exixt" * fix ip.access dyn TS for osmo-bts-trx * fix RSL Chan Mode Modif for dyn TS * vty: mark 'rtp bind-ip' deprecated, not hidden * Importing history from osmo-gsm-manuals * OsmoBTS: typo x2 ('Objects Classes' -> 'Object Classes') * OsmoBTS: fix typos, streamline language style * OsmoBTS: s/content of this attribute/this attribute/ * OsmoBTS: explain IEs marked 'ignored' *and* 'Received' * abis/oml.doc: remove duplicate sentence part * OsmoBTS: typos * OsmoBTS: wording tweak * OsmoBTS: hardware support: remove dup, tweak wording * Document dynamic channels on Abis, both IPA and Osmocom style * OsmoBTS/abis/rsl: fix subtitle for ladder diagram of osmo dyn switchover * OsmoBTS/abis/dyn_ts_osmocom_style.msc: adjust PDCH Act ack * OsmoBTS/abis/rsl.adoc: fix missing section header * OsmoBTS/chapters/dynamic-timeslots.adoc: Remove obsolete links * osmobts-usermanual.adoc: fix link to abis.adoc chapter * OsmoBTS/chapters/configuration.adoc: fix index numbering * OsmoBTS/abis/rsl: cosmetic: 'IPA style' * OsmoBTS/abis/rsl: add missing info for Osmocom Dyn Channels * make clean: also remove generated image files * add 'make check' target * OsmoBTS/abis/rsl: combine separate dyn ts sections * fix 'make clean': shell glob, ignore failure * OsmoBTS/abis/rsl: split dyn TS ladder diagrams to fit on page * fix build: abis: re-add dependencies * dynamic timeslots: add BSC level config instructions * refactor Makefile build rules, don't use the FORCE [ Keith Whyte ] * log: add error log for RSL Chan Mode Modif * fix handling of odd pchans in bts_supports_cm() [ Omar Ramadan ] * Add OC-2G BTS sources [ Max ] * osmo-bts-trx: print TRX socket addresses in 'show transceiver' * Fix type mismatch * Drop unused function * Add OsmoBTS control interface description * Move RTP AMR doc to top level * Add DTX implementation details to RTP AMR * Sync DTX FSM with OsmoBTS code [ Holger Hans Peter Freyther ] * OsmoBTS: Fix the author name and mail address [ Jonathan Brielmaier ] * fix various typos across all manuals [ Daniel Willmann ] * Add section about configuring power-ramping * OsmoBTS: Print VTY command in fixed-width font * OsmoBTS: Fix typo [ Alexander Couzens ] * OsmoBTS: add vty reference documentation * OsmoBTS: generate osmobts-abis.pdf again [ Ivaylo Kostov ] * BSC,BTS: add diagrams of PCU-BTS-NITB-SGSN relationships [ Philipp ] * Describe how to run multiple instances of osmo-nitb and osmo-bts [ Oliver Smith ] * build manuals moved here from osmo-gsm-manuals.git * Fix DISTCHECK_CONFIGURE_FLAGS override * contrib/jenkins_*.sh: build and publish manuals * contrib: fix makedistcheck with disabled systemd -- Harald Welte Sun, 20 Jan 2019 21:13:37 +0100 osmo-bts (0.8.1) unstable; urgency=medium [ Neels Hofmeyr ] * cosmetic: dyn TS: clarify rsl_tx_rf_rel_ack() with a switch * dyn TS: fix TCH/F_TCH/H_PDCH: properly record release of PDCH TS * dyn TS: rx_rf_chan_rel: properly mark PDCH rel when no PCU, clarify * dyn TS: clear TCH state upon reconnecting as PDCH * cosmetic: dyn TS: clarify chan_nr composition * ignore RSL RF CHAN REL for inactive lchans * fix RSL Chan Activ Nack messages * ip.access dyn ts: properly NACK a PDCH ACT on a still active lchan * add/improve various logging around dyn ts * dyn TS: be less strict on chan_nr, to allow arbitrary pchan switches [ Stefan Sperling ] * send a State Changed Event Report when rf is locked/unlocked [ Harald Welte ] * rsl: log errors when parsing of encryption information fails * rsl: Make channel activation fail if encryption algorithm not supported * rsl: Properly NACK CHAN_ACKT / MODE_MODIFY * rsl: If CHAN ACT or MODE MODIF fails, send respective NACK * osmo-bts-trx: Enable A5/3 cipher support -- Pau Espin Pedrol Tue, 15 May 2018 14:08:47 +0200 osmo-bts (0.8.0) unstable; urgency=medium [ Neels Hofmeyr ] * vty: skip installing cmds now always installed by default * jenkins_common.sh: fix build_bts distcheck for more than one conf_flag * fix build: tests/sysmobts: add missing -I$(SYSMOBTS_INCDIR) * fix handover: handle_ph_ra_ind(): evaluate ra_ind before msgb_trim() * implement support for 3-digit MNC with leading zeros * configure: add --enable-werror * use osmo_init_logging2() with proper talloc ctx [ Pau Espin Pedrol ] * lc15: Fix cfg indentation * l1sap: Fix abort on big RTP packet received * bts-trx: trx_ctrl_cmd: Simplify var assignment logic * bts-trx: Avoid enqueueing consecutive duplicate messages to TRX * Fix malformed Resource Indication packet * debian/control: Remove uneeded dep libosmo-netif-dev * jenkins.sh: Disable building doxygen for deps * oml.c: Fix use of htons instead of ntohs * bts-trx: trx_if.c: Log timedout+retransmitted CMD * bts-trx: trx_if.c: trx_ctrl_read_cb: Move error handling to end of func * bts-trx: trx_if.c: Improve parsing of received RSP messages from TRX * bts-trx: Detect duplicated responses for retransmitted commands * gsm_pchan2chan_nr: move warning to pragma message and track issue * Remove unused variables * bts-trx: scheduler_trx.c: Fix missing header * l1sap.c: l1sap_tch_rts_ind: Remove unused variables * octphy: octpkt.c: Remove unused static functions * vty.c: Remove warning message * virtual: l1_if.c: Remove unneeded warning message * main.c: bts_main: fix typo in error message * l1sap: Validate incoming RTP payload, drop bw-efficient AMR * l1sap: Avoid assumption that l1sap is at head of msgb * contrib: jenkins_bts_model: Fix bashism expr * Include missing headers for osmo_init_logging2 * common/sysinfo.c: Fix no return on on-void function * gsm_data_shared.h: Remove unused enum gsm_paging_event * scheduler_trx: Fix signed integer overflow in clock calculations [ Harald Welte ] * trx: Better be safe than sorry before calling strlen * trx: Avoid NULL+1 dereference in trx_ctrl_read_cb() * trx: Don't call osmo_fr_check_sid with negative 'rc' * trx: Don't assume phy_instance_by_num() returns non-NULL * l1sap: fix wrong return value of is_fill_frame() * measurement.c: Fix various typos in comments * Comments on individual members of struct gsm_abis_mo * scheduler: Harmonize log line format; Always print TS name + decoded FN * scheduler_trx: L1P is for PH (data), L1M for MPH (control) * l1sap: Fix log subsystem: Use DRTP for RTP related bits, L1C for MPH * measurment.c: Introduce INFO category for DMEAS logging * osmo-bts-octphy: Remove bogus warning about BS_AG_BLKS_RES * rsl.c: Log RTP socket related errors as DRTP, not DRSL * Put useful information in RTCP SDES. * osmo-bts-trx: Fix reported frame number during PRIM_INFO_MEAS * DTX: avoid illegal character contained in DTX FSM allocation which causes BTS crash * gsm_lchan: remove unused member fields * Add 'show (bts|trx|ts|lchan)' commands * Print much more information during 'show lchan' * vty: don't print "Bound IP / Port" if it isn't bound [yet] * osmo-bts: Add talloc context introspection via VTY * sysmo: Fix compiler warnings in eeprom.c * sysmo+lc15: Add missign include for readv/writev * trx: make l1if_fill_meas_res() static * RSL: Properly reject RSL CHAN_NR IE for incompatible PCHAN * RSL: Ensure we don't accept DCHAN messages for CCHAN * osmo-bts-virtual: Shut down gracefully on socket creation failure * osmo-bts-virtual: Generate PRIM_INFO_MEAS (with bogus values) * Introduce + use LOG/DEBUGP with frame number prefixing/printing * osmo-bts-virtual: Make use of LOGL1S() macro for context * osmo-bts-virtual: Make sure PRIM_INFO_MEAS have non-zero frame number * scheduler.c: Factor out find_sched_mframe_idx() function * scheduler: add trx_sched_is_sacch_fn() function * Revert "measurement: fix measurement computation" * measurement.c: Hand Frame Number into measurement computation * l1sap: Pass is_sub from L1 primitive into the Uplink Measurement * osmo-bts-trx: Add missing frame number to l1if_process_meas_res() * scheduler.c: Print message when burst substitution happens * load_indication: Fix start of load indication timer * RSL: Implement DELETE INDICATION on AGCH overflow * RSL: Send ERROR REPORT on too short/truncated messages + wrong discriminator * BTS: add rate_ctr about CCCH (paging, agch, pch) * paging: Drop + Log paging requests for non-existant paging groups * paging.c: Fix encoding of optional Mobile ID RR PAGING TYPE 1 / 2 * rsl: Improve ERROR REPORTing * paging: Fix encoding of PAGING TYPE 3 Rest Octets * RSL IPA DLCX: Avoid null-pointer dereference * RSL: Fix encoding of ConnectionID in IPA_DLCX_ACK * RSL IPA DLCX: Avoid another null-pointer dereference * measurement.c: Fix sdcch4_meas_rep_fn102 / sdcch8_meas_rep_fn102 * counters: split rach:sent into rach:drop, rach:ho, rach:cs and rach:ps * octphy: Remove code duplication for BER / RSSI conversion * {sysmo,lc15}: Correctly report BER to L1SAP in INFO_MEAS_IND * {sysmo,lc15}: Fix RACH reporting in combined CBCH case * split scheduler_mframe.c from scheduler.c * measurement: Compute RX{LEV,QUAL}-SUB for SDCCH and non-AMR TCH * measurement.c: Don't silently copy "FULL" measurements to "SUB" * scheduler: Add missing \n at end of LOG statement * Move rach_busy counting above L1SAP * RACH decoding: Use BER threshold for RACH ghost detection * trx/scheduler: Use integer math for TOA (Timing of Arrival) * measurement.c: higher-precision TA/TOA math * L1SAP: Increase resolution of reported burst timing * measurement: Keep average of high-accurate ToA value in lchan * Add high-accuracy ToA value to Uplink Measurement Reports * pcu_sock: Discard messages that are too short * pcu_sock: Don't overflow the timeslot array * pcu_sock: Log an error message and discard PCU primitives for BTS != 0 * pcu_sock: LOG + drop DATA.req from PCU for non-PDCH timeslot * pcu_sock: LOG + drop PCU DATA.req for inactive lchan * sysinfo.c: SI1 is optional; Send SI2 at TC=0 if no SI1 exists * sysmobts: Compatibility with older firmware versions * cosmetic: Document some SI scheduling related function API * sysinfo: Fix scheduling of downlink SACCH information * gsm_data_shared: Remove unused definitions/members/functions * cosmetic: Move agch_queue to sub-structure of gsm_bts_role_bts * Get rid of 'struct gsm_bts_role_bts' * virtual: Correctly set+report BTS variant in OML attributes * Add 'osmo-bts-omldummy' to bring up only OML without RSL * fix inverted logic bug in omldummy patch * omldummy: Suppress RSL transmission errors * debian: Split osmo-bts-virtual from osmo-bts-trx * fox chan_nr_is_dchan() for RSL_CHAN_OSMO_PDCH * rsl_tx_dyn_pdch_ack: Add missing FRAME_NR information element * fix activation of osmocom-style dynamic PDCH as TCH/F or TCH/H [ Philipp Maier ] * octphy: override firmware version check * cosmetic: meas_test: fix section comment * cosmetic: tests/Makefile.am: remove excess whitespace * cosmetic: tests/power: remove unused var "ret" * cosmetic: tests/agch: remove unused var "static_ilv" * octphy: l1_oml: check returncode of trx_by_l1h() * meas_test: fix header file references * rsl: fix double-free in rsl_rx_mode_modif() * fix nullpointer deref in rsl_tx_mode_modif_nack() * rsl: do not allow MODE MODIFY request with unsupp. codec/rate * gsm_data_shared: extend bts feature list with speech codecs * octphy: ensure all BTS models set features * vty: display bts features in vty command show bts * bts: use feature list instead of speech codec table * octphy: replace #warning with #pragma message * ipac: fix log output * rsl: remove unused variable * l1_tch: remove dead code * cosmetic: remove dead code * cosmetic: remove unused variable * cosmetic: remove unused variable in osmo-bts-omldummy/main.c * octphy: integrate octasics latest header release * osmo-bts-trx: perform error concealment for FR frames [ Max ] * Remove leftover comments and checks * Log filenames on L1 errors * Add --enable-sanitize configure option * Use existing function to obtain TSC * Remove BSC-specific parts * Print FN delta on L1 errors * Move sysmobts-calib into osmo-bts-sysmo * Allow specifying sysmocom headers explicitly * fix build: tests/misc: missing libosmo-abis and -trau flags * Enable optional static builds * Remove unneeded LIBOSMOCORE_CFLAGS from tests * sysmobts: use proper includes for sbts2050 test * Move -I inside *INCDIR variable * sysmobts: remove weird default header location * sysmobts: move header check to appropriate place * CI: drop unused OsmoPCU dependency * Enable sanitize for CI tests * Add helper to get BCC from BSIC * osmo-bts-trx: init nbits to know value * osmo-bts-trx: ignore frame offset error on startup [ Vadim Yanitskiy ] * doc/examples: add CalypsoBTS configuration example * common/pcu_sock.c: fix double field assignment * scheduler_trx.c: remove ToA (Time of Arrival) hack * common/l1sap.c: increase the BTS_CTR_RACH_DROP in RACH BER check * common/l1sap.c: increment valid RACH counter after all checks * common/l1sap.c: clean up noise / ghost RACH filtering * common/l1sap.c: perform noise / ghost filtering for handover RACH * common/l1sap.c: limit the minimal ToA for RACH bursts * common/vty.c: remove unused variables * common/main.c: track talloc NULL contexts by default [ Alexander Huemer ] * cosmetic: Makefile.am whitespace * various Makefile.am: add missing CFLAGS * gitignore: add missing entries [ Stefan Sperling ] * Cosmetic fixes for power ramping code. * respond with NACK for non-hopping BTS with multiple ARFCN * cosmetic: fix typos in src/common/oml.c * return NACK codes instead of errno values from oml_tx_attr_resp() [ Alexander Couzens ] * pcuif_proto: correct indention of gsm_pcu_if_data * pcu_if: move definition PCU_SOCK_DEFAULT into pcuif_proto.h * pcuif_proto: add version 8 features [ Keith ] * osmo-bts-sysmo eeprom.c Restore ability to read/write EEPROM -- Pau Espin Pedrol Thu, 03 May 2018 17:02:19 +0200 osmo-bts (0.7.0) unstable; urgency=medium [ Max ] * Use value string check from osmo-ci * Support sending SI13 to PCU * Support removing SI13 from PCU * trx: avoid deactivating lchan on LCHAN_REL_ACT_REACT * Check readv() return value to prevent crash * OML: print actual type of report sent to BSC * Replace dead code * vty: print version and description for each phy * Remove build dependency on legacy OpenBSC * Fix multiple SI2q reception * jenkins: remove openbsc dependency * sysmo: use clock calibration source wrapper * sysmo: don't override clock source with defaults * Fix race condition in attribute reporting * Move power loop to generic tests * Make power test more verbose [ Neels Hofmeyr ] * vty: mgr: sysmobts, lc15: install default commands for ACT_NORM_NODE * osmo-bts-trx: vty: various fixes of 'write file' and doc * jenkins: use osmo-clean-workspace.sh before and after build [ Pau Espin Pedrol ] * l1sap: Improve log msg when frame diff >1 * vty: Print string for Administrative state [ Harald Welte ] * Fix Downlink AMR FSM name to avoid illegal space character * update dependencies to latest libosmo-* * configure.ac: Fix Mailing list address -- Harald Welte Sat, 28 Oct 2017 20:53:21 +0200 osmo-bts (0.6.0) unstable; urgency=medium [ Holger Hans Peter Freyther ] * Initial release. * misc: Ignore files generated by a debian packaging build * jenkins: Add the build script from jenkins here * jenkins: Add the build script from jenkins here * sysmobts: Add the barebox boot state reservation * sysmobts: Fix eeprom padding before gpg key * ci/spatch: Remove the "static" analysis handling * oct: Attempt to enable the Octphy for the osmo-bts-oct build * debian: Use the header files installed by openbsc-dev * build: Do not require more headers from OpenBSC * sysmobts: Make reservation for mode/netmask/ip and suc * sysmobts: Store a simple network config in the EEPROM as well [ Max ] * Ensure TRX invariant * Use libosmocore function for uplink measurements * Fix debug output * Fix RTP timestamps in case of DTX * Add DTXd support for sysmoBTS and LC15 * Use libosmocodec for AMR RTP * octphy: Use the app. info. defaults as base * Fix debug output * DTXd: store/repeat last SID * DTXd: store/repeat last SID * DTXu: mark beginning of speech burst in RTP * Fix OML activation * TRX: Add vty command to power on/off transceiver * TRX: add configuration example * Add .gitreview * DTX: add support for AMR/HR * Move copy-pasted code into common part * Use libosmocodec functions for AMR * Use error values instead of number for RSL error * Clarify logging message * Make get_lchan_by_chan_nr globally available * DTXu: move copy-pasted code to common part * Remove duplicated nibble shift code * TRX: add Uplink DTX support for FR/HR * Mark array as static const * sysmobts: dump PRACH and PTCCH parameters * Activate PTCCH UL * Fix dsp tracing at phy config * octphy: fix build * Fill measurements data for L1SAP * sysmo: ts_connect: log channel combination name instead of number * DTX: fix last SID saving * DTX: fix SID repeat scheduling * DTX: fix SID logic * lc15, sysmo: Use SID_FIRST_P1 to initiate DTX * DTX: check Marker bit to send ONSET to L1 * DTX: remove misleading comment * LC15: Clarify msgb ownership / fix memory leaks * DTX: move scheduling check inside repeat_last_sid * DTX: further AMR SID cache fixes (lc15, sysmo) * DTX: move ONSET detection into separate function * DTX: send AMR voice alongside with ONSET * DTX: fix conversion from fn to ms * Move copy-pasted array into shared header * DTX DL: use FSM for AMR * TRX: fix building with latest DTX changes * DTX: fix array size calculation * DTX AMR - fix buffer length check * Replace magic number with define * Fix lc15 build * Extend RTP RX callback parameters * DTX HR - fix array size calculation * Fix DTX DL AMR SIDscheduling logic * Add tools to check DTX operation * DTX DL: split ONSET state handling * Remove obsolete define * DTX DL: add AMR HR support to scheduling check * DTX fix ONSET handling * dtx_check.gawk: Fix false-positives in DTX check * Fix tests linking with libosmocodec * DTX DL: tighten check for enabled operation * DTX: wrap FSM signal dispatching * Add libosmocodec for octphy build * dtx_check.gawk: add check for repetitive SID FIRST * Remove duplicated code * Replace link_id constant with define * DTX DL AMR: rewrite FSM recursion * Remove duplicated code * Fix AGCH/PCH proportional allocation * TRX: prevent segfault upon phy init * DTX: add explicit check if DTX enabled * Save RTP metadata in Control Buffer * osmo-bts-trx: fix lchan deactivation * DTX: fix TS adjustment for ONSET * Optionally use adaptive RTP jitter buffering * Integrate Debian packaging changes * DTX AMR HR: fix inhibition * Add copyright for .deb packages * Move code to libosmocore * Log socket path on error * Add Abis OML failure event reporting * Alarm on various errors * Remove obsolete define TLVP_PRES_LEN * scheduler: log lchan on which prim error occured * deb: use gsm_data_shared.* from openbsc-dev * OML: internalize failure reporting * Add ctrl command to send OML alert * Fix typo in TCH/H interleaving table * Use oml-alert CTRL command for temp report * Remove code duplication * Handle ctrl cmd allocation failures * Check for suitable lchan type when detecting HO * osmo-bts-trx: fix scheduling of broken frames * Sync protocol with OsmoPCU * vty: reduce code duplication * Handle TXT indication from OsmoPCU * Add MS TO to RSL measurements * Signal to BSC when PCU disconnects * Prepare for extended SI2quater support * Set BTS variant while initializing BTS model * Prepare for BTS attribute reporting via OML * osmo-bts-trx: use libosmocoding * Remove redundant test * Implement basic Get Attribute responder * Add version to phy_instance * OML: fix Coverity-reported issues * Re-add version to phy_instance * Use systemd template specifiers * Place *-mgr config examples according to BTS model * lc15: add example systemd service file * Extend Get Attribute responder * Set and report BTS features * Cleanup SI scheduling * RSL: receive and send multiple SI2q messages * RSL: check for abnormal SI2q values * lc15bts-mgr: use extended config file example * Move parameter file opening into separate function * Move common steps into common jenkins helper * lc15: add jenkins helper * Use generic L1 headers helper * Copy sysmobts.service to osmo-bts-sysmo * OML: move BTS number check into separate function * lc15: make jenkins helper executable * lc15: fix jenkins build * Add missing include for abis.h header file * RSL: receive and send multiple SI2q messages * Use release helper from libosmocore * si2q: do not consider count update as error * Cleanup example config files * Fix .deb build * Unify *.service files * lc15: cleanup board parameters reading * lc15-mgr: update parameter read/write * lc15: fix BTS revision and hw options * lc15: make default config usable * lc15: port lc15bts-mgr changes * lc15bts-mgr: separate service file * lc15: port lc15bts-mgr dependency changes * Simplify jenkins build scripts * OML: use fom_hdr while handling attr. request * osmo-bts-trx: fix 'osmotrx legacy-setbsic' * osmo-bts-trx: remove global variables from loops [ Daniel Laszlo Sitzer ] * octphy: Update outdated config param name in error message. [ Jason DSouza ] * Close TRX session before opening new one [ Minh-Quang Nguyen ] * l1sap.h: fix wrong L1SAP_FN2PTCCHBLOCK calculation according to TS 45.002 Table 6 * common/abis.c: fix 100% CPU usage after disconnecting OML/RSL link (Bug #1703) * LC15: Bring back DSP trace argument * LC15: Hardware changes * LC15: TRX nominal TX power can be used from EEPROM or from BTS configuration * rsl: Fix dropping of LAPDm UA message. * LC15: properly handle BS-AG-BLKS-RES as received from BSC [ Neels Hofmeyr ] * sysmo: add L3 handle to l1prim messages * pcu_sock: add pcu_connected() to query PCU availability * tests/stubs.c: remove unused stubs * fix typo in error message ('at lEast') * oml, Set Chan Attr: treat unknown PCHAN types as error * dyn PDCH: rsl rx dchan: also log ip.access message names * doc: add ladder diagram on dynamic PDCH, add msc-README * add missing DSUM entry to bts_log_info_cat * fix compiler warning: printf format for sizeof() * fix compiler warning: add missing case (PHY_LINK_CONNECTING) * fix two compiler warnings: add two opaque struct declarations * dyn PDCH: add bts_model_ts_connect() and _disconnect() stubs * dyn PDCH: conf_lchans_for_pchan(): handle TCH/F_PDCH * dyn PDCH: pcu_tx_info_ind(): handle TCH/F_PDCH in PDCH mode * dyn PDCH: chan_nr_by_sapi(): handle TCH/F_PDCH according to ts->flags * dyn PDCH: implement main dyn PDCH logic in common/ * dyn PDCH: sysmo-bts/oml.c: add ts_connect_as(), absorbing ts_connect() guts * dyn PDCH: sysmo: handle TCH/F_PDCH init like TCH/F * dyn PDCH: complete for sysmo-bts: implement bts_model_ts_*() * error log: two minor clarifications * debug log: log lchan state transitions * debug log: log TS pchan type on connect * fix lc15 build: put src/common/libbts.a left of -losmogsm * lc15: add L3 handle to l1prim messages * dyn PDCH: lc15: chan_nr_by_sapi(): handle TCH/F_PDCH according to ts->flags * dyn PDCH: lc15: add ts_connect_as(), absorbing ts_connect() guts * dyn PDCH: lc15: handle TCH/F_PDCH init like TCH/F * dyn PDCH: lc15: complete for litecell15-bts: implement bts_model_ts_*() * dyn PDCH: safeguard: exit if nothing pending in dyn_pdch_ts_disconnected() * vty: install orphaned trx nominal power command * fix compiler warnings: include bts_model.h in phy_link.c * fix compiler warning: remove useless 'static' storage class for struct decl * fix compiler warning: remove unused variable 'i' in calib_verify() * log: osmo-bts-trx: change access burst logs to DEBUG level * log: osmo-bts-trx: change PDTCH block logs to DEBUG level * osmo-bts-trx: init OML only once by sending AVSTATE_OK with OPSTATE_ENABLED * doc: move dyn_pdch.msc to osmo-gsm-manuals.git * error log: rsl.c: typo x2 * info log: l1sap.c: add '0x' to hex output * fix compiler warning: msg_utils.c: fn_chk() constify arg * fix compiler warning: msg_utils.c: fn_chk() constify arg * info log: l1sap.c: add '0x' to hex output * error log: rsl.c: typo x2 * dyn PDCH: code dup: use conf_lchans_as_pchan() * prepare dyn TS: split/replace conf_lchans_for_pchan() * code dup: join [rsl_]lchan_lookup() from libbsc and osmo-bts * dyn TS: common TCH/F_TCH/H_PDCH implementation * sysmo/oml.c: rename ts_connect() to ts_opstart() * dyn TS: implement SysmoBTS specifics * lc15/oml.c: rename ts_connect() to ts_opstart() * dyn TS: implement litecell15 specifics * comment typo: common/l1sap.c * log typo: trx_sched_set_pchan() * dyn TS: sysmo,lc15: chan_nr_by_sapi(): add missing assertion * fix comment in common/l1sap.c, function name changed * dyn TS, dyn PDCH: common/l1sap.c: properly notice PDCH * dyn PDCH: trx l1_if.c: factor out trx_set_ts_as_pchan() from trx_set_ts() * dyn PDCH: complete for trx: implement bts_model_ts_[dis]connect() * dyn PDCH: trx l1_if.c: drop fixme, add comment * dyn TS: complete for TRX * dyn TS: measurement.c: replace fixme with comment * sysmo,lc15: ts_connect_as(): log error also for pchan_as == TCH/F_PDCH * sysmo: fix dyn TS: Revert "Activate PTCCH UL" [in sysmobts] * log: l1sap: add 0x to hex output of chan_nr, 5 times * dyn TS: measurement: use correct nr of subslots, rm code dup * dyn TS: sysmo,lc15: ph_data_req: fix PDCH mode detection * Fix ip.access style dyn PDCH, broken in 37af36e85eca546595081246aec010fa7f6fd0be * common/rsl: move decision whether to chan act ack/nack to common function * octphy: fix build: Revert "octphy: fix for multiple trx with more than 1 dsp" * octphy: fix build: Revert "octphy: add support for multiple trx ids" * octphy: fix build with OCTSDR-OPENBSC-02.07.00-B708: name changed * dyn TS: if PCU is not connected, allow operation as TCH * log: sysmo,lc15: tweak log about sapi_cmds queue * log causing rx event for lchan_lookup errors * heed VTY 'line vty'/'bind' command * sysmobts_mgr, lc15bts_mgr: fix tall context for telnet vty * build: be robust against install-sh files above the root dir * configure: check for pkg-config presence * jenkins.sh: use osmo-build-dep.sh, log test failures * msgb ctx: use new msgb_talloc_ctx_init() in various main()s * jenkins-oct.sh: fix build: typo in deps path * fix 'osmo-bts-* --version' segfault * osmo-bts-trx: remove obsolete include of netif/rtp.h * add jenkins_bts_trx.sh * add jenkins_oct_and_bts_trx.sh * jenkins: add jenkins_bts_model.sh * bursts test: test_pdtch: pre-init result mem * fix: dyn ts: uplink measurement report * fix missing ~ in bit logic for lchan->si.valid in rsl_rx_sacch_inf_mod() * SACCH: fix sending of SI with an enum value > 7 * SACCH SI: assert that SI enum vals fit in bit mask * all models: fix vty write: bts_model_config_write_phy * jenkins: add value_string termination check * Revert "Add version to phy_instance" * Revert "RSL: check for abnormal SI2q values" * Revert "RSL: receive and send multiple SI2q messages" [ Harald Welte ] * sysmobts: screnrc/systemd-service: Use osmo-bts-sysmo instead of sysmobts * Add .mailmap for mapping mail addresses in shortlog * vty: Ensure to not use negative (error) sapi value * sysmobts: Add correct nominal transmit power for sysmoBTS 1020 * sysmobts_eeprom.h: Fix/extend model number definitions * Revert "sysmobts: Add correct nominal transmit power for sysmoBTS 1020" * tx_power: Change PA calibration tables to use delta vales * Add new unit-test for transmit power computation code * sysmobts: fully support trx_power_params * README: Add general project information and convert to markdown * README: update some of the limitations * sysmobts: Don't start with 0dBm TRX output power before ramping * Remove unusued left-over gsm0503_conv.c * scheduler_trx.c: Avoid code duplication for BER10k computation * scheduler_trx: Avoid copy+pasting determining CMR from FN * rx_tchh_fn(): Avoid copy+pasting formula to determine odd-ness of fn * Consistently check for minimum attribute/TLV length in RSL and OML * l1sap.c: Add spec reference to link timeout implementation * osmo-bts-trx: Remove duplicate parsing of NM_ATT_CONN_FAIL_CRIT * vty: Remove command for manual channel activation/deactivation * l1_if: Add inline functions to check dsp/fgpa version at runtime * sysmobts: Re-order the bit-endianness of every HR codec parameter * OML Add osmocom-specific way to deactivate radio link timeout * measurement: Remove dead code * l1sap.c: Factor out function to limit message queue * osmo-bts-sysmo/l1_if.c: PH-DATA.ind belongs to L1P, not L1C * l1sap: if lchan is in loopback, don't accept incoming RTP * TRX: Use timerfd and CLOCK_MONOTONIC for GSM frame timer (Closes: #2325) * Add loopback support for PDTCH * TRX: trx_if: Improve code description / comments * trx_if: Improve error handling * TRX: Rename trx_if_data() -> trx_if_send_burst() * TRX: merge/simplify l1_if and trx_if code * TRX: don't free l1h in trx_phy_inst_close() * l1sap: Don't enqueue PTCCH blocks for loopback * TRX: permit transmission of all-zero loopback frames * jenkins helpers: some minimal documentation/comments + print errors * VIRT-PHY: Initial check-in of a new virtual BTS * VIRT-PHY: Fix handling of default values for vty configuration * VIRT-PHY: Use IPv4 multicast groups for private / local scope * VIRT-PHY: cause BTS to terminate in case of recv()/send() on udp socket returns 0 * Ensure we don't send dummy UI frames on BCCH for TC=5 * virt: Don't print NOTICE log message if ARFCN doesn't match * VIRT-PHY: Report virtual RACH bursts with plausible burst type * scheduler: Fix wrong log subsystem: L1C is L1 *control* not user data * VIRT-PHY: Print NOTICE log message from unimplemented stubs * TRX / VIRT-PHY: Make check for BCCH/CCCH more specific * L1SAP: Print chan_nr and link_id always as hex * VIRT-BTS: Support for GPRS * L1SAP: Use RSL_CHAN_OSMO_PDCH across L1SAP * GSMTAP: Don't log fill frames via GSMTAP * TRX: Remove bogus extern global variable declarations * l1sap/osmo-bts-sysmo: Improve logging * TRX: Remove global variables, move SETBSIC/SETTSC handling into phy_link * Fix build after recent gsm_bts_alloc() change * Treat SIGTERM just like SIGINT in our programs [ Tom Tsou ] * trx: Add EGPRS tables, sequences, and mappings * trx: Add EGPRS coding and decoding procedures * trx: Enable EGPRS handling through burst lengths * trx: Fix coverity BER calculation NULL dereference [ Vadim Yanitskiy ] * pcu_sock: use osmo_sock_unix_init() from libosmocore * osmo-bts-trx/l1_if.c: use channel combination III for TCH/H * scheduler_trx.c: strip unused variable [ Mike McTernan ] * osmo-bts-trx: Fix PCS1900 operation * osmo-bts-trx: log decoder bit errors as DEBUG, not NOTICE [ bhargava ] * Change interface in osmo-bts for 11 bit RACH * Update parameters in osmo-bts-sysmo for 11bit RACH * 11bit RACH support for osmo-bts-litecell15 * Initialize parameters in osmo-trx for 11bit RACH [ Philipp ] * octphy: Fixing missing payload type in ph. chan. activation * octphy: Fixing band selection for ARFCN 0 * octphy: reintroducing multi-trx support * octopy: fixing renamed constant * octphy: prevent mismatch between dsp-firmware and octphy headers * rsl: improving the log output * octphy: multi-trx support: fix AC_CHECK order * RSL: drop obsolete NULL check * RSL: add assertions to check args of public API * OML: fix possible segfault: add NULL check in oml_ipa_set_attr() * CTRL: make the CTRL-Interface IP address configurable * l1sap: Fix expired rach slot counting * l1sap: fix missing 'else's causing wrong rach frame expiry counts * octphy: set tx attenuation via VTY * octphy: Improve OML ADM state handling [ Yves Godin ] * DTX: fix 1st RTP packet drop [ Alexander Chemeris ] * l1sap: Fix use-after-free in loopback mode. * vty: Add commands to manually activate/deactivate a channel. * trx: Add "maxdlynb" VTY command to control max TA for Normal Bursts. * rsl: Output RTP stats before closing the socket. * osmo-bts-trx: Fix MS power control loop. * osmo-bts-trx: Remove an unused variable. Resolves a compiler warning. * osmo-bts-trx: Increase a maximum allowed MS power reduction step from 2dB to 4dB. * Fix static build of osmo-bts-trx and osmo-bts-virtual. [ Jean-Francois Dionne ] * DTX: don't always perform AMR HR specific check * DTX: fix SID-FIRST detection * lc15,sysmobts l1_if: fix memleak in handle_mph_time_ind() * sysmo,lc15: fix memory leak at each call placed * DTX: fix "unexpected burst" error * Fix AMR HR DTX FSM logic. * Fix SACCH channel release indication not sent to BSC after location update. * Fix RTP duration adjustment not done when speech resumes in DTX mode. [ Ruben Undheim ] * Fix some spelling errors [ Holger Freyther ] * Revert "deb: use gsm_data_shared.* from openbsc-dev" [ Philipp Maier ] * octphy VTY: fix vty write output for octphy's phy section * octphy: Fix VTY commands * l1sap: fix rach reason (ra) parsing * l1sap: fix PTCCH detection * octphy: fix usage of wrong define constant * octphy: add CBCH support * l1sap: improve log output * octphy: print log message for multi-trx support * octphy: display hint in case of wrongly configured transceiver number * octphy: add conditional compilation to support latest octasic header release * octphy: set tx/rx antenne IDs via VTY * bts: revert trx shutdown order * octphy: activate CBCH after all physical channels are activated * octphy: align frame number for new firmware versions * octphy: ensure that 11 bit rach flag is not set * measurement: fix measurement reporting period * measurement: make lchan_meas_check_compute() available to l1sap.c * measurement: Compute measurement results on measurement idication * measurement: exclude idle channels from uplink measurement * octphy: integrate channel measurement handling * octphy: remove old event control code * osmo-bts-sysmo: Include frame number in MEAS IND * measurement: fix measurement computation * octphy: fix segfault * Revert "measurement: exclude idle channels from uplink measurement" * sysmobts: normalize frame number in measurement indication * measurement: Improve log output * measurement: improve log output * octphy: improve log output * octphy: initalize l1msg and only when needed * octphy: initalize nmsg only when needed * octphy: remove log output * Revert "sysmobts: normalize frame number in measurement indication" * osmo-bts-trx: fix missing frame number in MEAS IND * osmo-bts-litecell15: Fix missing frame number in MEAS IND * Revert "osmo-bts-sysmo: Include frame number in MEAS IND" * octphy: complete value strings (octphy_cid_vals) * octphy: do not send empty frames to phy * osmo-bts-sysmo: Include frame number in MEAS IND * measurement: fix measurment report * octphy: remap frame number in MEAS_IND * octphy: implement support for dynamic timeslots [ Ivan Klyuchnikov ] * osmo-trx-bts: Fix incorrect setting of RXGAIN and POWER parameters on second channel (TRX1) of osmo-trx * osmo-trx-bts: Fix osmo-bts-trx crash on startup during reading phy instance parameters from config file * osmo-trx-bts: Fix incorrect bts shutdown procedure in case of abis connection closure * osmo-trx-bts: Fix incorrect bts shutdown procedure in case of clock loss from osmo-trx [ Ivan Kluchnikov ] * oml: Fix incorrect usage of const variable abis_nm_att_tlvdef_ipa [ Pau Espin Pedrol ] * phy_link: Fix typo in state being printed * trx: Allow BTS and TRX to be on different IPs * trx: Save osmotrx base-port vty properties * sysmo/tch.c: Clean up use of empty buffer * litecell15/tch.c: Clean up use of empty buffer * Use L1P instead of L1C for TCH logging and allocation * Fix annoying trailing whitespace * sysmo, litecell15: Make sure all TCH events are triggered * sysmo: Remove non longer valid -p option from help * Allow passing low link quality buffers to upper layers * l1sap.c: Avoid sending RTP frame with empty payload * l1sap.c: fn_ms_adj: Add err logging and always return GSM_RTP_DURATION * Move dump_gsmtime to libosmocore as osmo_dump_gsmtime * Use osmo_dump_gsmtime to log fn across different layers * lc15bts-mgr.cfg: Set default vswr to a value inside valid range * litecell15: Register in vty limits for paX_pwr * lc15: Tweak led colors used in service file * lc-15, sysmo: l1_if: print name on PH-DATA.ind unknwon sapi * lc15bts-mgr.service: Prepare dirs and sysctls for the process * osmo-bts-trx: Enable osmotrx tx-attenuation oml by default * osmo-bts-trx: Relax validation to allow TRX data bursts without padding [ Sebastian Stumpf ] * VIRT-PHY: Added example configurations for openbsc and osmobts. * VIRT-PHY: Fixed timeslot in gsmtap-msg on downlink which was always 0. * VIRT-PHY: Added test option for fast hyperframe repeat. -- Max Fri, 25 Aug 2017 15:16:56 +0200 osmo-bts (0.5.0) unstable; urgency=medium * Initial release. -- Holger Hans Peter Freyther Fri, 01 Apr 2016 16:13:40 +0200