fixeria has uploaded this change for review. (
https://gerrit.osmocom.org/c/osmocom-bb/+/30241 )
Change subject: trxcon: implement Ready-to-Send PHYIF API
......................................................................
trxcon: implement Ready-to-Send PHYIF API
This API is going to be used by osmo-trx-ms for pulling Uplink bursts
from the scheduler in a synchronous way, without relaying on the
timer driven libtrxcon's internal scheduler.
Change-Id: Ic8f74413f5fad277340e007dd4296f890155a2c1
Related: OS#5599
---
M src/host/trxcon/include/osmocom/bb/trxcon/phyif.h
M src/host/trxcon/src/trxcon_shim.c
2 files changed, 20 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmocom-bb refs/changes/41/30241/1
diff --git a/src/host/trxcon/include/osmocom/bb/trxcon/phyif.h
b/src/host/trxcon/include/osmocom/bb/trxcon/phyif.h
index 43363cb..3cf5f5d 100644
--- a/src/host/trxcon/include/osmocom/bb/trxcon/phyif.h
+++ b/src/host/trxcon/include/osmocom/bb/trxcon/phyif.h
@@ -69,6 +69,12 @@
} param;
};
+/* RTS.ind - Ready-to-Send indication */
+struct trxcon_phyif_rts_ind {
+ uint32_t fn;
+ uint8_t tn;
+};
+
/* BURST.req - a burst to be transmitted */
struct trxcon_phyif_burst_req {
uint32_t fn;
@@ -89,6 +95,7 @@
};
+int trxcon_phyif_handle_rts_ind(void *priv, const struct trxcon_phyif_rts_ind *rts);
int trxcon_phyif_handle_burst_ind(void *priv, const struct trxcon_phyif_burst_ind *bi);
int trxcon_phyif_handle_burst_req(void *phyif, const struct trxcon_phyif_burst_req *br);
int trxcon_phyif_handle_cmd(void *phyif, const struct trxcon_phyif_cmd *cmd);
diff --git a/src/host/trxcon/src/trxcon_shim.c b/src/host/trxcon/src/trxcon_shim.c
index 6434461..2b5fc29 100644
--- a/src/host/trxcon/src/trxcon_shim.c
+++ b/src/host/trxcon/src/trxcon_shim.c
@@ -220,6 +220,19 @@
}
/* External L1 API for the PHYIF */
+int trxcon_phyif_handle_rts_ind(void *priv, const struct trxcon_phyif_rts_ind *rts)
+{
+ struct trxcon_inst *trxcon = priv;
+ struct l1sched_burst_req br = {
+ .fn = rts->fn,
+ .tn = rts->tn,
+ .burst_len = 0, /* NOPE.ind */
+ };
+
+ l1sched_trigger(trxcon->sched, &br);
+ return l1sched_handle_burst_req(trxcon->sched, &br);
+}
+
int trxcon_phyif_handle_burst_ind(void *priv, const struct trxcon_phyif_burst_ind *bi)
{
struct trxcon_inst *trxcon = priv;
--
To view, visit
https://gerrit.osmocom.org/c/osmocom-bb/+/30241
To unsubscribe, or for help writing mail filters, visit
https://gerrit.osmocom.org/settings
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Change-Id: Ic8f74413f5fad277340e007dd4296f890155a2c1
Gerrit-Change-Number: 30241
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: newchange