diff options
author | Pau Espin Pedrol <pespin@sysmocom.de> | 2021-09-17 17:35:34 +0200 |
---|---|---|
committer | Pau Espin Pedrol <pespin@sysmocom.de> | 2021-09-20 10:55:21 +0200 |
commit | 0e3083daf597cb34e12693f7ed9bcc006406f085 (patch) | |
tree | ab6ed11b9bfeaa438180f915cae9343f75f3d46d | |
parent | 402451b3087a004e30d5b774c6a6a82cffbfc5d3 (diff) |
scheduler: Skip Tx DL idle blocks in TRX0 when not in DIRECT_PHY mode
We also want to avoid sending idle blocs in TRX0 to the BTS, so that the
BTS can be aware of blocks being idle and then submitting dummy blokcs
by itself applying required BCCH Carrier power reduction.
Related: SYS#4919
Change-Id: Idd58d2a09c3947098b960cfcb5cd1b7b7bca3d84
-rw-r--r-- | src/gprs_rlcmac_sched.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/gprs_rlcmac_sched.cpp b/src/gprs_rlcmac_sched.cpp index 08f43cd4..405b7dbd 100644 --- a/src/gprs_rlcmac_sched.cpp +++ b/src/gprs_rlcmac_sched.cpp @@ -498,7 +498,13 @@ int gprs_rlcmac_rcv_rts_block(struct gprs_rlcmac_bts *bts, */ const unsigned num_tbfs = pdch->num_tbfs(GPRS_RLCMAC_DL_TBF) + pdch->num_tbfs(GPRS_RLCMAC_UL_TBF); - if (trx != 0 && num_tbfs == 0) + bool skip_idle = (num_tbfs == 0); +#ifdef ENABLE_DIRECT_PHY + /* In DIRECT_PHY mode we want to always submit something to L1 in + * TRX0, since BTS is not preparing dummy bursts on idle TS for us */ + skip_idle = skip_idle && trx != 0; +#endif + if (skip_idle) return 0; if ((msg = sched_dummy())) { /* increase counter */ |