Attention is currently required from: jolly, laforge, lynxis lazus.
Hello Jenkins Builder, laforge, lynxis lazus,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-remsim/+/43742?usp=email
to look at the new patch set (#4).
The following approvals got outdated and were removed:
Code-Review+1 by laforge, Verified+1 by Jenkins Builder
Change subject: Introduce osmo-remsim-client-socket
......................................................................
Introduce osmo-remsim-client-socket
Add new remsim client with socket interface. It is similar to the
osmo-remsim-client-shell, but it uses a unix socket instead of stdin and
stdout to exchange APDUs. The coding is binary instead of hex string.
Related: SYS#8159
Change-Id: I9eddb60e4e7c3191ca2b340690416b53005f714f
---
M .gitignore
M debian/control
A debian/osmo-remsim-client-socket.install
M src/client/Makefile.am
M src/client/client.h
M src/client/remsim_client_main.c
A src/client/user_socket.c
7 files changed, 203 insertions(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-remsim refs/changes/42/43742/4
--
To view, visit https://gerrit.osmocom.org/c/osmo-remsim/+/43742?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newpatchset
Gerrit-Project: osmo-remsim
Gerrit-Branch: master
Gerrit-Change-Id: I9eddb60e4e7c3191ca2b340690416b53005f714f
Gerrit-Change-Number: 43742
Gerrit-PatchSet: 4
Gerrit-Owner: jolly <andreas(a)eversberg.eu>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: lynxis lazus <lynxis(a)fe80.eu>
Gerrit-Attention: jolly <andreas(a)eversberg.eu>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Attention: lynxis lazus <lynxis(a)fe80.eu>
fixeria has submitted this change. ( https://gerrit.osmocom.org/c/osmocom-bb/+/43829?usp=email )
(
3 is the latest approved patch-set.
No files were changed between the latest approved patch-set and the submitted one.
)Change subject: trxcon/trx_if: negotiate TRXD PDU version 1 (TRXDv1)
......................................................................
trxcon/trx_if: negotiate TRXD PDU version 1 (TRXDv1)
Now that trx_if.c is built against libosmo-trx, enable TRXDv1 by
negotiating it (SETFORMAT) before every POWERON, since the transceiver
may reset its active format back to legacy on the preceding POWEROFF.
This significantly improves the ttcn3-bts-test pass/fail ratio in the
frequency hopping configuration: TRXDv1 lets the transceiver
(osmo-trx-proxy) send us NOPE.ind, which we rely on to keep driving
uplink bursts even when no downlink burst was received.
Change-Id: I08d588f74925bb7a85e131defc0fa82158d90680
Related: OS#6638
---
M src/host/trxcon/src/trx_if.c
M src/host/trxcon/src/trxcon_shim.c
2 files changed, 36 insertions(+), 6 deletions(-)
Approvals:
Jenkins Builder: Verified
osmith: Looks good to me, approved
pespin: Looks good to me, but someone else must approve
diff --git a/src/host/trxcon/src/trx_if.c b/src/host/trxcon/src/trx_if.c
index a974b46..bbbc93f 100644
--- a/src/host/trxcon/src/trx_if.c
+++ b/src/host/trxcon/src/trx_if.c
@@ -45,6 +45,13 @@
#include <osmocom/bb/trxcon/trx_if.h>
#include <osmocom/bb/trxcon/logging.h>
+/* Highest TRXD PDU version supported by trxcon (TRXDv1).
+ *
+ * TRXDv2 requires Tx PDUs to contain modulation and training sequence info.
+ * struct trxcon_phyif_burst_req currently does not contain this information,
+ * so we cannot populate the necessary fields in trx_if_handle_phyif_burst_req(). */
+#define TRXD_PDU_VER_MAX 1
+
/* Give up after 3 retransmissions of a TRXC command */
#define TRX_MAX_RETRANS 3
@@ -148,6 +155,15 @@
return osmo_trxc_client_poweron(trx->trxc_client, &trx_poweron_rsp_cb, trx);
}
+static void trx_setformat_cb(struct osmo_trxc_client *client,
+ uint8_t ver_use, void *cb_data)
+{
+ struct trx_instance *trx = cb_data;
+
+ LOGPFSML(trx->fi, LOGL_INFO, "Using TRXD PDU version %u\n", ver_use);
+ osmo_trx_ep_set_pdu_ver(trx->ep, 0, ver_use);
+}
+
static int trx_if_cmd_setslot(struct trx_instance *trx,
const struct trxcon_phyif_cmdp_setslot *cmdp)
{
@@ -400,8 +416,11 @@
}
}
-/* No state change here: the POWERON response (see trx_poweron_rsp_cb())
- * is what moves us to TRX_ST_POWERON. */
+/* (Re-)negotiate the TRXD PDU format and send POWERON right behind it,
+ * since the transceiver may have reset its active format back to legacy
+ * on the preceding POWEROFF (or never negotiated it at all, if this is the
+ * very first POWERON). No state change here: the POWERON response (see
+ * trx_poweron_rsp_cb()) is what moves us to TRX_ST_POWERON. */
static void trx_fsm_handle_poweron_req(struct osmo_fsm_inst *fi)
{
struct trx_instance *trx = fi->priv;
@@ -411,6 +430,9 @@
return;
}
+ osmo_trxc_client_negotiate_format(trx->trxc_client,
+ TRXD_PDU_VER_MAX,
+ &trx_setformat_cb, trx);
trx_if_cmd_poweron(trx);
}
@@ -488,8 +510,8 @@
.tn = bi->tn,
.toa256 = bi->toa256,
.rssi = bi->rssi,
- .burst = &bi->burst[0],
- .burst_len = bi->burst_len,
+ .burst = (bi->flags & OSMO_TRXD_F_NOPE_IND) ? NULL : &bi->burst[0],
+ .burst_len = (bi->flags & OSMO_TRXD_F_NOPE_IND) ? 0 : bi->burst_len,
};
trxcon_phyif_handle_burst_ind(trx->priv, &phybi);
diff --git a/src/host/trxcon/src/trxcon_shim.c b/src/host/trxcon/src/trxcon_shim.c
index ed2d402..3446f13 100644
--- a/src/host/trxcon/src/trxcon_shim.c
+++ b/src/host/trxcon/src/trxcon_shim.c
@@ -232,8 +232,16 @@
.burst_len = phybi->burst_len,
};
- OSMO_ASSERT(phybi->burst_len <= sizeof(bi.burst));
- memcpy(&bi.burst[0], phybi->burst, phybi->burst_len);
+ if (phybi->burst_len > 0) {
+ OSMO_ASSERT(phybi->burst_len <= sizeof(bi.burst));
+ memcpy(bi.burst, phybi->burst, phybi->burst_len);
+ } else {
+ /* NOPE.ind: the transceiver did not detect a burst for this fn/tn,
+ * but still reports timing/level measurements. Feed the scheduler
+ * with a burst all soft-bits of which are uncertain (50% 0, 50% 1). */
+ bi.burst_len = GSM_NBITS_NB_GMSK_BURST;
+ memset(bi.burst, 0, bi.burst_len);
+ }
/* Poke scheduler */
return l1sched_handle_rx_burst(trxcon->sched, &bi);
--
To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/43829?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: merged
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Change-Id: I08d588f74925bb7a85e131defc0fa82158d90680
Gerrit-Change-Number: 43829
Gerrit-PatchSet: 5
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Attention is currently required from: pespin.
fixeria has posted comments on this change by fixeria. ( https://gerrit.osmocom.org/c/osmocom-bb/+/43829?usp=email )
Change subject: trxcon/trx_if: negotiate TRXD PDU version 1 (TRXDv1)
......................................................................
Patch Set 4:
(1 comment)
File src/host/trxcon/src/trxcon_shim.c:
https://gerrit.osmocom.org/c/osmocom-bb/+/43829/comment/99694710_b9b70445?u… :
PS3, Line 241: * with a burst all soft-bits of which are uncertain (50% 0, 50% 1). */
> This is about **soft-bits**, where […]
Done
--
To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/43829?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Change-Id: I08d588f74925bb7a85e131defc0fa82158d90680
Gerrit-Change-Number: 43829
Gerrit-PatchSet: 4
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Mon, 19 Oct 2026 11:22:51 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: fixeria <vyanitskiy(a)sysmocom.de>
Comment-In-Reply-To: pespin <pespin(a)sysmocom.de>