diff options
author | Harald Welte <laforge@gnumonks.org> | 2008-12-01 01:19:19 +0530 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2008-12-01 01:19:19 +0530 |
commit | fd405f799425b6832a0c9cc7a56b07f43288b8b1 (patch) | |
tree | c02cdfa014a63339950a98ef7e3bdbebb44adbf5 /gsmstack/gsmstack.c | |
parent | 753c2fc0f6861f6a3dcf6e5520343d93b5ed2317 (diff) |
gsmstack: add new unfinished GSM burst/channel demultiplex
This is some unfinished work on a new codebase for 'proper'
demultiplex of all the various physical and logical channel
types.
Basically this includes everything needed to get from the
differential-decoded bursts up to the MAC blocks that can
be passed up to layer 2.
Diffstat (limited to 'gsmstack/gsmstack.c')
-rw-r--r-- | gsmstack/gsmstack.c | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/gsmstack/gsmstack.c b/gsmstack/gsmstack.c new file mode 100644 index 0000000..1690d15 --- /dev/null +++ b/gsmstack/gsmstack.c @@ -0,0 +1,31 @@ +#include <stdlib.h> +#include <stdio.h> +#include <string.h> +#include <malloc.h> +#include <errno.h> + +#include "gsmstack.h" + + +struct gsm_rf_chan *gsm_init_rfchan(unsigned int arfcn) +{ + struct gsm_rf_chan *rf; + int i; + + rf = malloc(sizeof(*rf)); + if (!rf) + return NULL; + memset(rf, 0, sizeof(*rf)); + + rf->arfcn = arfcn; + + for (i = 0; i < NR_TIMESLOTS; i++) { + struct gsm_phys_chan *pchan; + + pchan = rf->phys_chan[i]; + pchan->timeslot = i; + pchan->rf_chan = rf; + } + + return rf; +} |