diff options
author | Philipp Maier <pmaier@sysmocom.de> | 2017-03-09 16:07:45 +0100 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2017-03-15 13:37:55 +0000 |
commit | 339b9329ff7be01d03c3a55301e1ef1a2ea57953 (patch) | |
tree | 68b3ae23e83d3a972fb6aec3a356c1e225ec1575 /include | |
parent | 9dfdf54d30079146627105c7f764e16d486559ba (diff) |
l1sap: fix rach reason (ra) parsing
The ra parameter indicates the reason for the received rach
request. osmo-bts uses the ra parameter to determine if the
received rach request is packet access related. If yes,
osmo-bts will forward the request to the PCU.
In order to determine if the ra is packet related or not,
the higher 4 bits must be equel to 0x7 and at least one of
the lower 4 bits must be zero.
The current method lacks checking of the lower 4 bits. It
would also accept 0b01111111, which is reserved for future
use. This commit extends the check to take also the last
4 bits into accound.
See also: 3GPP TS 04.08, Table 9.9
Change-Id: I5eb88c42a91e158d9bfa4105ec9636035baf8959
Diffstat (limited to 'include')
-rw-r--r-- | include/osmo-bts/l1sap.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/osmo-bts/l1sap.h b/include/osmo-bts/l1sap.h index dcebc1d8..0e564068 100644 --- a/include/osmo-bts/l1sap.h +++ b/include/osmo-bts/l1sap.h @@ -24,7 +24,7 @@ #define L1SAP_IS_CHAN_AGCH_PCH(chan_nr) ((chan_nr & 0xf8) == 0x90) /* rach type from ra */ -#define L1SAP_IS_PACKET_RACH(ra) ((ra & 0xf0) == 0x70) +#define L1SAP_IS_PACKET_RACH(ra) ((ra & 0xf0) == 0x70 && (ra & 0x0f) != 0x0f) /* CCCH block from frame number */ #define L1SAP_FN2CCCHBLOCK(fn) ((fn % 51) / 5 - 1) |