Made FreeSWITCH dialplan more generic

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@3341 19bc5d8c-e614-43d4-8b26-e1612bc8e597
Had error code backwards for SR, caused spurious SR failure messages. Fixed.

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@3356 19bc5d8c-e614-43d4-8b26-e1612bc8e597
fixed FreeSWITCH scripts to now be more generic and handle errors better.

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@3359 19bc5d8c-e614-43d4-8b26-e1612bc8e597
moved subscriberRegistry code around SIPInterface so that it only updates on an outgoing REGISTER, INVITE, or MESSAGE

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@3361 19bc5d8c-e614-43d4-8b26-e1612bc8e597
FPGA source code.

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@3457 19bc5d8c-e614-43d4-8b26-e1612bc8e597
$ dropped by the network by retransmitting.

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@3677 19bc5d8c-e614-43d4-8b26-e1612bc8e597
Adding MultiARFCN support to core.

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@3688 19bc5d8c-e614-43d4-8b26-e1612bc8e597
Adding MultiARFCN support to RAD1 radio.

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@3689 19bc5d8c-e614-43d4-8b26-e1612bc8e597
New-style socketed CLI support. Hooray histories!

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@3690 19bc5d8c-e614-43d4-8b26-e1612bc8e597
Missed a small number of files

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@3691 19bc5d8c-e614-43d4-8b26-e1612bc8e597
attempting to fix #937 in public, basically forgot to check if sip_method exists.

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@3700 19bc5d8c-e614-43d4-8b26-e1612bc8e597
missed a config variable

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@3711 19bc5d8c-e614-43d4-8b26-e1612bc8e597
Alexander's build fixes

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@3722 19bc5d8c-e614-43d4-8b26-e1612bc8e597
Fixed sendsms bug, needed to move to non-interactive version

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@3728 19bc5d8c-e614-43d4-8b26-e1612bc8e597
multi-arfcn, sigproc: add signal processing core

The core signal processing components consist of C based implemen-
tations of operations including convolution, FFT, and interleaving.

The majority of operations are complex vector based and setup in a
form suitable for SIMD optimization in a straightforward manner.

Signed-off-by: Thomas Tsou <ttsou@vt.edu>
multi-arfcn, trx: add header wrappers for radio interface

Signed-off-by: Thomas Tsou <ttsou@vt.edu>
multi-arfcn, trx: add polyphase channelizer and synthesis filter

Polyphase channelizer allows for the use of 'M' independent
channels over a single physical device. In contrast to a
direct frequency translate and filter approach, the polyphase
implementation shifts processing from the high sampling rate
side and allows operation at the lower, more efficient
channel rate.

Multirate channelizer design consists of two stages. From the
perspective of the receive side, the first stage consists of
feeding the receive signal - sampled at 'M' times the channel
spacing - through a 'M' path polyphase filter. The output of
the filter consists of all channels aliased down to baseband.
Phase alignment is performed to separate the alised signals;
an FFT is used for efficient implementation.

In the second stage, the 'M' separated channels at the output
of the FFT are selectively downsampled from channel rate to
the GSM symbol rate. Another polyphase filterbank is used for
this purpose.

The transmit side "synthesis" filter combines 'M' channels
into a single output channel and is the inverse of the
aforementioned channelization process.

Signed-off-by: Thomas Tsou <ttsou@vt.edu>
multi-arfcn, trx: modify radio interface for multi-channel use

The radio interface needs to feed the device I/O buffers
synchronously in order to drive the channelizer. Asynchronous
channel access occurs opposite the radio interface through
a bank of thread-safe FIFO's or priority queue's on receive
and transmit sides respectively.

Setup 'M' channels and allow only a subset to be active at a
given time. When a channel is unused, there is no need to
feed the particular receive FIFO or pull data from the
channel priority queue.

Signed-off-by: Thomas Tsou <ttsou@vt.edu>
multi-arfcn, trx: modify single channel resampling for new sigproc

Use the SIMD optimized vector and signal processing calls. Also
plug into channel '0' of the multi-channel radio interface. We
also get additional speed by not allocating or shifting samples
memory during operation.

Signed-off-by: Thomas Tsou <ttsou@vt.edu>
multi-arfcn, trx: add multi-channel radio I/O backend

This implementation of the radio interface push and pull
operations runs a high rate sample stream through a
resampling channelizer to transparently present 'M'
channels to the radio interface. New channelizer and
synthesis filter classes are used for this task.

Signed-off-by: Thomas Tsou <ttsou@vt.edu>