Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
|
|
When looking for the gsm_bts of a neighbor cell, use BSIC and ARFCN
tuple rather than just ARFCN for better identification purpose.
|
|
We will need this for the actual handover algorithm implementation, as we will
only know the current BTS and the BCCH ARFCN of the strongest cell in the
measurement reports. Using this new function, we can resolve the matching
gsm_bts.
|
|
Since we are keeping a bitvec of the neighbor cells, we can now use
bitvec_get_nth_set_bit() to determine the ARFCN for each reported
cell in the 04.08 MEASUREMENT REPORT.
|
|
This is particularly important for determining the ARFCN for cells
reported in 04.08 MEAS REP.
|
|
We use a 1024-bit-sized bitvec to generate the BA and neighbor frequency list.
This bitvec is still generated from the list of all BTS's inside the BSC, but
this patch is the first step to generalize this, i.e. generate arbitrary
neighbor lists.
|
|
* introduce a new bitvec_get_bit_pos() function to determine the bit value
at a given position inside a bit vector
* make sure bitvec_{get,set}_bit_pos() share code as possible
|
|
Our frequency lists for GSM900 were completely wrong, as the bit map 0
encoding was not used correctly. This patch should fix it.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
We now support different RRLP modes (including "none" to disable RRLP),
you can configure it via "rrlp mode" in the "network" section of
openbsc.cfg.
|
|
As we currently really only deal with voice/speech calls and don't
support FAX and DATA (CSD) calls, we now gracefully reject them.
|
|
Fix minor bug with speech calls in case of NECI=1
|
|
In some cases, we can try to close the lchan a bit faster than our
lchan release timeout:
* After we've sent LOC UPD ACCEPT and MM INFO
* After a phone has confirmed the RELEASE of a call
|
|
The rationale is as following:
If we have NECI=1, then the phone will request a channel with CHREQ
"0100xxxx Originating speech call from dual-rate mobile station when TCH/H is
sufficient and supported by the MS for speech calls", then we will try to
allocate a TCH/H [as it is sufficient].
However, if there are no free TCH/H slots on the BTS, we abandon and can't
handle the MO call at all :(
|
|
|
|
|
|
allow setting of 'cell reselection hysteresis' and 'rxlev access min' from VTY
for experiments with cell reselection.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
which fixes some compile warnings at some callers.
|
|
|
|
argument
|
|
|
|
We might read or write on the OML link when the BTS is
reset and will get SIGPIPE interrupt and be gone... Just
ignore the SIGPIPE we will get the "exception" on the next
run of bsc_select and kill the (old) OML link.
|
|
|
|
We have to make sure to skip the global list header
|
|
|
|
|
|
|
|
With ip.access, in case of TCH/H, we have one RTP stream for each half-slot
(lchan), not just one per on-air timeslot. This is quite different from
a classic BTS where the TRAU frames of the two TCH/H channels would be
part of the same 16k sub-slot in a E1 timeslot.
|
|
Before this commit, OpenBSC used templates for the SYSTEM INFO
1, 2, 3, 4, 5 and 6 messages. Those templates were patched in
various places to reflect the network config like ARFCN.
Now, we actually generate those SI messages ourselves, using
values from the configuration file, and even calculating neighbor
cell lists.
All bts'es that you have configured in OpenBSC will end up in
the neighbor cell list - which should be more than sufficient for
the current small-single-site networks.
|
|
This avoids broken pcap files with partial packets due to non-flushed
buffers.
|
|
This is used to notify various parts of OpenBSC that we're shutting
down.
|
|
Without those default values, old config files will no longer work
after commit 23975e718fd456ff8be7effbb915903f1bc173be
|
|
This patch introduces the S_LCHAN_MEAS_REP signal which is used to export
measurement reports as input to the yet-to-be-written handover algorithm.
|
|
Code to implement handover control logic. A yet-to-be-implemented
handover algorithm will call bsc_handover_start(old_lchan, new_bts)
to start the handover process.
|
|
This introduces the signals S_LCHAN_ACTIVATE_{ACK,NACK} and
S_LCAN_HANDOVER_{FAIL,COMPL,DETECT} as well as code that actually issues
those signals. The signals are relevant for a yet-to-be-written handover
control logic.
|
|
This is needed by a yet-to-be-implemented handover algorithm, after
it has allocated a new lchan for the MS. Also missing: handling
the actual HANDOVER COMPLETE / FAIL messages in response.
|
|
|
|
This patch extends struct gsm_meas_rep into a complete structure containing all
information from both uplink and downlink measurement results/reports.
This is a first step to provide this complete measurement data as a C structure
into a to-be-implemented handover decision algorithm.
|