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/.
Vadim Yanitskiy gerrit-no-reply at lists.osmocom.orgVadim Yanitskiy has uploaded this change for review. ( https://gerrit.osmocom.org/12549
Change subject: trx_toolkit/transceiver.py: add optional transceiver name
......................................................................
trx_toolkit/transceiver.py: add optional transceiver name
Since fake_trx.py can handle multiple transceivers, it may be useful
to name transceivers. If transceiver has some name, it will appear
in logging messages, for example:
[INFO] transceiver.py:104 Init transceiver 'BTS at 127.0.0.1:5700'
[INFO] transceiver.py:104 Init transceiver 'MS at 127.0.0.1:6700'
[INFO] transceiver.py:104 Init transceiver '127.0.0.1:5700/1'
This change additionally assigns names to the both default
transceivers, and extends the '--trx' option with ability
to specify some name, for example:
--trx foo at 127.0.0.1:5700 or --trx bar at 127.0.0.1:5700/1
--trx ipv6@[2001:0db8:85a3:0000:0000:8a2e:0370:7334]:6700
Change-Id: I2f58f02e7819bb008b8aab1a8bf9e0adeb2e44ec
---
M src/target/trx_toolkit/fake_trx.py
M src/target/trx_toolkit/transceiver.py
2 files changed, 26 insertions(+), 13 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmocom-bb refs/changes/49/12549/1
diff --git a/src/target/trx_toolkit/fake_trx.py b/src/target/trx_toolkit/fake_trx.py
index 294a819..928333f 100755
--- a/src/target/trx_toolkit/fake_trx.py
+++ b/src/target/trx_toolkit/fake_trx.py
@@ -288,31 +288,34 @@
self.fake_pm.trx_list = self.trx_list
# Init TRX instance for BTS
- self.append_trx(self.argv.bts_addr, self.argv.bts_base_port)
+ self.append_trx(self.argv.bts_addr,
+ self.argv.bts_base_port, name = "BTS")
# Init TRX instance for BB
- self.append_trx(self.argv.bb_addr, self.argv.bb_base_port)
+ self.append_trx(self.argv.bb_addr,
+ self.argv.bb_base_port, name = "MS")
# Additional transceivers (optional)
if self.argv.trx_list is not None:
for trx_def in self.argv.trx_list:
- (addr, port, idx) = trx_def
- self.append_child_trx(addr, port, idx)
+ (name, addr, port, idx) = trx_def
+ self.append_child_trx(addr, port, idx, name)
# Burst forwarding between transceivers
self.burst_fwd = BurstForwarder(self.trx_list)
log.info("Init complete")
- def append_trx(self, remote_addr, base_port):
+ def append_trx(self, remote_addr, base_port, name = None):
trx = FakeTRX(self.argv.trx_bind_addr, remote_addr, base_port,
- clck_gen = self.clck_gen, pwr_meas = self.fake_pm)
+ clck_gen = self.clck_gen, pwr_meas = self.fake_pm,
+ name = name)
self.trx_list.add_trx(trx)
- def append_child_trx(self, remote_addr, base_port, child_idx):
+ def append_child_trx(self, remote_addr, base_port, child_idx, name = None):
# Index 0 corresponds to the first transceiver
if child_idx is 0:
- self.append_trx(remote_addr, base_port)
+ self.append_trx(remote_addr, base_port, name)
return
# Find 'parent' transceiver for a new child
@@ -323,7 +326,7 @@
# Allocate a new child
trx_child = FakeTRX(self.argv.trx_bind_addr, remote_addr, base_port,
- child_idx = child_idx, pwr_meas = self.fake_pm)
+ child_idx = child_idx, pwr_meas = self.fake_pm, name = name)
self.trx_list.add_trx(trx_child)
# Link a new 'child' with its 'parent'
@@ -363,11 +366,12 @@
# format: REMOTE_ADDR:BIND_PORT[/TRX_NUM]
# e.g. [2001:0db8:85a3:0000:0000:8a2e:0370:7334]:5700/5
# e.g. 127.0.0.1:5700 or 127.0.0.1:5700/1
+ # e.g. foo at 127.0.0.1:5700 or bar at 127.0.0.1:5700/1
@staticmethod
def trx_def(val):
try:
- result = re.match("(.+):([0-9]+)(\/[0-9]+)?", val)
- (addr, port, idx) = result.groups()
+ result = re.match("(.+@)?(.+):([0-9]+)(\/[0-9]+)?", val)
+ (name, addr, port, idx) = result.groups()
except:
raise argparse.ArgumentTypeError("Invalid TRX definition: %s" % val)
@@ -376,7 +380,11 @@
else:
idx = 0
- return (addr, int(port), idx)
+ # Cut '@' from TRX name
+ if name is not None:
+ name = name[:-1]
+
+ return (name, addr, int(port), idx)
def parse_argv(self):
parser = argparse.ArgumentParser(prog = "fake_trx",
diff --git a/src/target/trx_toolkit/transceiver.py b/src/target/trx_toolkit/transceiver.py
index 55e4ebd..fcbb61d 100644
--- a/src/target/trx_toolkit/transceiver.py
+++ b/src/target/trx_toolkit/transceiver.py
@@ -90,7 +90,7 @@
"""
- def __init__(self, bind_addr, remote_addr, base_port,
+ def __init__(self, bind_addr, remote_addr, base_port, name = None,
child_idx = 0, clck_gen = None, pwr_meas = None):
# Connection info
self.remote_addr = remote_addr
@@ -98,6 +98,9 @@
self.base_port = base_port
self.child_idx = child_idx
+ # Meta info
+ self.name = name
+
log.info("Init transceiver '%s'" % self)
# Child transceiver cannot have its own clock
@@ -141,6 +144,8 @@
desc = "%s:%d" % (self.remote_addr, self.base_port)
if self.child_idx > 0:
desc += "/%d" % self.child_idx
+ if self.name is not None:
+ desc = "%s@%s" % (self.name, desc)
return desc
--
To view, visit https://gerrit.osmocom.org/12549
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I2f58f02e7819bb008b8aab1a8bf9e0adeb2e44ec
Gerrit-Change-Number: 12549
Gerrit-PatchSet: 1
Gerrit-Owner: Vadim Yanitskiy <axilirator at gmail.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20190114/25c0f51a/attachment.htm>