diff options
author | Pravin Kumarvel <pmanohar@radisys.com> | 2016-12-29 20:05:28 +0530 |
---|---|---|
committer | Pravin Kumarvel <pmanohar@radisys.com> | 2016-12-29 20:05:28 +0530 |
commit | 17ee61703200271cfe86486c007b1d2d03ba24ee (patch) | |
tree | 24168c9e70d36164f4893b876b24fb0cf75d0fb1 /src/tbf.cpp | |
parent | 366931baa646a7e7fb74e9021f37d5de1c0df033 (diff) |
Add compression support in EGPRS PUAN
This adds compression of bitmap in PUAN. The compressed bitmap
is used only if the number of bits in the bitmap does not fit in
the message and there is a gain after compression.
The algorithm is part of libosmocore and so there is dependency
on the libosmocore for compilation.
The algorithm is tested on integration setup by forcing compression.
Diffstat (limited to 'src/tbf.cpp')
-rw-r--r-- | src/tbf.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/tbf.cpp b/src/tbf.cpp index 0e4d6cc..c4ff1b6 100644 --- a/src/tbf.cpp +++ b/src/tbf.cpp @@ -808,14 +808,16 @@ struct gprs_rlcmac_ul_tbf *tbf_alloc_ul_tbf(struct gprs_rlcmac_bts *bts, if (egprs_ms_class > 0 && bts->egprs_enabled) { tbf->enable_egprs(); tbf->m_window.set_sns(RLC_EGPRS_SNS); - /* TODO: Allow bigger UL windows when CRBB encoding is supported */ - tbf->m_window.set_ws(RLC_EGPRS_MIN_WS); setup_egprs_mode(bts, ms); LOGP(DRLCMAC, LOGL_INFO, "Enabled EGPRS for %s, mode %s\n", tbf->name(), GprsCodingScheme::modeName(ms->mode())); } rc = setup_tbf(tbf, ms, use_trx, ms_class, egprs_ms_class, single_slot); + + if (tbf->is_egprs_enabled()) + tbf->egprs_calc_ulwindow_size(); + /* if no resource */ if (rc < 0) { talloc_free(tbf); |