This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.
laforge gerrit-no-reply at lists.osmocom.orglaforge has submitted this change. ( https://gerrit.osmocom.org/c/osmo-trx/+/19828 )
Change subject: Add support for TRXC MUTE command
......................................................................
Add support for TRXC MUTE command
Related: SYS#4920
Change-Id: I39983d026ad54c479aa224968e9491d01f30dc35
---
M Transceiver52M/Transceiver.cpp
M Transceiver52M/Transceiver.h
2 files changed, 16 insertions(+), 2 deletions(-)
Approvals:
fixeria: Looks good to me, but someone else must approve
laforge: Looks good to me, approved
Jenkins Builder: Verified
diff --git a/Transceiver52M/Transceiver.cpp b/Transceiver52M/Transceiver.cpp
index 32e0226..76ae3d3 100644
--- a/Transceiver52M/Transceiver.cpp
+++ b/Transceiver52M/Transceiver.cpp
@@ -62,7 +62,8 @@
}
TransceiverState::TransceiverState()
- : mFiller(FILLER_ZERO), mRetrans(false), mNoiseLev(0.0), mNoises(NOISE_CNT), mPower(0.0)
+ : mFiller(FILLER_ZERO), mRetrans(false), mNoiseLev(0.0), mNoises(NOISE_CNT),
+ mPower(0.0), mMuted(false)
{
for (int i = 0; i < 8; i++) {
chanType[i] = Transceiver::NONE;
@@ -440,7 +441,7 @@
state = &mStates[i];
ratectr_changed = false;
- zeros[i] = state->chanType[TN] == NONE;
+ zeros[i] = state->chanType[TN] == NONE || state->mMuted;
Mutex *mtx = mTxPriorityQueues[i].getMutex();
mtx->lock();
@@ -678,6 +679,10 @@
return -ENOENT;
}
+ /* If TRX RF is locked/muted by BTS, send idle burst indications */
+ if (state->mMuted)
+ goto ret_idle;
+
/* Select the diversity channel with highest energy */
for (size_t i = 0; i < radio_burst->chans(); i++) {
float pow = energyDetect(*radio_burst->getVector(i), 20 * mSPSRx);
@@ -1006,6 +1011,12 @@
mVersionTRXD[chan] = version_recv;
sprintf(response, "RSP SETFORMAT %u %u", version_recv, version_recv);
}
+ } else if (match_cmd(command, "RFMUTE", ¶ms)) {
+ // (Un)mute RF TX and RX
+ unsigned mute;
+ sscanf(params, "%u", &mute);
+ mStates[chan].mMuted = mute ? true : false;
+ sprintf(response, "RSP RFMUTE 0 %u", mute);
} else if (match_cmd(command, "_SETBURSTTODISKMASK", ¶ms)) {
// debug command! may change or disappear without notice
// set a mask which bursts to dump to disk
diff --git a/Transceiver52M/Transceiver.h b/Transceiver52M/Transceiver.h
index 39298aa..7a05ac5 100644
--- a/Transceiver52M/Transceiver.h
+++ b/Transceiver52M/Transceiver.h
@@ -85,6 +85,9 @@
/* Shadowed downlink attenuation */
int mPower;
+ /* RF emission and reception disabled, as per NM Administrative State Locked */
+ bool mMuted;
+
/* counters */
struct trx_counters ctrs;
--
To view, visit https://gerrit.osmocom.org/c/osmo-trx/+/19828
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-trx
Gerrit-Branch: master
Gerrit-Change-Id: I39983d026ad54c479aa224968e9491d01f30dc35
Gerrit-Change-Number: 19828
Gerrit-PatchSet: 3
Gerrit-Owner: pespin <pespin at sysmocom.de>
Gerrit-Reviewer: Hoernchen <ewild at sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy at sysmocom.de>
Gerrit-Reviewer: laforge <laforge at osmocom.org>
Gerrit-Reviewer: pespin <pespin at sysmocom.de>
Gerrit-Reviewer: tnt <tnt at 246tNt.com>
Gerrit-MessageType: merged
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20200902/b9e3ee76/attachment.htm>