aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/include/openbsc/gprs_bssgp.h
AgeCommit message (Collapse)AuthorFilesLines
2010-06-10[GPRS] BSSGP/SGSN: Implement Gb-Interface PagingHarald Welte1-0/+27
We now have a function that generates BSSGP PS and CS paging request. It is called from the libgtp code when we receive a GTP packet from the GGSN for a MM context that is in SUSPEND state. We then issue a PS paging request to the Cell with the BVCI where the last RA update was being performed. TODO: We still don't enqueue the GTP packet (and transmit it on paging complete), and we don't rate-limit the paging requests, i.e. every GTP packet will trigger another paging request. We probably also need some kind of logic that marks the phone as UNREGISTERED if it doesn't respond to paging requests for some time.
2010-05-31[GPRS] Include IMSI and DRX params in BSSGP DL-UDHarald Welte1-1/+2
When we send a downlink unit-data request via BSSGP, there is a lot of information that needs to be copied from the mm context, such as the IMSI, DRX parametes, MS radio access parameters, ... This is a quite strange layering violation, since we now need to pass a pointer to the MM ctx from GMM through LLC into BSSGP :(
2010-05-18[GPRS] BSSGP: Use correct values for SIGNALLING and PTM BVCIHarald Welte1-0/+4
2010-05-18[GPRS] SGSN: Activate BSSGP VTY functionsHarald Welte1-0/+3
2010-05-17[GPRS] BSSGP: expose more internal structures / APIHarald Welte1-0/+29
2010-05-13[GPRS] BSSGP: add function declarationHarald Welte1-1/+6
2010-05-11[gprs] gb_proxy: Send proper BSSGP STATUS msg in error caseHarald Welte1-0/+12
In order to reuse the existing bssgp_tx_* functions without pulling in the dependencies of gprs_bssgp.c, we have to move those functions to gprs_bssgp_util.c Furthermore, we can remove gbprox_nsi and replace it with bssgp_nsi, and we can do proper processing of BVC-RESET messages coming from the SGSN on the signalling BVC. In that case we need to send RESET messages to all the BSS.
2010-05-04[gprs] pass BSSGP UL-UNITDATA Cell ID up into GMM layerHarald Welte1-0/+1
BSSGP stores a pointer to the Cell Identifier IE in msgb->cb, which is later used by the GMM layer to identify the cell that has sent a given message. This now also means that the gsm_04_08_gprs.c code is free of any legacy references to msg->trx or struct gsm_bts.
2010-05-04[gprs] Use stdint.h types (uintXX_t instead of u_intXX_t)Harald Welte1-7/+9
libosmocore already uses them, it's time (at least for new code) in openbsc to do the same.
2010-05-04[gprs] SGSN: Expect all Identifiers to be stored at highest levelHarald Welte1-1/+1
We now expect the highest level (actual SGSN GMM code) to know all identifiers for every element in the protocol stack, i.e. TLLI, SAPI, BVCI and NSEI. The layer-inetrnal state is looked up based on those identifiers. The reason for this is to ensure only the highest level state needs to be persistent, while everything else can be regenerated dynamically (e.g. in a SGSN restart)
2010-05-04GPRS: Introduce a GPRS Gb ProxyHarald Welte1-0/+10
The ida of the Gb proxy is to aggregate Gb links with a number of BSS and then present all the BSSGP-VC's together inside one NS-VC to the actual SGSN. The code is not yet expected to be complete.
2010-05-04Create new 'gprs-sgsn' branch on top of 'gprs-conf'Harald Welte1-0/+138
This branch contains the partial SGSN/GGSN implementation that was originally developed as part of the gprs branch.