Andreas Eversberg
7d7cf54f39
Packet Downlink Assigment now uses ARFCN/TN of current BTS layout
...
Now the MS receives dowlink LLC frames.
2012-06-25 09:26:15 +02:00
Andreas Eversberg
055340801b
Fixed IMM.ASS message
...
Now packets are reassembled correctly.
2012-06-24 11:46:49 +02:00
Andreas Eversberg
fe411b3cfd
Hack to slow down uplink transfer
2012-06-23 19:35:56 +02:00
Andreas Eversberg
0aed654ac7
Split of L1 interface to be used with OpenBTS or sysmo-BTS
...
The OpenBTS socket functions are moved from main to pcu_l1_if.cpp.
New sysmo_l1_if.cpp is introduced. It used special unix socket interface
to connect to sysmo-BTS. This is required to access CCCH/RACH and info
about cell layout. Traffic is also forwarded via this interface, but
it direct access of L1 baseband DSP will be added soon.
In order to handle ready-to-send requests above l1_if, the transmit
queue (for downlink blocks) is moved to gprs_rlcmac.cpp.
The TBF instance additionally holds TRX and TS info, but this is only
a hack currently. TBF instance requires more details about allocated
ressources in the future.
2012-06-23 10:33:16 +02:00
Andreas Eversberg
f6b7ca5dd4
Adding more OpenBSC object files to Makefile.am
...
This is required, so it works in my environment. Might be revised soon.
2012-06-23 10:17:07 +02:00
Harald Welte
477e79e67e
remove dependencies to openbsc/osmoggsn internals
...
...and link against libosmogb (part of libosmocore.git)
2012-06-18 12:22:18 +08:00
Ivan Kluchnikov
a9e6dc5084
Improvement of TBF management.
...
Added functions for TBF allocation, establishment, data transfer and release management.
Modified TBF structure, added list for several LLC PDUs in one TBF.
Added function gprs_rlcmac_tx_llc_pdus() providing transmission of several LLC PDUs in one TBF to MS.
2012-06-17 08:30:06 +04:00
Ivan Kluchnikov
9b06ff0c4c
Removed all size_t variables. Fixed type of readIndex and writeIndex variables.
...
We use unsigned int type for readIndex and writeIndex parameters in bitvec_read_field() and bitvec_write_field() functions.
2012-06-15 10:13:30 +04:00
Ivan Kluchnikov
856221fd3d
Removed all OpenBTS dependencies. We don't use OpenBTS cout and gsmtap anymore.
2012-06-15 09:31:29 +04:00
Harald Welte
40383dcb46
Makefile.am: Don't link lots of openbsc / sgsn / ggsn internal .o files
...
this is probably a historic relict. None of them should be used, and I
cannot see any actual use of them either.
The only non-library code that we link now is libosmo-gb (ns/bssgp),
which soon will be turned into a real library.
2012-06-14 21:15:59 +08:00
Harald Welte
57f6b0220f
Add auto-foo (partial cleanup, master makefile/configure.ac
2012-06-14 21:05:44 +08:00
Harald Welte
57875a99ac
add .gitignore file
2012-06-14 21:05:16 +08:00
Harald Welte
c5187a1824
move everything to src/ subdirectory
...
The code corresponds to commit a9aa4777cc1144897a77dfb6c5c3d7325705251e
in openbts-p2.8.git (Tue Jun 12 18:14:49 2012 +0400)
2012-06-14 20:48:42 +08:00
Ivan Kluchnikov
6347711736
Fixed gprs_rlcmac_rcv_data_block() function.
...
Countdown Value = 0 means, that PCU received the last data block in TBF and we should ignore all next data blocks.
2012-06-12 18:14:49 +04:00
Ivan Kluchnikov
5e0df9354b
Fixed parsing of BSSGP DL-UNITDATA in gprs_bssgp_pcu_rx_dl_ud() function.
2012-06-12 15:33:52 +04:00
Ivan Kluchnikov
2f69acd0ed
Modified gprs_rlcmac_data_block_parse() function.
...
Implemented singular case of using Length Indicator field, which described in 10.4.14 TS 44.060.
2012-06-12 12:42:16 +04:00
Ivan Kluchnikov
b172b1b18d
Fixed handling of LLC-PDU Length Indicator.
...
Added implementation of Length Indicator, which consists of two octets.
2012-06-07 01:51:49 +04:00
Ivan Kluchnikov
e3594236ff
Modified gprs_rlcmac_segment_llc_pdu() and gprs_rlcmac_tx_dl_data_block() functions.
...
Changed the internal logic of the functions. Implemented singular case of using Length Indicator field, which described in 10.4.14 TS 44.060.
2012-06-07 01:12:29 +04:00
Ivan Kluchnikov
bceb3fbf29
Modified gprs_rlcmac_data_block_parse() function.
...
Changed the internal logic of the function. Fixed handling for case with several LLC PDU in one data block.
2012-06-05 16:56:27 +04:00
Ivan Kluchnikov
b2b8100499
Fixed gprs_rlcmac_rcv_data_block() and gprs_rlcmac_data_block_parse() functions.
...
Added handling for cases with several LLC PDU in one data block and several LLC PDU in one TBF.
2012-06-04 21:57:02 +04:00
Ivan Kluchnikov
c5d8c27513
Fixed maximum length of LLC frame.
2012-06-04 21:55:02 +04:00
Ivan Kluchnikov
3fa42b21ee
Fixed length of BSSGP header.
2012-06-04 19:07:25 +04:00
Ivan Kluchnikov
9c795abac8
Changed Downlink TBF Establishment.
...
We don't use TBF establishment on CCCH and Immediate Assignment message any more, now we establish Downlink TBF during Uplink TBF and use Packet Downlink Assignment message.
Added function gprs_rlcmac_packet_downlink_assignment() and modified TBF management.
2012-05-24 23:12:59 +04:00
Ivan Kluchnikov
0b450c19e7
Modified write_packet_downlink_assignment function.
...
Added timeslot number, timing advance and TSC parameters. Changed structure of Packet Downlink Assignment message.
2012-05-24 22:47:12 +04:00
Ivan Kluchnikov
a21f275035
Fixed RLC/MAC downlink block data length and gprs_rlcmac_tx_dl_data_block function.
2012-05-24 22:35:19 +04:00
Ivan Kluchnikov
a9f1ff2b64
Modified PCU debugging/logging system. Now we use functions from osmocom logging system.
2012-05-24 22:25:06 +04:00
Ivan Kluchnikov
6043718c73
Added PCU debugging/logging support code based on osmocom logging system.
2012-05-24 22:07:15 +04:00
Ivan Kluchnikov
835f91e8f8
We don't use OpenBTS bit vectors in PCU anymore. All OpenBTS bit vectors are replaced by Osmocom bit vectors.
2012-04-30 18:00:36 +04:00
Ivan Kluchnikov
962f97b21c
Additional functions for Osmocom bit vector abstraction.
2012-04-30 17:51:23 +04:00
Ivan Kluchnikov
5310d4542c
L1 Interface (PCU side): Added functions for handling PhConnectInd and PhRaInd primitives.
...
Added functions for writing and sending Immediate Assignment message.
Modified TBF managment for handling Channel Request and Immediate Assignment messages.
2012-04-17 22:00:31 +04:00
Ivan Kluchnikov
27482ba371
Added structure for GsmL1_PhConnectInd_t primitive.
2012-04-17 20:36:44 +04:00
Ivan Kluchnikov
192e9c1b67
Fixed: wrong sizeof value for malloc().
2012-04-12 15:27:39 +04:00
Ivan Kluchnikov
61a33f7c7a
Added support of osmo_timers and osmo_gsm_timers for TBF.
2012-04-12 15:22:06 +04:00
Ivan Kluchnikov
ff447cdf89
Added gsm_timer.h and gsm_timer.cpp files to Makefile.am.
2012-04-12 15:16:23 +04:00
Ivan Kluchnikov
657856279b
Added GSM timer handling routines. GSM timer is the same as osmo_timer, but it uses frame numbers instead of seconds.
2012-04-12 14:49:02 +04:00
Ivan Kluchnikov
4277f0cdbc
L1 Interface (PCU side): Added function for handle phReadyToSendInd primitive. Added variable and functions for storage current FN.
2012-04-12 14:24:35 +04:00
Ivan Kluchnikov
8b0e8e3951
Changed parameters for Downlink Immediate Assignment Rest Octets.
...
We shouldn't use TBF Starting time.
2012-04-11 22:33:37 +04:00
Ivan Kluchnikov
74b459fda4
Fixed: We should use guint8 array instead of guint32 and guint64 variables for decoding and encoding CSN1 bitmap.
2012-04-11 22:02:15 +04:00
Ivan Kluchnikov
1efac073e8
Fixed: endif statement is missed in gsmL1prim.h.
2012-04-11 21:39:53 +04:00
Ivan Kluchnikov
e3a059656f
Added L1 interface between PCU and OpenBTS for communication (PCU side).
2012-03-18 15:48:51 +04:00
Ivan Kluchnikov
c320d86052
Fixed bugs in handling of TBFs.
2012-03-18 15:04:48 +04:00
Ivan Kluchnikov
8ee6051b72
Separation of GPRS PCU application from main OpenBTS code and changing PCU architecture (First step).
...
1. pcu - main program for GPRS PCU.
2. gprs_rlcmac - RLC/MAC layer implementation for PCU. Added list for TBF, TBF allocation, establishment, release.
3. gprs_bssgp_pcu - BSSGP protocol implementation for PCU.
4. pcu_l1_if - interface for communication PCU application with OpenBTS.
2012-03-05 19:24:57 +04:00
Ivan Kluchnikov
3450640624
Added packet uplink and downlink assignment, packet uplink ack, RLC/MAC Data and Control blocks dispatchers, gsmtap support for LLC PDUs.
2012-02-20 15:24:16 +04:00
Ivan Kluchnikov
8aa4c52d2e
Added segmentation of LLC PDUs into RLC data blocks.
2012-02-20 15:15:12 +04:00
Ivan Kluchnikov
92ac6379aa
Added encoder for RLC/MAC downlink data control block.
2012-02-20 15:04:25 +04:00
Ivan Kluchnikov
5c2f9fbfa3
Added RLC/MAC application.
...
- Segmentation of upper layer PDUs into RLC data blocks and re-assembly of RLC data blocks into upper layer PDUs.
- Segmentation of RLC/MAC control messages into RLC/MAC control blocks and re-assembly of RLC/MAC control messages from RLC/MAC control blocks.
- NS and BSSGP protocol implementation for communication with OpenSGSN.
- UDPSocket for communication with OpenBTS.
2012-02-05 02:28:42 +04:00
Ivan Kluchnikov
d5f0133eb2
Added function for decoding GPRS RLC/MAC uplink data block.
2012-02-05 01:42:57 +04:00
Ivan Kluchnikov
9c2c699435
Fixed GPRS/Makefile.am. Libgprs.la for RLCMACTest was lost.
2012-01-05 22:37:20 +03:00
Ivan Kluchnikov
487a141b9d
Moved CSN1 and RLC/MAC code to new GPRS directory.
2011-12-21 13:17:53 +03:00