aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/include/openbsc/gsm_data_shared.h
AgeCommit message (Collapse)AuthorFilesLines
2015-11-20Fix TSC/BSIC handling bug and remove bts->tscHarald Welte1-5/+3
This fixes a bug in the following circumstances: * BSIC is set to 0 in the config file * No TSC is explicitly specified at the BST level in the config file In this case, we ended up using BSIC=0 and TSC=7, as TSC=7 is our default initialization value. The TSC of the CCCH/BCCH must always be the BCC, which is the lower 3 bits of the BSIC. Having configuration options for both the BSIC _and_ the TSC at the BTS level therefore makes no sense, as it only adds ways in which users can configure non-oprational configurations. So we remove the bts->tsc member, and keep only the ts->tsc members that allow us to configure a timeslot-specific TSC that's different from the BTS TSC (= BCC).
2015-10-02amr: Instead of putting ms/bts into the same struct.. use it twiceHolger Hans Peter Freyther1-5/+5
This way a lot of if/else can just be killed by the caller deciding which of the two instances to use. I have copied both branches to new files, replace bts for ms in one of them and ran diff on it. There is no difference.
2015-09-22Add full AMR multirate IE support with VTY config for MS and BTS sideAndreas Eversberg1-3/+11
2015-02-07nokia: Allow to set the reset time for the nokia btsSipos Csaba1-0/+1
2015-02-05osmo-bts: Introduce new struct for a power loop in the BTS codeHolger Hans Peter Freyther1-0/+7
Keep track if the power level has been "fixed" by the BSC, otherwise keep track of the currently ordered one. The ms_power is the initial value set by the BSC and continues to be used.
2015-01-02lchan: Remember why a channel is broken using static stringsHolger Hans Peter Freyther1-0/+1
Remember why a channel is being marked as broken. So we can maybe understand what happend.
2014-12-30move gsm_bts_get_cbch() to gsm_data_shared() as its needed in osmo-btsHarald Welte1-0/+3
2014-12-30Add basic support for CBCH / SMS-CB (Cell Brroadcast)Harald Welte1-3/+3
We can now configure the pyisical channel types for CBCH either in the CCCH+SDCCH4 or in the SDCCH8 chanel combination. Depending on whether a CBCH exists on the BTS, we also generate the SI4 with matching CBCH channel description to notify the phones of the existance of the CBCH. There is now a VTY command how a SMS-CB message can be sent to a given BTS. We do not yet have any logic at all for actual scheduling of multiple CBCH RSL messages towards one or multiple BTSs yet, though.
2014-12-17bts: Add some simple dependency between different BTSHolger Hans Peter Freyther1-0/+3
E.g. for the sysmoBTS2050 we have the requirement that the first board connects before the second due clocking. The easiest point to enforce this is the BSC. Add a simple bitmask based system to allow to express dependencies for IP based systems.
2014-12-10bts: Remove unused fields from the trx structureHolger Hans Peter Freyther1-10/+0
These have either never been used or were replaced with a more generic approach.
2014-11-21bts: Store the bcch_change_mark in the bts structureHolger Hans Peter Freyther1-1/+2
Store the BCCH change mark inside the BTS structure. This will allow us increment the number and re-generate the SIs. Related: SYS#739
2014-08-25port over to libosmocore include/osmocom/gsm/meas_rep.hHarald Welte1-6/+2
Back in March 2013, some structures and defines related to decoded measurement reports have been moved from openbsc to libosmocore (libosmocore e128f4663104ed64e33e362cff2566f36d65e658) so that they can be used also from osmo-bts. This finally makes gsm_lchan follow suit for osmo-bts.
2014-08-24move GSM_RESERVED_TMSI to libosmocoreHarald Welte1-3/+0
The gb_proxy shouldn't start to open the box of pandora by including the gsm_data_shared.h file, particularly not without defining the BSC role. In any case, as the reserved TMSI is something that's part of the GSM specs, and not specific to the OpenBSC implementation, it should be part of libosmocore.
2014-08-24gsm_data_shared: Add new trx_power_params for osmo-btsHarald Welte1-0/+1
2014-08-24move gsm_bts_num() to gsm_data_shared.[ch]Harald Welte1-1/+2
this way we can drop a copy of this function from osmo-bts.
2014-08-09sysmobts: Add variable for N(S) + 1 needed for the sysmobtsHolger Hans Peter Freyther1-0/+1
We could use the upper three bits of the ciph_state to store the sequence number but make the code understandable first.
2014-07-30openbsc: Add new fields for the osmo-bts softwareHolger Hans Peter Freyther1-0/+12
For the osmo-bts software we want to be able to slowly change the output power. The state is kept inside the trx structure.
2014-07-24bts: Remember the last AMR mode that we receivedHolger Hans Peter Freyther1-0/+1
Not every air message contains the AMR mode so we need to remember it to not confuse receiving equipment like AudioCodes Media Gateways.
2014-04-29openbsc/gsm_data_shared.h: Added the attribute reduce_power in TRXÁlvaro Neira Ayuso1-0/+1
Signed-off-by: Alvaro Neira Ayuso <anayuso@sysmocom.de>
2014-01-19TSC: Add new gsm_ts_tsc() function to resolve TSC of TSHarald Welte1-0/+7
We don't want every caller to check for ts->tsc == -1 and then using ts->trx->bts->tsc instead. Rather, introduce a new inline function to retrieve the correct value.
2014-01-19Do not expect all BTSs support TSC != BCCHarald Welte1-0/+1
We introduce a new feature indicating if the given BTS model supports a TSC that is different from the BCC (lower 3 bits of BSIC).
2014-01-16si: Add a config option to disable SI2ter/SI2bis/SI5ter/SI5bis messagesJacob Erlbeck1-0/+3
The iPhone5 (US) appears to have some issues with the SIs generated, or the nanoBTS is not sending them correctly. Add a configurable hack to put all bands into the SI2/SI5 message. It is enabled by the bts VTY command 'force-combined-si'. This is a quick change without much reflection and watching for side effects. I have verfied that a network with ARFCN 134 and neighbors ARFCN 130 and 512 do not get generate the SI2ter and announce everything inside the SI2. This patch is conceptually based on 'si: Add a hack to disable SI2ter/SI2bis/SI5ter/SI5bis messages' (692daaf2d2). Ticket: OW#1062 Sponsored-by: On-Waves ehf
2014-01-14Each BTS can be configured for speech support (other than GSM full rate)Andreas Eversberg1-0/+9
Speech codings which are not supported by BTS will be removed from the bearer capability information element after parsing. This way it is not required for the MNCC application to consider support of each BTS. Only GSM full rate is supported by default.
2014-01-09Add VTY option for Nokia BTS that does not send RELease CONFirm messageAndreas Eversberg1-0/+3
This option is a workarround for a bug found in Nokia InSite BTS firmware version 3.0.0. There is no RELease CONFirm message for local end release. Nokia MetroSite with firmware version 4.178.16 is not affected. TS 04.06 Chapter 5.4.4.4 "Local end release procedure" states that a confirm must be sent by layer 2 when receiving a local end release request. In order to correctly switch a channel (handover or assignment), local end release is required.
2013-11-05shared: Introduce/Add procedure pending to the MOHolger Hans Peter Freyther1-0/+1
GSM 12.21 specifies that "No elementary procedure shall be initiated to an object instance which has not yet replied to a previously initiated elementary procedure with a response, an ACK or a NACK within a layer 3 time-out. The layer 3 timeout for ACK, NACK and responses shall have a default value of 10 seconds." We are using this flag in the BTS to enforce/safe-guard this situation.
2013-10-25bts: Add a flag to remember the kind of activation/releaseHolger Hans Peter Freyther1-0/+2
When the PCU is activating a channel we don't want to tell the BSC using RSL. Add a flag so we can keep track of who asked for the activation/release of the channel.
2013-10-06osmo-bts: Kill the different ROLE_BSC as e1inp_sign_link is used nowHolger Hans Peter Freyther1-4/+1
2013-09-19bsc/mminfo: Patch timezone and DST in MM Info messagesJacob Erlbeck1-0/+1
This adds in-place patching of the time information in the MM INFORMATION message. The timezone in the 'Local time zone' and the 'Universal time and local time zone' information elements and the offset in the 'Network Daylight Saving Time' information element are optionally set. The new values are determined by the 'timezone' vty command in the config_net_bts node. That command is extended by an optional DST offset parameter. Tests are provided for the vty part and for the plain bsc_scan_msc_msg() function. Sponsored-by: On-Waves ehf Ticket: OW#978
2013-07-03hsl: Remove the support for the HSL bts from OpenBSCHolger Hans Peter Freyther1-4/+0
The support has been implemented for an old model, we were told that newer versions would be made incompatible with OpenBSC. Ther are various warnings in the code and coverity has found some new ones. Just remove the code as we don't know of anyone using this code.
2013-04-05sysmobts: Add the necessary data structure and init for the SAPI queueHolger Hans Peter Freyther1-0/+1
The sysmobts is now having a SAPI queue with all pending SAPI operations on the BTS. Add the llist_head to the lchan and make sure it is initialized by the shared code.
2013-03-17Add VTY option to set GPRS network-control-order to enable MS measurementsAndreas Eversberg1-0/+1
In order to enable GPRS downlink measurements at mobile, the network-control-order must be set to nc1.
2013-03-12IPA: Allow RSL connection to different IP address as OMLHarald Welte1-0/+1
This patch adds a new VTY command "ip.access rsl-ip A.B.C.D" at the BTS level. If you set this IP address, the BTS will be instructed to establish the RSL link to the indiciated IP address, rather than using the same as for the OML link (default). Use "ip.access rsl-ip 0" to disable the feature.
2013-03-11BTS: Add S counter for link loss criterion to lchan structureAndreas Eversberg1-0/+2
2013-01-28bts: Allow to exclude a BTS from the global RF lock handlingHolger Hans Peter Freyther1-0/+3
Some BTS might be in locations where they can run all the time, allow to exclude them from the global lock handling.
2013-01-15osmo-bsc: Add VTY command show positionDaniel Willmann1-0/+2
2013-01-01Revert "libbsc: With the new SAPI states we don't need sacch_deact anymore"Holger Hans Peter Freyther1-0/+1
For now we need to keep the sacch_deact in OpenBSC as we couldn't get the new activation/de-activation code working. This reverts commit 0c282f52684ac033e20ab411ab206e8559d564c9.
2012-12-29libbsc: With the new SAPI states we don't need sacch_deact anymoreDaniel Willmann1-1/+0
2012-12-29gsm_data_shared.h: Keep a list of SAPI states per lchanDaniel Willmann1-0/+13
2012-12-23lchan: Introduce T3109 handling for the release procedureHolger Hans Peter Freyther1-0/+1
T3109 is started when the SACCH is deactivated. It is stopped when the phones sends the DISC/UA/UM on LAPDm for the main signalling link. In case of timeout the abnormal release procedure will be initiated. Make sure to not issue the SACCH Deactivate twice to avoid confusing the equipment. This is still not fully spec compliant. In case of a timeout the abnormal release handling will be started which involves starting T3111+2. The error handling should be split out of the rf channel release method, e.g. lchan_release should be called and check if the channel release was already initiated.
2012-12-23lchan: Introduce a BROKEN state for the lchanHolger Hans Peter Freyther1-0/+2
If the CHAN ACTIV is NACKED we set the state backto NONE. This is problematic as our channel allocator will allocate from the front or from the back and if the channel is early in the list it might cause permanent failures. Introduce a BROKEN state and use it when the channel activation is failing for an unknown reason. Copy the cause so it can be inspected later.
2012-12-23lchan: Release the lchan more quickly, align with GSM 04.08Holger Hans Peter Freyther1-3/+0
* Release all channels with SAPI > 0 with the "local end release" (as of NOTE 1 of GSM 04.08). * No need to wait for all SAPIs to be torn down and the normal REL_IND/REL_CONF will call rsl_handle_release and the channel should be released. * Update the documentation
2012-12-23rsl: Rename the reason to release_mode and use the enum valueHolger Hans Peter Freyther1-2/+2
The API with 0 and 1 as legal values is hard to understand. Use the recently introduced enum values instead.
2012-12-20osmo-bts: Include lapdm.h to fix autoconf usability testHolger Hans Peter Freyther1-0/+4
Include the LAPDm header file so the size of struct lapdm_channel is known and gsm_data_shared.h can be included by itself.
2012-09-11gsm_data: Include a structure for the geographical location in gsm_btsDaniel Willmann1-0/+18
2012-08-29RSL: Add basic support for CSD transparent modeHarald Welte1-0/+13
We now have a lchan->csd_mode member that determines if RSL should activate the channel in CSD transparent services or not. The previous code always assumed CSD is non-transparent. (This requires libosmocore >= eed26116c96f03c6128fac3dead9054714af6cab)
2012-08-17VTY: dynamically create BTS "type" command syntaxHarald Welte1-0/+1
2012-08-17dynamically generate a proper VTY reference for phys_chan_configHarald Welte1-0/+4
this uses vty_cmd_string_from_valstr() from _very_ recent libosmocore, so you have to update the library, sorry.
2012-07-12move BTS-specific timezone override into sub-structureHarald Welte1-3/+5
Group all three structure members involved in bts-specific timezone handling into a sub-structure.
2012-07-02BSC: introduce new "sysmobts" BTS modelHarald Welte1-0/+1
so far, osmo-bts/sysmobts used to be entered as "sysmobts" type in the configuration file. However, there are some differences in the protocol/behaviour and we should reflect that by a new BTS plugin (with lots of code reuse from the nanobts driver).
2012-06-28gsm_data_shared: add structure for decoded parameters of RLC configHarald Welte1-0/+45
this is primarily needed on the BTS side, but we should also use it on the BSC side and make the parameters VTY-configurable.