fixeria has uploaded this change for review. (
https://gerrit.osmocom.org/c/osmocom-bb/+/33710 )
Change subject: trxcon/l1sched: simplify and unify prim_dequeue_tchf()
......................................................................
trxcon/l1sched: simplify and unify prim_dequeue_tchf()
Make it easier to read and more similar to prim_dequeue_tchh().
Change-Id: Ie79069e5cc8acd193a326ac9d334fe070552e320
---
M src/host/trxcon/src/sched_lchan_tchf.c
1 file changed, 22 insertions(+), 17 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmocom-bb refs/changes/10/33710/1
diff --git a/src/host/trxcon/src/sched_lchan_tchf.c
b/src/host/trxcon/src/sched_lchan_tchf.c
index 6d48fc7..a87efaf 100644
--- a/src/host/trxcon/src/sched_lchan_tchf.c
+++ b/src/host/trxcon/src/sched_lchan_tchf.c
@@ -215,26 +215,20 @@
static struct msgb *prim_dequeue_tchf(struct l1sched_lchan_state *lchan)
{
- struct msgb *facch;
- struct msgb *tch;
+ struct msgb *msg_facch;
+ struct msgb *msg_tch;
- /* Attempt to find a pair of FACCH/F and TCH/F frames */
- facch = l1sched_lchan_prim_dequeue_tch(lchan, true);
- tch = l1sched_lchan_prim_dequeue_tch(lchan, false);
+ /* dequeue a pair of TCH and FACCH frames */
+ msg_tch = l1sched_lchan_prim_dequeue_tch(lchan, false);
+ msg_facch = l1sched_lchan_prim_dequeue_tch(lchan, true);
- /* Prioritize FACCH/F, if found */
- if (facch) {
- /* One TCH/F prim is replaced */
- if (tch)
- msgb_free(tch);
- return facch;
- } else if (tch) {
- /* Only TCH/F prim was found */
- return tch;
- } else {
- /* Nothing was found */
- return NULL;
+ /* prioritize FACCH over TCH */
+ if (msg_facch != NULL) {
+ msgb_free(msg_tch); /* drop one TCH/FS block */
+ return msg_facch;
}
+
+ return msg_tch;
}
int tx_tchf_fn(struct l1sched_lchan_state *lchan,
--
To view, visit
https://gerrit.osmocom.org/c/osmocom-bb/+/33710
To unsubscribe, or for help writing mail filters, visit
https://gerrit.osmocom.org/settings
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Change-Id: Ie79069e5cc8acd193a326ac9d334fe070552e320
Gerrit-Change-Number: 33710
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: newchange