aboutsummaryrefslogtreecommitdiffstats
path: root/src/common
AgeCommit message (Collapse)AuthorFilesLines
2015-09-22Get RSSI from received uplink data and send to PCUAndreas Eversberg1-0/+1
2015-09-22TRX: Implementation of MS power and timing advance loopsAndreas Eversberg1-0/+6
2015-09-22ABIS: Introduce bts_model_abis_close to indicate ABIS link failure.Andreas Eversberg2-1/+4
sysmocom-bts model shuts down on link loss, but other models may not want this, so shutdown is moved tor bts_model_abis_close of osmo-bts-sysmo.
2015-09-22TRX: Introduce osmobts-trx, a layer 1 implementation for OpenBTS tranceiversAndreas Eversberg1-0/+6
The code is quite complete, TCH and PDCH channels are not yet tested.
2015-09-22Change to new structure of multirate at gsm_data_shared.hAndreas Eversberg2-16/+19
2015-09-22Fix: Call e1inp_vty_init() before reading config fileAndreas Eversberg1-1/+0
2015-09-22Fix: Process all TRX on GSM Time indication, not only C0Andreas Eversberg1-4/+5
2015-09-22Fix: Retrieve ARFCN (from OML) for TRX other than C0Andreas Eversberg1-0/+19
2015-09-22move MS power control handling from sysmobts to common partHarald Welte5-1/+118
MS uplink power control is required in pretty much any BTS, and we cannot assume that they PHY / L1 will always take care of it by itself. So the correspondign code is moved to common/power_control.c and called from the generic part of L1SAP. The corresponding VTY paramter has been moved from the sysmobts-specific trx VTY node to the common BTS VTY node.
2015-09-22Move detection of handover frames from sysmo-bts code to common codeAndreas Eversberg1-0/+4
2015-09-22Move gsmtap VTY commands from osmo-bts-sysmo to common partAndreas Eversberg1-2/+127
2015-09-22Send primitives at PH-/MPH-/TCH-SAP interface via GSMTAPAndreas Eversberg1-0/+167
2015-09-22sysmobts: Clean up transitions for lchan cipher stateAndreas Eversberg1-1/+0
There are three transitions: 1. LCHAN_CIPH_NONE -> LCHAN_CIPH_RX_REQ -> LCHAN_CIPH_RX_CONF It is used to enable ciphering in RX (uplink) direction only. 2. LCHAN_CIPH_RX_CONF -> LCHAN_CIPH_RX_CONF_TX_REQ -> LCHAN_CIPH_RXTX_CONF It is used to additionally enable ciphering in TX (downlink) direction. 3. LCHAN_CIPH_NONE -> LCHAN_CIPH_RXTX_REQ -> LCHAN_CIPH_RX_CONF_TX_REQ -> LCHAN_CIPH_RXTX_CONF It is used to enable ciphering in both TX and RX directions. This is used when the channel is activated with encryption already enabled. (assignment or handover) In order to follow the order of these transitions, the RX direction must always be set before the TX direction. If no cipher key is set (A5/0), ciphering is set to ALG 0, but lchan cipher state remains at LCHAN_CIPH_NONE.
2015-09-22Add MEAS (MPH_INFO) IND message to PH-/MPH-/TCH-SAP interfaceAndreas Eversberg1-0/+32
This part moves processing of measurement infos from osmo-bts-sysmo to common part.
2015-09-22l1sap: Port code to new ciphering handlingHarald Welte1-10/+35
... introduced in 2cc37035d73191b71b9ba9c0d559a0da6a5f35e5
2015-09-22sysmobts/l1_if: Sacch/Sdcc/Facch are handled in l1sap/coreHarald Welte1-1/+1
2015-09-22Add SDCCH/SACCH/FACCH messages to PH-/MPH-/TCH-SAP interfaceAndreas Eversberg1-2/+179
This part moves control channel message primitives from osmo-bts-sysmo to common part. In order to control ciphering fo BTS model, CIPHER (MPH_INFO) messages are used.
2015-09-22Add TCH messages to PH-/MPH-/TCH-SAP interfaceAndreas Eversberg2-2/+152
This part moves TCH handling from osmo-bts-sysmo to common part. The RTP handling is done at the common part, so they can be used by other BTS models.
2015-09-22l1sap: re-introduce a comment that was lost during l1sap mergeHarald Welte1-0/+2
2015-09-22Move chan act/rel/modify from bts_model to PH-/MPH-/TCH-SAP interfaceAndreas Eversberg4-17/+164
This part replaces channel activation/deactivation/modification routines by MPH_INFO messages.
2015-09-22Relace bts_model_get_time() by get_time() at common partAndreas Eversberg2-1/+9
2015-09-22l1sap: Re-introduce more correct RACH slot countingHarald Welte1-4/+14
The original code handled both the fact where a TIME indication would be missed (and thus the frame number be higher than previous + 1), as well as the two cases for combined / non-combined CCCH. The L1SAP code removed some of those bits, which I'm re-introducing here.
2015-09-22Add TIME (MPH_INFO) IND messages to PH-/MPH-/TCH-SAP interfaceAndreas Eversberg1-0/+50
This part moves GSM time handling from osmo-bts-sysmo part to common part.
2015-09-22Add PDCH messages to PH-/MPH-/TCH-SAP interfaceAndreas Eversberg2-5/+92
This part moves PDTCH, PACCH and PTCCH message primitives from osmo-bts-sysmo to common part.
2015-09-22l1sap: Add a warning about assuming BS_AG_BLKS_RES=1Harald Welte1-0/+1
This is a regression of the code compared to the existing sysmoBTS code, where the L1 tells us whether its AGCH or PCH. However, it was not used even in the old code, so we can afford to simply put a #warning here.
2015-09-22Add PCH/AGCH message to PH-/MPH-/TCH-SAP interfaceAndreas Eversberg1-0/+8
This part moves PCH and AGCH message primitives from osmo-bts-sysmo to common part.
2015-09-22l1sap: RACH: Detect hand-over even on TRX0Harald Welte1-1/+1
I don't understand why we would detect handover only on TRX1-n, but not on TRX0. It is perfectly valid for a handover to occur on TRX0.
2015-09-22l1sap: fix missing include file and resulting compiler warningHarald Welte1-0/+1
2015-09-22l1sap: fix coding styleHarald Welte1-2/+1
2015-09-22l1sap: Use L1SAP_IS_CHAN_RACH instead of magic number 0x88Harald Welte1-1/+1
2015-09-22Add RACH message to PH-/MPH-/TCH-SAP interfaceAndreas Eversberg1-0/+69
This part moves RACH message primitives from osmo-bts-sysmo to common part.
2015-09-22Add BCCH message to PH-/MPH-/TCH-SAP interfaceAndreas Eversberg2-1/+151
This first part moves BCCH message primitives from osmo-bts-sysmo to common part. A new file "common/l1sap.c" is introduced to implement handling of layer 1 messages from/to BTS model.
2015-09-21audio/rsl: Include statistics for one callHolger Hans Peter Freyther1-3/+37
Use the new libosmo-abis API to query the session for the statistics and then send it as a TLV element to the BSC. This can be used to do post processing about the call. E.g to figure out if no audio arrived at all.
2015-09-21audio/rsl: Include the connection identifier in the DLCX indHolger Hans Peter Freyther1-0/+1
I have traces that include the connection identifier in the DLCX indication.
2015-07-14meas: Do not send incomplete measurement reportsHolger Hans Peter Freyther1-8/+11
The RSL_IE_MEAS_RES_NR is mandatory element with a minimum of 5 octets (two for TL and three for the value). When we establish a new channel we might not have had enough time in a TDMA frame to calculate the average. The issue is not easy to reproduce. At the point we receive the measurement report we have two uplink measurements queued. As it is not easy to reproduce and only occurs when a channel is new I have decided to drop the message instead of sending made up uplink measurement reports. As of now lchan_build_rsl_ul_meas will always return 3 and the condition will never be false. Avoids: SYS#1781
2015-02-05power: Make it possible to force a power levelHolger Hans Peter Freyther1-0/+23
Use the standard RSL commands to order a logical channel to use a fixed power level. The code is not fully verified and there was a last minute change to invoke bts_model_adjst_ms_pwr.
2015-02-05power/sysmobts: Add a manual ms power level controlHolger Hans Peter Freyther3-1/+28
Currently the DSP is instructed to achieve a given uplink power target but there are circumstances (e.g. EMV testing) where we need more control over it. The "manual/software/osmo" power control can only be implemented per TRX and not per lchan. Add a very very basic control that checks the MS Power used by the phone, the actual receive level and then adjust the power. The code doesn't take the history into account, if the phone can not reach the requested power level the code will be stuck (e.g. no timeout based on multiframes). It has a mode for a fixed power control but no way to set it yet. The change of the mode requires a restart of the software.
2015-01-09msg: Generalize the message structure testHolger Hans Peter Freyther1-8/+10
This was taken out of LaF0rge's OML router branch and is now used by the extended calibration feature.
2014-12-30SMS-CB: Clean up + centralize generation of NULL blockHarald Welte1-11/+22
2014-12-30SMS-CB: Use GSM412_SEQ_NULL_MSG rather than 0xfHarald Welte1-1/+1
2014-12-30SMS-CB: use gsm412_block_type from libosmocoreHarald Welte1-9/+1
.. and not our own local re-definition of the structure.
2014-12-30SMS-CB: Use GSM412_ #defines from libosmocore rather than our ownHarald Welte1-10/+8
2014-12-30CBCH: Implement CBCH block segmentation and RSL_MT_SMS_BC_CMDHarald Welte4-5/+230
* CBCH load indications are not yet sent * The queue length is not yet limited!
2014-12-30Initial CBCH supportHarald Welte6-5/+38
This should handle OML channel combinations with CBCH and activate the CBCH SAPI towards the DSP correspondingly. What is still missing is sending any actual information over the CBCH in respons to the PH-RTS.ind coming up from L1.
2014-11-10bts: Start with the site manager being enabled and availableHolger Hans Peter Freyther1-0/+3
We would never transition the sitemanager to anything. Our SW does not support SW activation's so we are always ready. Related: ONW#1330
2014-11-10bts: Mark NSVC1 as offline. We do not expose a second NSVCHolger Hans Peter Freyther1-1/+1
OsmoBSC> show bts 0 ... GPRS NSVC1: Oper 'Disabled', Admin 'unknown 0x0', Avail 'Off line'
2014-11-10bts: Fix typo in OML commentHolger Hans Peter Freyther1-1/+1
2014-11-10abis: Fix compiler warning and remove const from syntaxHolger Hans Peter Freyther1-2/+2
libosmo-abis doesn't make it easy to have these parameters as const.. just declare it non-const in the api. We pass a static string but we know it will not be modified.
2014-08-27Correctly fill system information messages from BSCAndreas Eversberg1-2/+7
SI 5*/6 require L2 header of 0x03,0x03. All SI might be less than 23 octets, so they need to be filled with 0x2b.
2014-08-25tx_power: Check actual TRX output power against intended valueHarald Welte1-0/+18
We use the completion call-back from L1 to compare the instructed TRX board output power with the actual value as reported back from L1. Right now we only print an error message in case the values disagree. In the future we might want to either use that value as part of our calculation or send an OML alarm report to the BSC.