fixeria has submitted this change. ( 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 relying 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, 21 insertions(+), 1 deletion(-) Approvals: fixeria: Looks good to me, approved pespin: Looks good to me, but someone else must approve Hoernchen: Looks good to me, but someone else must approve Jenkins Builder: Verified diff --git a/src/host/trxcon/include/osmocom/bb/trxcon/phyif.h b/src/host/trxcon/include/osmocom/bb/trxcon/phyif.h index a2bc9ce..ac23ac6 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; @@ -88,11 +94,12 @@ unsigned int burst_len; }; - int trxcon_phyif_handle_burst_req(void *phyif, const struct trxcon_phyif_burst_req *br); int trxcon_phyif_handle_burst_ind(void *priv, const struct trxcon_phyif_burst_ind *bi); int trxcon_phyif_handle_clock_ind(void *priv, uint32_t fn); +int trxcon_phyif_handle_rts_ind(void *priv, const struct trxcon_phyif_rts_ind *rts); + int trxcon_phyif_handle_cmd(void *phyif, const struct trxcon_phyif_cmd *cmd); int trxcon_phyif_handle_rsp(void *priv, const struct trxcon_phyif_rsp *rsp); void trxcon_phyif_close(void *phyif); diff --git a/src/host/trxcon/src/trxcon_shim.c b/src/host/trxcon/src/trxcon_shim.c index ee51036..9da3cb7 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_pull_burst(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 *phybi) { 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: 8 Gerrit-Owner: fixeria <vyanits...@sysmocom.de> Gerrit-Reviewer: Hoernchen <ew...@sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria <vyanits...@sysmocom.de> Gerrit-Reviewer: laforge <lafo...@osmocom.org> Gerrit-Reviewer: msuraev <msur...@sysmocom.de> Gerrit-Reviewer: pespin <pes...@sysmocom.de> Gerrit-MessageType: merged