summaryrefslogtreecommitdiff
path: root/gsm-receiver/src/lib/decoder/gsmstack.h
diff options
context:
space:
mode:
authorDieter Spaar <spaar@mirider.augusta.de>2010-07-29 20:48:06 +0200
committerHarald Welte <laforge@gnumonks.org>2010-07-29 20:48:06 +0200
commit9cf449409f4e10295b1a675c957e63002b193de1 (patch)
tree6b03917c6b37041af0334b107317b2a214a875e4 /gsm-receiver/src/lib/decoder/gsmstack.h
parentb0696097777ce36c23509a6b4f274f1ab3f676eb (diff)
Add function to get GSMTAP channel type based on timeslot type + frame number
Diffstat (limited to 'gsm-receiver/src/lib/decoder/gsmstack.h')
-rw-r--r--gsm-receiver/src/lib/decoder/gsmstack.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/gsm-receiver/src/lib/decoder/gsmstack.h b/gsm-receiver/src/lib/decoder/gsmstack.h
index 62427d2..ea84d60 100644
--- a/gsm-receiver/src/lib/decoder/gsmstack.h
+++ b/gsm-receiver/src/lib/decoder/gsmstack.h
@@ -9,10 +9,34 @@ extern "C" {
#include <linux/if_ether.h>
#include "interleave.h"
+enum BURST_TYPE {
+ UNKNOWN = 0,
+ FCCH,
+ PARTIAL_SCH, //successful correlation, but missing data ^
+ SCH,
+ CTS_SCH,
+ COMPACT_SCH,
+ NORMAL,
+ DUMMY,
+ ACCESS
+};
+
+enum TIMESLOT_TYPE {
+ TST_UNKNOWN = 0,
+ TST_OFF, /* timeslot is not decoded */
+ TST_FCCH_SCH_BCCH_CCCH_SDCCH4,
+ TST_FCCH_SCH_BCCH_CCCH,
+ TST_SDCCH8,
+ TST_TCHF
+};
+
struct gs_ts_ctx {
/* FIXME: later do this per each ts per each arfcn */
unsigned char burst[4 * 58 * 2];
+ unsigned char burst2[8 * 58 * 2]; /* buffer for FACCH on TCH */
int burst_count;
+ int burst_count2; /* counter for FACCH on TCH */
+ enum TIMESLOT_TYPE type;
};
typedef struct
personal git repositories of Harald Welte. Your mileage may vary