Age | Commit message (Collapse) | Author | Files | Lines |
|
Merge is based on jolly_new branch with two modifications.
1. Modified PCU L1 interface.
pcu_l1_if.cpp - common functions for tx and rx messages on L1 interface.
sysmo_sock.cpp - SYSMO-PCU socket functions.
openbts_sock.cpp - OpenBTS-PCU socket functions.
pcuif_proto.h - L1 interface's primitives.
2. Modified encoding of RLC/MAC Control messages, now we use structures and encode_gsm_rlcmac_downlink() function for encode control blocks (without hand-coding).
|
|
The IMSI is used to define paging group on which it is sent.
This is tested with MS that requires correct paging group.
|
|
If connection fails, a retry timer is used to try again. This is not an
error.
|
|
Only when using LOGL_DEBUG, every detailled information is displayed.
When using LOGL_INFO, a summary of the process is displayed.
When using LOGL_NOTICE, only errors and warnings like timeouts
or invalid received informations are displayed.
When using LOGL_ERROR, only local error like software errorss are
displayed.
|
|
The pseudo length may not include the rest-octets, so it stays compatible
to non-GPRS phones.
At pcu_l1_if.c (OpenBTS) no pseudo length is given, so the frame is
only 22 bytes long. I could not test if it works.
|
|
|
|
The hack for resetting BSSGP instance is removed and now performed
whenever the NS state changes to UNBLOCKED.
The BSSGP instance is now created only once, as it should be.
Received STATUS messages are ignored as they should be.
The creation and destruction of BSSGP/NS instances is now handled by
layer 1 interface alone.
|
|
|
|
The option added is required to change PLMN that is announced to SGSN.
This allows BTS to have a different PLMN.
(Usefull for roaming in conjunction with simlock.)
|
|
For OpenBTS interface and BSSGP, fixed values are still used.
|
|
These informations provide RAI, timers, counters and other attributes to
the BSSGP and RLC/MAC processes.
The attributes are stored in gprs_rlcmac_bts global structure.
|
|
...and link against libosmogb (part of libosmocore.git)
|
|
|
|
Added functions:
- gprs_bssgp_pcu_rx_paging_ps() for handling paging message from BSSGP;
- write_paging_request() for writing paging request message;
- gprs_rlcmac_paging_request() and pcu_l1if_tx_pch() for sending paging request message to BTS.
|
|
We shouldn't use paging procedure for DL TBF establishment, if we didn't receive paging message from BSSGP.
|
|
|
|
messages.
Removed hand-coding of RLC/MAC Control messages, now we use structures and encode_gsm_rlcmac_downlink() function for encode control blocks.
|
|
|
|
It uses history buffer and sends ack/nack control messages about received
blocks. It defragments the blocks and forwards them to upper layer. It
does content resolution and ignores other MS. It sends final ACK after
all blocks have been sucessfully received. Timers are used to detect
loss of uplink, and repeat lost final ACK.
|
|
The scheduler is triggered at ready-to-send-requesst. It schedules
control blocks, data block and dummy blocks, depending on priority.
It provides upstream ressource by setting USF. The ressources are
assigned, if required. The ressources are dispatched round-robin.
In case of polling, the upstream ressource is given to MS at the
time it will respond to polling request.
|
|
UL TBF should be released before DL TBF establishment on CCCH.
Added delay after transmitting Immediate Assignment.
|
|
Merged jolly branch with master, fixed conflicts.
|
|
Now the MS receives dowlink LLC frames.
|
|
Now packets are reassembled correctly.
|
|
|
|
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.
|
|
This is required, so it works in my environment. Might be revised soon.
|
|
...and link against libosmogb (part of libosmocore.git)
|
|
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.
|
|
We use unsigned int type for readIndex and writeIndex parameters in bitvec_read_field() and bitvec_write_field() functions.
|
|
|
|
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.
|
|
|
|
|
|
The code corresponds to commit a9aa4777cc1144897a77dfb6c5c3d7325705251e
in openbts-p2.8.git (Tue Jun 12 18:14:49 2012 +0400)
|
|
Countdown Value = 0 means, that PCU received the last data block in TBF and we should ignore all next data blocks.
|
|
|
|
Implemented singular case of using Length Indicator field, which described in 10.4.14 TS 44.060.
|
|
Added implementation of Length Indicator, which consists of two octets.
|
|
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.
|
|
Changed the internal logic of the function. Fixed handling for case with several LLC PDU in one data block.
|
|
Added handling for cases with several LLC PDU in one data block and several LLC PDU in one TBF.
|
|
|
|
|
|
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.
|
|
Added timeslot number, timing advance and TSC parameters. Changed structure of Packet Downlink Assignment message.
|
|
function.
|
|
logging system.
|
|
|
|
replaced by Osmocom bit vectors.
|