This patch prepares for adding MT data call support:
* Move handling of the Bearer Capability IE into a function.
* Check transfer mode and coding standard in the received BCap.
Change-Id: I3a5cac8c35ba6b7bdc5fcb077690b32848747756
Related: OS#4396
Even though the function works as expected and *can* return -1,
which is first casted to unsigned and then back to signed, let's
make the code less confusing by returning -1 straightaway.
Change-Id: I3206fcfa9ab4cac85a1f0f2a4de3250b25f9058f
Related: OS#4396
Use new_mm_state() to leave group mode. This will trigger IMSI detach
when returning to IDLE mode, if it has been delayed.
Related: OS#5364
Change-Id: I3c83c9e0fe10b35d60d125df6929fcb5ddc35f1a
Cell selection is not supported during group receive mode. If it
happens anyway, give an error message and select correct sub-state.
This fixes I05957182a57423ad947ab200b52f65fde859e110.
Related: OS#5364 and OS#6214
Change-Id: Iea6fe623956003130000c59ec0e1b24b3177052d
These states are:
GSM48_MM_SST_NORMAL_SERVICE
GSM48_MM_SST_ATTEMPT_UPDATE
GSM48_MM_SST_LIMITED_SERVICE
GSM48_MM_SST_LOC_UPD_NEEDED
GSM48_MM_SST_PLMN_SEARCH (limited service)
GSM48_MM_SST_PLMN_SEARCH_NORMAL
If the service is limited, group/bcast calls can be joined, but uplink
access is not allowed.
Related: OS#5364
Change-Id: I2f8ff65f6e101972f9b1760013983d00ae6e7760
The loopback mode is currently broken because the DL info header
remains present, thus becoming a bogus "part" of the speech frame.
Change-Id: I1af187b4bc5f5a99bc7f7634d90bf14ad3db0e49
Related: OS#4396
Even if the DSP marks a traffic frame as bad (B_BFI), we still want
to deliver something to the upper layers, just like we do for FACCH.
Change-Id: I559793a3506089b1c1758ee7022cceb7753afb30
Related: OS#4396
* Reset both A_DD_0 and A_DD_1 headers, like in the case of FACCH.
* Reduce nesting, fix minor coding style issues.
* Add a FIXME for proper B_BFI checking.
Change-Id: Ie4faf386f54720888e73171bee26f93dfa0562d5
Related: OS#4396
The upper layers usually request either of the two configurations:
* (AUDIO_TX_MICROPHONE | AUDIO_RX_SPEAKER) - in this configuration
the phone (PHY) is both the origin and the destination of the TCH
frames. DL frames are played via the built-in speaker; UL frames
recorded using the built-in microphone.
* (AUDIO_TX_TRAFFIC_REQ | AUDIO_RX_TRAFFIC_IND) - in this case
the upper layers (host side) become the origin and the destination
of the TCH frames. The built-in speaker and microphone are
expected to be disabled.
However, when using the second configuration, one can still hear
DL TCH frames being played by the built-in speaker. The built-in
microphone does not seem to be causing any issues, but still we
definitely don't want the vocoder to interfere with the host.
Change-Id: I390db1889f079dea8112794c3e039a9136b897df
Related: OS#4396
Note that despite the VTY interface offers various channel type
filtering facilities, the actual filtering is not implemented.
This patch simply brings PS domain in consistency with CS domain:
the UL and DL GPRS blocks are now being sent over GSMTAP without
any filtering, just like GSM MAC blocks.
Change-Id: I338205bee44fe182233efc5619a3d528cd07d932
Related: OS#5500, OS#6209
Even if follow-on proceed is not supported, the warning message about
not beeing supported should only show when the follow-on proceed
information element is included in the location update accept messages.
Change-Id: I2b1aceb8b85bdd9faabe354501f9036f1fc6fe33
The order of ARFCNs are described in TS 44.018 §10.5.2.20.
The function arfcn_from_freq_index() is re-used to get the ARFCNs in
correct order for the report.
Change-Id: I0674467eb5a38a341cf65f95a25aa5f7232df069
The selection of ARFCN is described in TS 44.018 §10.5.2.20.
The frequencies found in SI5 and SI5bis are counted first, in the
following order: ARFCN 1..1023,0.
The frequencies found in SI5ter are counted afterwards, in the following
order: ARFCN 1..1023,0.
Related: OS#5782
Change-Id: I090d84a5550d89743e8f5a886f400df6483f50d7
I forgot to permit the loop state transmission, so the modem app
gets stuck in GRR_ST_PACKET_ACCESS is no IMM ASS is received...
Change-Id: I059d2929f7f724cfe26935bf35c167e60157451f
Fixes: 9978b00e "modem: grr: implement RACH.req retransmission"
The "support" flags must be copied to the settings, because they are
enabled by default and may be omitted in the VTY config.
Related: OS#5364
Change-Id: I81575dd3f2ade70101df32935a1c3d5469327577
Get rid of goto and double switch/case by putting connection handling
code into a separate function.
Change-Id: I12454cab06c105ccd9e2495e3a6f0640f2884885
This is required, because different protocols may share the same
callref, but use different protocols. E.g. a voice group call can share
the same callref with a voice broadcast call, but these calls are
different transactions.
Related: OS#5364
Change-Id: Ifea3a81aae3b4ae897851f867b13fa987c8cbe11
This allows the upper layer to estabish and release connection on the
uplink of a voice group call.
Related: OS#5364
Change-Id: I9b62eef5d877e5d9dcf349717efd2cce28862c58
This allows reception of VGCS and VBS calls. A special sub-state is used
to differentiate between IDLE mode and group receive mode. Later it can
be used to differentiate between dedicated and group transmit mode.
Related: OS#5364
Change-Id: Ia7d806b354fb3be5729bff8ac9aa1c7ad7a8b539
The gsm48_rr_rx_acch function receives FACCH/SACCH. This is not only
used for system information on SACCH, but also for short header messages
and regular UI messages on TCH.
Related: OS#5364
Change-Id: I39b27396a31137b3c4bdcb40dccdf3de60458fe2
The patch "ASCI: Add GCC/BCC (call control) to mobility management"
breaks reception of MM messages. No MM connection setup is possible.
This patch fixes the issue.
Change-Id: I263739bb0220d19f14114714fe9d82505bdbd267
This patch includes new messages and description. The are used to bring
RR layer into group receive mode and from there in group transmit mode
and back.
Related: OS#5364
Change-Id: I1abd56c63d15af1cff8bde7589a571cb5bb5506f