fixeria has uploaded this change for review.
trxcon: do not send DATA.cnf for L1SCHED_DT_TRAFFIC
The event TRXCON_EV_TX_DATA_CNF is not premitted in state
TRXCON_ST_PACKET_DATA, and is not of any use for l1gprs.
Change-Id: Iee5ee404f1eb77091c388a641d0a78d01a8d7e7f
Related: OS#5500
---
M src/host/trxcon/src/trxcon_shim.c
1 file changed, 18 insertions(+), 5 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmocom-bb refs/changes/51/31651/1
diff --git a/src/host/trxcon/src/trxcon_shim.c b/src/host/trxcon/src/trxcon_shim.c
index f8b1872..dbf4962 100644
--- a/src/host/trxcon/src/trxcon_shim.c
+++ b/src/host/trxcon/src/trxcon_shim.c
@@ -151,7 +151,6 @@
const struct l1sched_lchan_desc *lchan_desc;
struct l1sched_state *sched = lchan->ts->sched;
struct trxcon_inst *trxcon = sched->priv;
- bool is_traffic = false;
const uint8_t *data;
uint8_t ra_buf[2];
size_t data_len;
@@ -160,14 +159,15 @@
lchan_desc = &l1sched_lchan_desc[lchan->type];
switch (dt) {
- case L1SCHED_DT_TRAFFIC:
case L1SCHED_DT_PACKET_DATA:
- is_traffic = true;
- /* fall-through */
+ data_len = lchan->prim->payload_len;
+ data = lchan->prim->payload;
+ break; /* do not send DATA.cnf */
case L1SCHED_DT_SIGNALING:
+ case L1SCHED_DT_TRAFFIC:
{
struct trxcon_param_tx_data_cnf cnf = {
- .traffic = is_traffic,
+ .traffic = (dt == L1SCHED_DT_TRAFFIC),
.chan_nr = lchan_desc->chan_nr | lchan->ts->index,
.link_id = lchan_desc->link_id,
.band_arfcn = trxcon->l1p.band_arfcn,
To view, visit change 31651. To unsubscribe, or for help writing mail filters, visit settings.