aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/include/openbsc/gsm_04_08_gprs.h
diff options
context:
space:
mode:
authorJacob Erlbeck <jerlbeck@sysmocom.de>2015-01-19 08:27:34 +0100
committerHolger Hans Peter Freyther <holger@moiji-mobile.com>2015-01-26 08:41:52 +0100
commit79af67d7c02a25e36146369b60f7f25c9655c862 (patch)
tree468c21be4858535fa99bad0714b05feae2475490 /openbsc/include/openbsc/gsm_04_08_gprs.h
parent37184900e7f4f8566fbd71914f55b3cc8c0196e9 (diff)
gprs: Add GPRS timer conversion functions
Currently, all GPRS timer values are hard-coded. To make these values configurable in seconds and to show them, conversion functions from and to seconds are needed. This patch adds gprs_tmr_to_secs and gprs_secs_to_tmr_floor. Due to the limited number of bits used to encode GPRS timer values, only a few durations can be represented. gprs_secs_to_tmr_floor therefore always returns the timer value that represents either the exact number (if an exact representation exists) or the next lower number for that an exact representation exists. Sponsored-by: On-Waves ehf
Diffstat (limited to 'openbsc/include/openbsc/gsm_04_08_gprs.h')
-rw-r--r--openbsc/include/openbsc/gsm_04_08_gprs.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/openbsc/include/openbsc/gsm_04_08_gprs.h b/openbsc/include/openbsc/gsm_04_08_gprs.h
index fb30dff96..3eec98365 100644
--- a/openbsc/include/openbsc/gsm_04_08_gprs.h
+++ b/openbsc/include/openbsc/gsm_04_08_gprs.h
@@ -116,9 +116,12 @@ enum gsm48_gprs_tmr_unit {
GPRS_TMR_2SECONDS = 0 << 5,
GPRS_TMR_MINUTE = 1 << 5,
GPRS_TMR_6MINUTE = 2 << 5,
- GPRS_TMR_DEACTIVATED = 3 << 5,
+ GPRS_TMR_DEACTIVATED = 7 << 5,
};
+#define GPRS_TMR_UNIT_MASK (7 << 5)
+#define GPRS_TMR_FACT_MASK ((1 << 5)-1)
+
/* Chapter 9.4.2 / Table 9.4.2 */
struct gsm48_attach_ack {
uint8_t att_result:4, /* 10.5.5.7 */