aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/bts.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/bts.cpp b/src/bts.cpp
index 6578e06f..1d073aa8 100644
--- a/src/bts.cpp
+++ b/src/bts.cpp
@@ -675,7 +675,8 @@ uint32_t BTS::rfn_to_fn(int32_t rfn)
*/
static inline uint8_t egprs_mslot_class_from_ra(uint16_t ra, bool is_11bit)
{
- if (is_11bit)
+ /* EGPRS multislot class is only present in One Phase Access Request */
+ if (is_11bit && (ra >> 10) == 0x00) /* .0xx xxx. .... */
return ((ra & 0x3e0) >> 5) + 1;
/* set EGPRS multislot class to 0 for 8-bit RACH, since we don't know it yet */