aboutsummaryrefslogtreecommitdiffstats
path: root/src/common/tx_power.c
AgeCommit message (Collapse)AuthorFilesLines
2018-02-19Cosmetic fixes for power ramping code.Stefan Sperling1-2/+2
Fix typos in 2 comments. Change-Id: I214bcc8b78446bfea450fe445fa9391898638905
2017-04-06sysmobts: Don't start with 0dBm TRX output power before rampingHarald Welte1-0/+15
In case a system has a high-gain external PA (like a 40dB PA) connected externally, we cannot simply switch the transceiver to 0 dBm in trx_init() only to then start the ramping at much lower levels once the PHJ completes in trx_init_compl_cb(). The result would be a short 0 + 40 dBm spike followed by later ramping. We want to avoid that spike, particularly its associated inrush current, so let's bring up the board with smething very conservative like -50 dBm, and then ramp from there. Change-Id: I0ad91fce64f65e0213c9fcfde3390ace519055db Fixes: SYS#3259
2017-02-07tx_power: Change PA calibration tables to use delta valesHarald Welte1-2/+2
It seems more user friendly to look at a calibration table in terms of the delta (positive or negative) compared to the nominal gain value, rather than a collection of absolute gain values. It has the added benefit that the (API/data model) user doesn't have to specify a gain value for each ARFCN, but rather can rely on the default nominal gain in absence of a calibration table for this specific unit. Change-Id: I7311815902a88d2fc9d211cf4c62fa6fdc5e86ad
2017-02-07tx_power: various cosmetic fixes in commentsHarald Welte1-5/+5
Change-Id: I542b74d79bc8ffedd7c435b41b042edd5152f61c
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.
2014-08-25tx: Fix another typo i found today morningHolger Hans Peter Freyther1-1/+1
2014-08-25tx_power.c: fix potential array out-of-bounds accessHarald Welte1-1/+1
2014-08-25tx_power.c: Fix typos in commentsHarald Welte1-2/+2
2014-08-24New generic transmit power handlingHarald Welte1-0/+273
In order to support transmit power reduction by thermal management as well as the variety of new internal / external PA configurations of BTSs, we need a slightly more complex system. Also, as at high power a single dB can be quite a big difference, we are now doing all computations in milli-dB(m), i.e. 1/10000 bel. Ramping is now used both for up and down ramping, as that is useful in cases where you want to gracefully shut down a cell by shrinking its radius, gradually handing over subscribers to neighboring cells. Furthermore, this code is becoming part of the 'common' codebase, as it is not really specific to how sysmobts is working. The user can specify a single aggregate value for external system gain/attenuation. Let's say you have 1dB loss of antenna cable, so you can put that as 'user-gain -1' into the config, which means that a 'transmit power of 20dBm' will be compensatet for that and the TRX is instructed to output 21dBm to compensate the cable loss. Similarly, external PAs can be described by a positive user-gain. One of the next steps will be to communicate those values and the nominal power capability of the specific BTS to the BSC, so the BSC will automatically show correct signal levels in the VTY and log files. The code includes provisions for future extensions regarding * an external and an internal PA with calibration tables * a thermal attenuation setting to be controlled by the site manager