1984 Commits

Author SHA1 Message Date
Jake Hamby
3e3c3f80a9 Add support for CMAS warning notifications over CDMA.
Refactor SMS Cell Broadcast support to enable receiving CMAS warning
notifications over CDMA. The CellBroadcastReceiver app must also be
updated with the corresponding change. All cell broadcasts are now
delivered as a Parcelable SmsCbMessage object in the "message" extra
of the SMS_CB_RECEIVED_ACTION or SMS_EMERGENCY_CB_RECEIVED_ACTION,
instead of as a GSM/UMTS "pdu" byte array.

Existing functionality for ETWS and CMAS alerts over GSM/UMTS continues
to be supported using the new radio-technology independent SmsCbMessage
and related objects. Test cases are added to verify that valid and
invalid broadcast data is handled appropriately.

Unit testing discovered a bug in the BitwiseOutputStream utility class
used by the added test cases. When the BitwiseOutputStream object must be
expanded (in the private possExpand() method), the mEnd field is not
updated to the new array size. This causes a new array to be allocated
on every new write, and for all data beyond the original array allocation
to be replaced with zeroes. Fixed by adding a line to possExpand() to
update mEnd. Added a test case to BitwiseStreamsTest to verify the fix.
Besides the test cases, BitwiseOutputStream is only used by BearerData in
two places, both of which allocate a sufficient initial buffer. So the
bug in BitwiseOutputStream is not critical to fix for normal operation,
but should be fixed so that the test cases using it function correctly.

Bug: 5856308
Change-Id: I201ecbf11607fd200aaae3cbb32561efabf65672
2012-03-13 15:31:33 -07:00
Alex Yakavenka
2b75d12a7b Telephony: Make IccFileHandler use ci instead of phone
Change-Id: I94889b5b7954d9c16721f12145e8412ba418ac12
2012-03-13 11:39:03 -07:00
Wink Saville
33c67dcb23 am 2a0eed20: am 442612a2: am f4ae6aab: Allow CDMA on LTE devices to get data connections even if otasp is needed.
* commit '2a0eed20b5828877b2db24bf49468e10c3f1b36b':
  Allow CDMA on LTE devices to get data connections even if otasp is needed.
2012-03-12 16:00:09 -07:00
Wink Saville
f4ae6aabbc Allow CDMA on LTE devices to get data connections even if otasp is needed.
Bearer Independent Protocol (BIP) connections as defined in
ETSI TS 102 223 "Smart Cards; Card Application Toolkit (CAT) (Release 11)"
need to be able to establish data connections even when not provisioned.
This can occur when trying to provision on via and EVDO network.

Bug: 6110632
Change-Id: I85722e0ba2e2606ffcf2516b8f00be6ff5271adf
2012-03-10 13:23:35 -08:00
Wink Saville
22c1700378 Telephony: Create and use UiccController
UiccController creates and disposes IccCard
IccRecords and IccFileHandler is part of IccCard

Change-Id: I3dfb476c76162bbe8443271927a06743bb5e39c4
2012-03-06 17:11:49 -08:00
Wink Saville
7eed139cdf Merge "Telephony: Remove SimCard and RuimCard" 2012-03-01 17:03:47 -08:00
John Wang
393acacd61 Merge "[maguro] Add Cheers' MCCMNC in SIMRecords.java" 2012-03-01 10:52:47 -08:00
Sangcheol Lee
859b7ef8f0 [maguro] Add Cheers' MCCMNC in SIMRecords.java
[issue 5963659]
Result:
There is no APN information for Cheers

Expected Result:
Mobile internet APN name for Cheers should be displayed

Change-Id: Iab29cfbd06ab15559048ced23136abae1fcab8f3
2012-03-01 10:29:51 -08:00
Wink Saville
a27421a306 If no NITZ information use Country Code to set TimeZone.
This is not perfect and only works if the CC is known via
the GSM radio and is only accurate if there is one time zone
per country. This does nothing to resolve time zone problems
for wifi only devices.

So this is a partial fix for bug 2896745

Bug: 2896745
Change-Id: I78f013836c4e4870b8b1016a8312f5adbe0d31c9
2012-03-01 10:25:48 -08:00
Jake Hamby
efba344b5a Revert "Add support for CMAS warning notifications over CDMA." I'll submit again when the app change is ready.
This reverts commit 0c49f03a0429b5c0c4a619256f7bca86a4997ae8
2012-02-29 14:00:12 -08:00
Alex Yakavenka
e7af59b375 Telephony: Remove SimCard and RuimCard
Remove notions of SimCard and RuimCard since they don't make sense
in the world of Uicc cards where each card can have multiple
3gpp and 3gpp2 subscriptions.

This change prepares code for the introduction of Uicc cards.

Change-Id: Ibab13004604f829328b73c177669b89ef97d3f25
2012-02-29 10:18:07 -08:00
Jake Hamby
0c49f03a04 Add support for CMAS warning notifications over CDMA.
Refactor SMS Cell Broadcast support to enable receiving CMAS warning
notifications over CDMA. The CellBroadcastReceiver app must also be
updated with the corresponding change. All cell broadcasts are now
delivered as a Parcelable SmsCbMessage object in the "message" extra
of the SMS_CB_RECEIVED_ACTION or SMS_EMERGENCY_CB_RECEIVED_ACTION,
instead of as a GSM/UMTS "pdu" byte array.

Existing functionality for ETWS and CMAS alerts over GSM/UMTS continues
to be supported using the new radio-technology independent SmsCbMessage
and related objects. Test cases are added to verify that valid and
invalid broadcast data is handled appropriately.

Unit testing discovered a bug in the BitwiseOutputStream utility class
used by the added test cases. When the BitwiseOutputStream object must be
expanded (in the private possExpand() method), the mEnd field is not
updated to the new array size. This causes a new array to be allocated
on every new write, and for all data beyond the original array allocation
to be replaced with zeroes. Fixed by adding a line to possExpand() to
update mEnd. Added a test case to BitwiseStreamsTest to verify the fix.
Besides the test cases, BitwiseOutputStream is only used by BearerData in
two places, both of which allocate a sufficient initial buffer. So the
bug in BitwiseOutputStream is not critical to fix for normal operation,
but should be fixed so that the test cases using it function correctly.

Bug: 5856308
Change-Id: Ie3e6af747976ce9b8a3e71e76fec71709cf86545
2012-02-28 16:49:17 -08:00
John Wang
0593c68a98 Prevent dial() return null in a racing condition.
The racing condition happens between dial() returns and
the first GET_CURRENT_CALLS query gets handled.

If GET_CURRENT_CALLS gets handled before dial() finishs, the pendingMO can be set
to null in handlePollCalls() so that dial() will return null. This null connection causes
error in PhoneUtils.placeCall().

The Synchronized dial() and handlePollCalls() Methods will make sure the
dial() returns before the first GET_CURRENT_CALLS gets handled.

bug:6028290
Change-Id: I41b024760acb7dd13b342866180dffe3fdbe1c03
2012-02-24 22:26:34 -08:00
Robert Greenwalt
6513daef5e Merge "Seperate RIL constants from the framework." 2012-02-24 15:02:30 -08:00
Robert Greenwalt
1434d7b855 Seperate RIL constants from the framework.
We have two sets of constants for network type.  One used by the RIL can't
be changed without big pains with OEM/Radio vendors.  The other has been published
as part of the framework and can't be easily changed either.

Separate the two so it's clear where one should be used versus the other.

bug:5717664
Change-Id: Ibf21f9165662e75557c7254fc9ad9a4870ba4af9
2012-02-24 09:37:37 -08:00
Robert Greenwalt
2d9d7fb74b am 1b2583c4: am 7874efeb: am c8711ca7: Merge "Stop using shared DUN APN when tethering stops." into ics-mr1
* commit '1b2583c41c37c055821d8f4ebbdc717f108c3b48':
  Stop using shared DUN APN when tethering stops.
2012-02-15 07:53:53 -08:00
Robert Greenwalt
f8b8eafc45 am 7a08ef44: am e3776a47: am fc19160a: Merge "Add a config to set Dun capabilities." into ics-mr1
* commit '7a08ef442ad6138352785690a8e341607d763399':
  Add a config to set Dun capabilities.
2012-02-15 07:53:51 -08:00
Robert Greenwalt
c8711ca7eb Merge "Stop using shared DUN APN when tethering stops." into ics-mr1 2012-02-14 13:38:15 -08:00
Robert Greenwalt
2384386f31 Stop using shared DUN APN when tethering stops.
Backported from master, including a bug fix and a cdma enhancement.

Even if other people are sharing the connection (ie, carrier wants
default and tethered traffic on the same APN) stop using a carrier-
described APN when the tethering stops.

bug:5972599
Change-Id: I25e4831855e6b62c0c3ab3a6f4d4846aaee6ac50
2012-02-14 11:44:09 -08:00
Robert Greenwalt
8d27f20ac2 Add a config to set Dun capabilities.
Since CDMA doesn't use APN settings there was no place to say what a cdma
device's DUN connection would support, so by default normal device
originating traffic would be blocked on a tethering single-connection device.

With this change you can (via overlay) say that it supports everything
so mms and on-device browsing/email will still work even when on a dun connection.

The reason to allow both: some carriers will charge per byte for dun access
and so they don't want lots of non-tethering traffic used (costs the user alot)
but other carriers just use a dun connection to limit access to tethering, but
once there give unlimited data, so it makes sense to support everything there.

bug:5972599
Change-Id: I78fd7f3ac63c51a0560b659ed5ec219b10a93f8d
2012-02-14 11:29:36 -08:00
Wink Saville
1b6512127b Merge "Add ril.test.emergency system property." 2012-02-08 09:19:19 -08:00
Wink Saville
d38e711dda Fix INTENT_RECONNECT_ALARM_EXTRA_xx, make strings meaningful.
Bug: 3481322
Change-Id: I1fcec7bc7ea2201c471f9fffdcfbc1bb028dbee7
2012-02-07 12:44:41 -08:00
Alex Yakavenka
2149014ed3 Telephony: Fix get_imsi and icc_io
Make get_imsi and icc_io requests to follow ril v6 interface

Change-Id: Ifdbdcfd943f985c759359e59ced82b67195f4163
2012-02-01 15:15:52 -08:00
Alex Yakavenka
8f24145805 Telephony: Fix sim_refresh as per ril v6
Change-Id: I2d237601c6fd58760c6d5d080709381fddc5cbbe
2012-02-01 12:27:39 -08:00
Justin Ho
7f8ab4b786 am 66146c4f: am 792d83c5: Merge "Use LTE SNR and RSRP to set signal level bar." into ics-mr1
* commit '66146c4f5b3930f7f5f08b845fb30f2bc24f8c3d':
  Use LTE SNR and RSRP to set signal level bar.
2012-01-31 14:05:26 -08:00
John Wang
5e39519396 Use LTE SNR and RSRP to set signal level bar.
The LTE signal strength level is the smaller one
between lte rsrp level and lte snr level if both
rsrp and snr are valid.

The lte snr mapping are

  Four  bars: SNR >= 45
  Three bars: 10 <= SNR < 45
  Two   bars: -30 <= SNR < 10
  One   bars: SNR < -30
  No    bars: No Service

The invalid value of lte snr is changed to INVALID_SNR
from -1, since -1 is a valid value of lte snr.

bug:5640958
Change-Id: If26aaba0c7fcc0fee3db488b5adfa02922f06715
2012-01-31 11:15:28 -08:00
Jean-Michel Trivi
4ed37ea81a Bug 5567648 Request and abandon audio focus in calls
Up to now, audio focus was implicitly requested and abandoned
 when changing the audio mode. This is no longer the case so the
 behavior with regards to audio focus can be indepently set by
 the CallManager.
The logic implemented here is the same as the one previously used
 in AudioService:
  - only request audio focus when the ring volume index is > 0
    when ringing,
  - request focus before setting the audio mode to a mode other
    than normal
  - abandon audio focus after setting the audio mode to normal

Change-Id: Ia543dc779563dbff09414771fee60e589dfaab9d
2012-01-27 14:20:27 -08:00
Wink Saville
b2bf3350a2 Fix ClassCastException
In "Change I95ed2aae: Stop using shared DUN APN when tethering stops",
sha1: 8beff9586ff89a1e59469e9820fd9e9d704300d2, an assumption is made
that the msg.obj is always an ApnContext, this is not true for CDMA.
Eventually we plan on removing the destinction between GSM and CDMA but
for now we need to handle it handle it.

Bug: 5904734
Change-Id: I86873dc7aeda5234c14a6fe1e4ec7345ee30e957
2012-01-25 12:42:51 -08:00
Wink Saville
7c27ac64d5 Do not clear good TLVs when a error occurs decoding.
In change Ief74d0e4f4f28dff7a435e9dab1fab1ca1d9bfaf with a sha1 of
e81932e92a773538e1ad1ad1d4bfd8f241860c8d it seemed like a good idea
to throw away all TLV's on errors. In retrospect that was probably
not a good idea. For example on the MTN Ghana SIM the error
occurs because of some 0 pad bytes at the end, all of the actual
TLV's are good, so throwing away everything is unreasonable. Instead
accepting what is valid seems a better approach.

Also, add a couple debug lines on error paths.

Change-Id: I4add0c9cd242f46e0ef8700229d0ec755b9e4c4c
2012-01-23 12:19:20 -08:00
Wink Saville
18798131c6 Merge "Additional logging information for Card Application Toolkit/SIM Toolkit" 2012-01-20 15:56:56 -08:00
Wink Saville
ea7527eca9 Additional logging information for Card Application Toolkit/SIM Toolkit
Add an optional explanation field and toString to ResultException
Add toString to CommandDetails.
Add add a few more log statements on error paths.

Bug: 5852715
Change-Id: I8594178002a67798aa3fb38ce1ee15c1a41f1854
2012-01-20 15:49:36 -08:00
Robert Greenwalt
2772143eff Merge "Stop using shared DUN APN when tethering stops." 2012-01-20 14:35:41 -08:00
Wink Saville
170bfe32ab am 7b6231a4: am aba79851: Merge "Use new preferredAPN URI avoiding onApnChanged() call with self-change" into ics-mr1
* commit '7b6231a44e21fbf5b2bc2a5eff2231139ac4088f':
  Use new preferredAPN URI avoiding onApnChanged() call with self-change
2012-01-18 16:08:04 -08:00
Wink Saville
1e6329d454 Use new preferredAPN URI avoiding onApnChanged() call with self-change
Solving the issue that setting preferred APN from GDCT triggers
back APN change event and force unnecessary data call disconnects
and setups.

The new URI is added in Telephony Provider so ContentObserver
callback (results in onApnChanged) will not be triggered.

Bug:5448858
Change-Id: I4c0bcf32cec69cf1d0a0430f7a27495b89e93625
2012-01-17 11:31:54 -08:00
John Huang
70f52e6d79 am e6572304: am 2753e826: Merge "Fix teardown of secondary connections on CDMA" into ics-mr1
* commit 'e65723044d6ad7fb2ff1bb760100a3cf40c6c5f2':
  Fix teardown of secondary connections on CDMA
2012-01-13 11:41:01 -08:00
Robert Greenwalt
2fceb7fec0 Fix teardown of secondary connections on CDMA
Restores functionallity from Gingerbread.  We should tear down when the
enabledcount goes to zero, but we should always notify and attempt to
switch back to default when indicated.

bug:5830081
Change-Id: Ib8469bb5369da21e8cc05fb755b2d7e24c8e02a6
2012-01-12 17:38:54 -08:00
Robert Greenwalt
bcf1276830 Ignore case on apn type strings.
Found that if the type were not lowercase it wouldn't match.
That's silly.  Do case-insensitive compares.

bug:5525764
Change-Id: Ibfe6be6c34116e00931594ec317fe192e1756ade
2012-01-11 17:01:50 -08:00
Wink Saville
7c20c4607c Add ril.test.emergency system property.
This allows testing of emergency numbers by dialing an emergency
number but having it remapped to another number.

Bug: 5479306
Change-Id: Ia9bb53e2e2e47f78dc9f75d3add6f785d10e4b2a
2012-01-10 17:04:21 -08:00
Wink Saville
7a939077bd Merge "Add use of net.tethering.noprovisioning to fetchDunApn" 2012-01-06 23:43:37 -08:00
Wink Saville
43420a49f9 Add use of net.tethering.noprovisioning to fetchDunApn
To make it easier to test tethering, have fetchDunApn
return null when the system property
net.tethering.noprovisioning is true.

Change-Id: Id6162967c6b8b25f04380fe009961c150fa714ef
2012-01-06 17:24:27 -08:00
Wink Saville
bbfec33d94 am f817e941: am 2f143a96: Merge "Fix an RuntimeExcpetion in GsmDCT.onDataSetupComplete" into ics-mr1
* commit 'f817e9413356de2a303e14709e67457190e976c9':
  Fix an RuntimeExcpetion in GsmDCT.onDataSetupComplete
2012-01-06 14:32:37 -08:00
Wink Saville
17907a7b74 Fix an RuntimeExcpetion in GsmDCT.onDataSetupComplete
Instead of throwing an exception when the connection between
the DCT and a DC is broken (i.e. its null) it is treated as
an error with a new cause. And thus will be handled as other
typical errors.

Bug: 5798643
Change-Id: I46f1660ae78f118b54ab62504809723ca302b2ef
2012-01-05 17:21:46 -08:00
Wink Saville
9a03482c66 am 3ed28036: am c697ebfd: Merge "Enhancement on ICS data stall polling logic" into ics-mr1
* commit '3ed2803691cc271fe6b893dc46d49fca2fce61df':
  Enhancement on ICS data stall polling logic
2012-01-04 21:52:13 -08:00
Wink Saville
efd617e01f am 0ad96f89: am d4d35168: Merge "Add support of dislaying Alpha tag for BIP commands" into ics-mr1
* commit '0ad96f89401920486b68d8404f6a143870d57500':
  Add support of dislaying Alpha tag for BIP commands
2012-01-04 21:52:10 -08:00
Wink Saville
7da207b574 am a3534ad4: am c97d0e43: Merge "Support suggestedRetryTime in CDMA DCT" into ics-mr1
* commit 'a3534ad4a4b936a2629f4a0b854b814b3494ac7e':
  Support suggestedRetryTime in CDMA DCT
2012-01-04 21:52:06 -08:00
Wink Saville
c697ebfdd6 Merge "Enhancement on ICS data stall polling logic" into ics-mr1 2012-01-04 13:53:25 -08:00
Wink Saville
d4d3516812 Merge "Add support of dislaying Alpha tag for BIP commands" into ics-mr1 2012-01-04 13:50:04 -08:00
Kazuhiro Ondo
7efb89b955 Enhancement on ICS data stall polling logic
Put enhancements on data stall polling logic in ICS so that
stall recovery can kick in earler while screen is on.

Bug: 5767897
Change-Id: I4683fc45c0161f4374749c8e5840261c19a48f77
2012-01-04 11:09:51 -08:00
Robert Greenwalt
8beff9586f Stop using shared DUN APN when tethering stops.
Even if other people are sharing the connection (ie, carrier wants
default and tethered traffic on the same APN) stop using
a carrier-described APN when the tethering stops.

bug:5525764
Change-Id: I95ed2aaed4d79519d233a62cf2945edead8114bc
2012-01-03 16:32:04 -08:00
Wink Saville
81fa7f305b Add support of dislaying Alpha tag for BIP commands
While BIP data call setup is still handled in RIL/Modem,
this patch is adding support of Alpha tag display on UI.
Alpha tag is optionally included in "OPEN Channel", "Close Channel",
"Send Data" or "Receive Data" command.

"Open channel" will be notified via RIL_UNSOL_STK_PROACTIVE_COMMAND
which requires TERMINAL RESPONSE based on user input.
"Close channel", "Send Data" and "Receive Data" commands
are send via RIL_UNSOL_STK_EVENT_NOTIFY just to display
transient notice.

Bug:5165510
Change-Id: I873e55274c860886bc816ce6fb07cb882d339214
2012-01-03 15:06:15 -08:00