aboutsummaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2016-06-15LC15: Hardware changes:Minh-Quang Nguyen17-310/+296
- Change system devices path - Remove obsoleted sensors and add new sensors - Change TRX and sensors numbering to 0,1 instead of 1,2 (JFD) Change-Id: I5172daf68d3145a6398e37df87df21b0e5affe42
2016-06-15LC15: Bring back DSP trace argumentMinh-Quang Nguyen2-2/+13
Change-Id: I822651d9ba4959ce5885a2c0362f1ea583b724da
2016-06-15sysmo: add L3 handle to l1prim messagesNeels Hofmeyr2-13/+128
Place a layer 3 handle into GSM L1 messages to better match up confirmations to respective requests. This handle is a uint32_t transparently returned in the confirmation messages, so a match-up is easy to add. So far, a GSM L1 confirmation message received for a preceding L1 Request was matched only by the prim_id. That meant that only one instance of the same primitive could be waiting for a confirmation at any given time, or the responses would get mixed up: the struct wait_l1_conf instances entered into the fl1h->wlc_list queue would be returned to a possibly mismatching confirmation handler. (Seen during testing of dyn pdch switching.) Send the hLayer3 handle out via prim_init(), using new static functions to produce handles on different scopes: * l1p_handle_for_trx() * l1p_handle_for_ts() * l1p_handle_for_lchan() (These could possibly move to a more general .h/.c file later.) Remember the hLayer3 handle in * struct wait_l1_conf. Match the incoming confirmations' and stored hLayer3 handles up in, and remove a now obsolete comment from: * is_prim_compat() Since the hLayer3 members are at different byte offsets in GsmL1_Prim_t.u.*, use large switch statements to set/get the value: * In prim_init(), extend existing switch statement to set in GsmL1_Prim_t. * Add l1p_get_hLayer3() to retrieve from GsmL1_Prim_t (could possibly move to a more general .h/.c file later). Change-Id: Ie4533c6cbc160318917e7a672ab6f9a848f01d1b
2016-06-15sysmobts: Add the barebox boot state reservationHolger Hans Peter Freyther1-1/+2
We are using up to 48 (actually only 8) bytes to manage the boot state of the device. Add it to the eeprom reservation. It turns out the current padding was too large (37 + 84 don't end at 120). Change-Id: I4c1de5925577f1d0b7b5cc08529642ffa333d7de
2016-06-14common/abis.c: fix 100% CPU usage after disconnecting OML/RSL link (Bug #1703)Minh-Quang Nguyen1-1/+0
Change-Id: I24605b8a6d4e778a3280ffba8bc1fc7a284ce12d
2016-06-14DTXu: mark beginning of speech burst in RTPMax3-14/+92
Set Marker bit in RTP header to mark the beginning of talkspurt. Change-Id: I3dd70ad8ff94356e3c3cc5458255f6c23534783e Related: OS#1562
2016-06-14DTXd: store/repeat last SIDMax3-17/+118
Store last SID received over RTP and repeat is if necessary (no new SID or SPEECH frames) according to codec-specific scheduling rules. Related: OS#1563 Copy-paster from I4d23846a27d3dbd2a6e75e481c1efcdb2a85f305 for LC15. Change-Id: I29acea6e8bbf426330ce52554a48afb5d2ef1679
2016-06-14DTXd: store/repeat last SIDMax3-18/+119
Store last SID received over RTP and repeat is if necessary (no new SID or SPEECH frames) according to codec-specific scheduling rules. Change-Id: I4d23846a27d3dbd2a6e75e481c1efcdb2a85f305 Related: OS#1563
2016-06-14Fix debug outputMax1-0/+1
Previously frame number was not saved in case of PRIM_TCH rendering many debug statements with g_time useless. Copy-paste from ef30f50d5d6d5f863fc147d05ccdceb89284934e. Change-Id: I952b39458d921622d5964cbdcc2f4e45ff9ea951
2016-06-14Close TRX session before opening new oneJason DSouza1-1/+43
This fixes the unstable behavior (BTS loosing subscribers after some time) in case previous run of osmo-bts was interrupted (with ctrl+c for example). Change-Id: Ie2119b0b566d01f0e70b38c8a149fecb47def38d
2016-06-13octphy: Use the app. info. defaults as baseMax1-0/+2
Similar to 91565b2d51646657002f91fdc22dce3c7320e13a use default initializers. Change-Id: Ib813249f4295b034eb65658e3f43b4fe86862cf0 Fixes: Os#1642
2016-06-12Use libosmocodec for AMR RTPMax4-34/+25
Use libosmocodec function to parse RTP with AMR payload in sysmoBTS and LC15. This replaces "manual" parsing of AMR frame with function covered by test suite and makes adding DTXd support easier. Related: OS#1563 Change-Id: I1464f9a12e3f92926d03d5dd5d18e8f0f7206dd9 Reviewed-on: https://gerrit.osmocom.org/204 Tested-by: Jenkins Builder Reviewed-by: Harald Welte <laforge@gnumonks.org>
2016-06-12Add DTXd support for sysmoBTS and LC15Max3-6/+11
* set/clear DTXd activity indicator for measurement reporting * set DTXd status based on information from RSL Related: OS#1563 Change-Id: I148a75725c4e5089b6f2da6e9adcbe94170d3257 Depends-On: I4a033b03fcd0deb4db7a38273b5407511dbf1d6c Reviewed-on: https://gerrit.osmocom.org/220 Tested-by: Jenkins Builder Reviewed-by: Harald Welte <laforge@gnumonks.org>
2016-06-07Fix RTP timestamps in case of DTXMax1-2/+16
Compute RTP user_ts adjustment based on the difference between current and previous FN instead of hard-coded value. Change-Id: If1677ddcf754b29990ff7cd846e11c32e3d30b33 Related: OS#1562 Reviewed-on: https://gerrit.osmocom.org/196 Tested-by: Jenkins Builder Reviewed-by: Harald Welte <laforge@gnumonks.org>
2016-06-05Fix debug outputMax1-0/+1
Previously frame number was not saved in case of PRIM_TCH rendering many debug statements with g_time useless. Change-Id: Ib8d8c919862d0de8e2ebf7753c2592e0d91b09c5 Reviewed-on: https://gerrit.osmocom.org/195 Tested-by: Jenkins Builder Reviewed-by: Harald Welte <laforge@gnumonks.org>
2016-05-31Use libosmocore function for uplink measurementsMax2-15/+9
Related: OS#1563 Change-Id: Ide47e8e69e0d2d5859c5249b22f4bad22c18aa57 Reviewed-on: https://gerrit.osmocom.org/108 Tested-by: Jenkins Builder Reviewed-by: Harald Welte <laforge@gnumonks.org>
2016-05-31octphy: Update outdated config param name in error message.Daniel Laszlo Sitzer1-1/+1
Change-Id: I45b8bc09c9aabacc5b908450fe574b5802b88be8 Reviewed-on: https://gerrit.osmocom.org/129 Tested-by: Jenkins Builder Reviewed-by: Holger Freyther <holger@freyther.de>
2016-03-22LC15: properly initialize unmapped phy instancesMax1-0/+7
Fixes: OS#1665
2016-03-22LC15: add stubs for phy link/instance defaultsMax1-0/+8
2016-03-21octphy: fix for multiple trx with more than 1 dspMax1-1/+8
Explicitly store and use "center" arfcn used by each dsp (1 dsp corresponds to 1 phy link).
2016-03-18octphy: add support for multiple trx idsMax2-2/+4
2016-03-18octphy: use octasic's routines for debug outputMax1-2/+4
2016-03-17Fix typo in error messageMax1-1/+1
2016-03-17octphy: add missing include to fix the buildMax1-0/+1
2016-03-17Add explicit check for SI2quater index and countMax1-2/+21
Right now we do not support multiple SI2quater messages, so return error if either index or count is non-zero.
2016-03-17Fix SI2ter schedulingMax1-2/+3
According to 3GPP TS 05.02 ยง 6.3.1.3 SI2ter messages should be scheduled in FN with TC=4 only if SI2bis messages are also available.
2016-03-16octphy: Enable TCH/H mode and begin testingHolger Hans Peter Freyther1-3/+0
Upcoming releases will support TCH/H and we should start to test the DSP->RTP code.
2016-03-11Fix copy-paste issueMax1-1/+1
This issue prevented scheduling of SI 2quater messages.
2016-03-10octphy: Use the event defaults as baseHolger Hans Peter Freyther1-0/+3
Bad parameters are passed to the event structure and the default initialization should happen.
2016-02-22Fix ocmo-bts-octphy interaction with OsmoPCUMax4-12/+13
Previously osmo-bts-octphy have not provided in-band presence information which cause off-by-one errors and misinterpretation of ph_data_ind by PCU. This fixed now by adding support for explicitly passing PH-DATA presence info. Corresponding check and in-band passing of presence information are removed. Note: this requires libosmocore version with osmo_ph_pres_info_type support integrated. [hfreyther/max: Remove + 1 from the decoded length]
2016-02-15scheduler: Fix ARRAY_SIZE() in trx_sched_init()Harald Welte1-1/+1
We want the size of the array, not of the pointer to the array. Found by coverity (CID 1351422).
2016-02-15use unsigned int to compare wih ARRAY_SIZEHarald Welte1-1/+1
This is not really an issue, but makes coverity happy (CID 1351422).
2016-02-15sysmobts_vty: Fix null-check for pinstHarald Welte1-1/+1
There was a copy+paste error, checking for plink but we should check for pinst. This was found by coverity (CID 1351424).
2016-02-15LC15: remove bogus check_for_ciph_cmd() copyHarald Welte1-45/+0
2016-02-15LC15: set nominal transmit power of 37dBm for all TRXHarald Welte1-2/+5
2016-02-15LC15: Fix 'make dist' (missing include files)Harald Welte1-2/+2
2016-02-15Use consistent naming of binaries accross BTS modelsHarald Welte3-11/+11
Let's use one systematic naming schemes for all BTS models. osmobts-trx -> osmo-bts-trx sysmobts -> osmo-bts-sysmo lc15bts -> osmo-bts-lc15
2016-02-15make PCU socket and telnet port configurableHarald Welte4-7/+45
In some cases we'd like to run multiple instances of osmo-bts on a single machine. This is the case where we a multi-TRX PHY is to be used for several BTSs, or in case osmo-bts-trx has multple SDRs attached. This wa currently prevented by having a hard-coded PCU socket path and telnet port, which are now configurable via VTY / config file itself.
2016-02-15declare pcu_direct in pcu_if.hHarald Welte4-8/+2
2016-02-15move auto-band configuration commands to common/vty.cHarald Welte4-57/+24
It remains up to the individual BTS hardware models to decide whether or not to register those commands (depending on whether they support the feature) via cfg_bts_auto_band_cmd / cfg_bts_no_auto_band_cmd
2016-02-15LC15: Call l1if_reset() after l1if_open()Harald Welte2-4/+2
We want to start talking to the L1 from the point the PHY link has been opened, and not only once an OML connection has been established.
2016-02-15LC15: Remove clk_cal (another unused struct member)Harald Welte2-2/+0
2016-02-15LC15/sysmobts: Don't try to refer to fl1h from PHY configHarald Welte11-166/+109
At the time the phy link / phy instance level VTY configuration commands are parsed, we did not yet call l1if_open() and thus pinst->u.{lc15,sysmobts}.hdl == NULL. PHY or PHY instance specific configuration must thus be stored inside the phy_link or phy_instance itself, and not inside the (not yet existing) handle. We solve this by moving around some parameters: * clk_use_eeprom/clk_cal/clk_src/calib_path get replicated in phy_instance * min_qual_{rach,norm} are moved into the generic part (which means that osmo-bts-octphy and osmo-bts-trx should also implement them)
2016-02-15LC15: Remove unused clk_use_eeprom and clk_src fieldsHarald Welte2-3/+0
this is part of the copy+paste legacy from sysmobts and can be removed as it is not used.
2016-02-15sysmobts/LC15: Fix startup-time DSP trace flage configurationHarald Welte8-17/+96
Due to the changes introduced by the phy_link API, it's not easy to set the default DSP trace flags via a command line argument anymore. We now rather introduce a persitent VTY configuration command, by which the default DSP tracing configuration can be set (for each PHY). The persistent trace flags are stored in the phy_instance, while the current operational run-time flags are in fl1h->phy_instance.
2016-02-15introduce + use new generic vty_get_phy_instance()Harald Welte3-46/+30
this function is intended to be used by VTY commands that need to resolve a given PHY interface.
2016-02-15LC15: fix compiler warning against more recent libosmovtyHarald Welte1-1/+1
2016-02-15LC15: Fix printed msgq file names in error messagesHarald Welte1-4/+2
2016-02-15LC15: cosmetic whitespace fixesHarald Welte5-13/+13
2016-02-15LC15: port litecell 1.5 support to recent osmo-bts masterHarald Welte9-351/+174
This includes changes required for * shared main() function accross all BTS models * use of the new phy_link / phy_instance infrastructure as the basis for true multi-TRX operation