bts: Fix Decoding EGPRS MultislotClass from 11-bit EGPRS PACKET CHANNEL REQUEST

In osmo-pcu datatructures, the variables holding multislot classes
simply contain an integer referring to the multislot class number,
instead of coding from 3GPP TS 44.060 Table 11.2.5.3 and Table
11.2.5a.3.

So coding Multislot class 3 is stored as 0x03 in osmo-pcu variables,
while in 3GPP TS 44.060 coding it's coded as 0x02 (N-1).
This allows us using value 0x00 to designate a "yet unknown (EGPRS) Multislot
class".
Hence, we need to add 1 to the decoded value to match our data
structures.

Change-Id: Id3b121272bb7e84c0542ae9b4ce09598c6054edd
This commit is contained in:
Pau Espin 2020-05-08 15:12:56 +02:00
parent 9ee90d2323
commit 98eb03c391
1 changed files with 1 additions and 1 deletions

View File

@ -676,7 +676,7 @@ uint32_t BTS::rfn_to_fn(int32_t rfn)
static inline uint16_t egprs_mslot_class_from_ra(uint16_t ra, bool is_11bit)
{
if (is_11bit)
return (ra & 0x3e0) >> 5;
return ((ra & 0x3e0) >> 5) + 1;
/* set EGPRS multislot class to 0 for 8-bit RACH, since we don't know it yet */
return 0;