1226 Commits

Author SHA1 Message Date
Wink Saville
0dc8618dc7 Do not start RILReceiver if wifi-only.
By not starting RILReceiver we don't waste any cycles
trying to communicate with a vendor ril which may
not exist. This allows a wifi-only device to operate
as expected and the system to gracefully handle the
missing radio as ril requests will report RADIO_NOT_AVAILABLE.

Change-Id: I6c6f60830486c5f0447b3b9eb44c8b1f2d70c517
2011-02-23 18:11:45 -08:00
Wink Saville
1938e314e3 Have SmsMessage use getCurrentPhoneType
Although our first tablet doesn't support SMS messages there are testing
scenarios where they can be used. To preserve proper behavior now that
getPhoneType can return PHONE_TYPE_NONE use getCurrentPhoneType.

bug: 3198435
Change-Id: I48ef294f563351c66971b4e89e6dcb3326b0ae92
2011-02-02 14:19:55 -08:00
Robert Greenwalt
6e2884817d Use a cached context when possible.
It's always possible after services have been registered, so it's just early
in the process that's a problem.  Lie correctly in those early cases and fix this
in MR1.

bug:3415254
Change-Id: I95811d1efd676fde01f66b742393d3aa4623482f
2011-02-02 10:57:35 -08:00
Wink Saville
9d72be3318 Add TelephonyManager.getCurrentPhoneType
The new method getCurrentPhoneType has the old behavior of getPhoneType
and does not check for voice capable. This allows code to assume
the old behavior.

bug: 3198435
Change-Id: I0542838ceca2f757cceb6cd7f795e95fe886523e
2011-02-01 19:22:15 -08:00
Wink Saville
9b9e6778dd Have getPhoneType return PHONE_TYPE_NONE for non-voice capable devices.
bug: 3198435
Change-Id: I1a19863c106a9394dbc941f396400e31dca95b92
2011-01-31 17:33:05 -08:00
Wink Saville
cde85d5738 Merge "Add debug for tracking bug 3404006." into honeycomb 2011-01-30 23:12:35 -08:00
Wink Saville
ea9af9e97b Add debug for tracking bug 3404006.
We need some additional debugging to help diagnose the cause
of this bug. There is no logic changes just additional debugging.

Change-Id: Ifc5d1c82904042fa87fd3b5b1066f58b62e7359c
2011-01-30 16:16:20 -08:00
The Android Open Source Project
b2abd8c424 Mass merge from gingerbread - do not merge
Change-Id: I45dc3596bf4211d8f91c64f2d1d00588878df629
2011-01-30 12:40:38 -08:00
Jean-Baptiste Queru
7ea919c44b Merge 6b739dc7 from gingerbread
Change-Id: If94889da67977aff7daa1e201c10cd51b7e2fff8
2011-01-29 12:59:20 -08:00
Hung-ying Tyan
dd75788eda am cc019c0c: Merge "Get mute state from active call." into gingerbread
* commit 'cc019c0caa0dd984404dea4d6623ae9d7b8474f1':
  Get mute state from active call.
2011-01-29 09:31:40 -08:00
John Wang
6630698e24 am 93300ce2: Merge "Enable recovery in RIL wakelock release check." into gingerbread
* commit '93300ce2d398195d5616a2e924eb4a785274538e':
  Enable recovery in RIL wakelock release check.
2011-01-29 07:29:42 -08:00
Robert Greenwalt
e12aec941d Add some network types that OEM's are asking for.
Adding them hidden so that if OEM's are rolling their own at least they can
use the same values.  Will mark them unhidden in a future sdk release.

bug:3395729
Change-Id: I90eabe036a96e1aa7c8cac49ca51efd9b1776a0c
2011-01-28 14:48:37 -08:00
Robert Greenwalt
164ca032b6 Fix data network type notifications.
These trackers have two copies of the network type: newSS and newNetworkType.  I think thats wrong,
but this was the smaller change on code that will hopefully be refactored soon.

On radio_off we were making a new, empty newSS but not clearing newNetworkType so it
still thought we were on 3G and when we reconnect and get 3G state changes new==old and we don't
send the update.  In this fix I reset newNetworkType every time we apply it to networkType.

bug:3389886
Change-Id: I294f34259dc6c6f8f445bf2cb5466c8be747e25c
2011-01-27 17:48:52 -08:00
John Wang
4376538c47 Enable recovery in RIL wakelock release check.
This is a cherry-pick Change 91968 from GB branch.

Wakelock will get released while
1) no request pending to be sent out, in which mRequestMessagesPending increases
before calling EVENT_SEND and decreases while handling EVENT_SEND.

and

2) no waiting requests sent to RIL but no replied, in which mRequestMessagesWaiting
increases while sending request and decreases while handling response.

Both will be cleared while WAKE_LOCK_TIMEOUT occurs to recovery from out of sync situation.

bug: 3369427, 3370827
Change-Id: Ibbcc95d67a292ffe20339ea9bdb0f2e4a4988da0
2011-01-26 14:40:36 -08:00
Jean-Michel Trivi
2ba92c71b5 do not merge bug 3370834 Cherrypick from master
Cherripick from master CL 79833, 79417, 78864, 80332, 87500

Add new audio mode and recording source for audio communications
 other than telelphony.

The audio mode MODE_IN_CALL signals the system the device a phone
 call is currently underway. There was no way for audio video
 chat or VoIP applications to signal a call is underway, but not
 using the telephony resources. This change introduces a new mode
 to address this. Changes in other parts of the system (java
 and native) are required to take this new mode into account.
The generic AudioPolicyManager is updated to not use its phone
 state variable directly, but to use two new convenience methods,
 isInCall() and isStateInCall(int) instead.

Add a recording source used to designate a recording stream for
voice communications such as VoIP.

Update the platform-independent audio policy manager to pass the
 nature of the audio recording source to the audio policy client
 interface through the AudioPolicyClientInterface::setParameters()
 method.

SIP calls should set the audio mode to MODE_IN_COMMUNICATION,
 Audio mode MODE_IN_CALL is reserved for telephony.

SIP: Enable built-in echo canceler if available.
1. Always initialize AudioRecord with VOICE_COMMUNICATION.
2. If echo canceler is available, disable our echo suppressor.

Note that this CL is intentionally not correcting the
 getAudioSourceMax() return value in MediaRecorder.java as the
 new source is hidden here.

Change-Id: Ie68cd03c50553101aa2ad838fe9459b2cf151bc8
2011-01-26 11:20:01 -08:00
Wink Saville
b260fe75c1 Increase the default timeout from 30 to 60 seconds.
The DEFAULT_WAKE_LOCK_TIMEOUT should be longer than the timeouts
of the vendor ril, aka. rild. We are seeing timeouts which are
30secs and possibly longer. An alternative would be to add
TelephonyManager.PROPERTY_WAKE_LOCK_TIMEOUT for but I feel a 60
second default is appropriate for all platforms.

Bug: 3392618
Change-Id: I63f6b211b584857999174524d4ea4efa1994dfba
2011-01-26 09:21:32 -08:00
Wink Saville
079c8d7fd6 Add debug to CallManager#canDial.
Add some debug to trackdown why canDial is sometime
returning false, see bug 3381435.

Change-Id: I0caade5ffdf9d67cdee0557971a8918182718512
2011-01-24 23:25:31 -08:00
Hung-ying Tyan
cc019c0caa Merge "Get mute state from active call." into gingerbread 2011-01-24 21:13:08 -08:00
John Wang
696794fc13 Enable recovery in RIL wakelock release check.
Wakelock will get released while
1) no request pending to be sent out, in which mRequestMessagesPending increases
before calling EVENT_SEND and decreases while handling EVENT_SEND.

and

2) no waiting requests sent to RIL but no replied, in which mRequestMessagesWaiting
increases while sending request and decreases while handling response.

Both will be cleared while WAKE_LOCK_TIMEOUT occurs to recovery from out of sync situation.

bug: 3369427, 3370827
Change-Id: Ib2fc54db3b155bd3fb1296ad83720b7836708caf
2011-01-21 17:46:08 -08:00
Wink Saville
48f53ec7f4 Add two more parameters too RIL_REQUEST_SETUP_DATA_CALL, DO NOT MERGE
Add DNS and gateway as parameters to RIL_REQUEST_SETUP_DATA_CALL so that
system properties aren't used for passing these to the ril. System
properties that are read right after a write doesn't always see the
result of the write. Another words writing system properties are not
not sequentially consistent.

Bug: 3364487
Change-Id: Ib7cba74346395323f3feb927281695663d9935ac
2011-01-19 22:38:24 -08:00
John Wang
8d48c3d21f Merge "Enable AUTO_TIME_ZONE settings." into honeycomb 2011-01-18 11:43:53 -08:00
John Wang
759aca9d20 Enable AUTO_TIME_ZONE settings.
There are separate settings for AUTO_TIME and AUTO_TIME_ZONE.

Modify *ServiceStateTracker to monitor AUTO_TIME and AUTO_TIME_ZONE changes
separately and reset NITZ time and timezone accordingly.

bug: 3304255
Change-Id: Ie430f7b4a256618bea87672b3628d1223ea6e36a
2011-01-18 11:11:06 -08:00
Wink Saville
ad8c32f302 Set mIsMinInfoReady and mCurrentOtasp before notifcations.
We were sending a notification before setting mIsMinInfoReady and
mCurrentOtasp. This causes a race and it's possible that
OtaUtils.maybeDoOtasp is called before before they are set.
In this case the activation would not occur.

Bug: 3339109
Change-Id: I3baf8992d58af63a5cc07a14cc33157fd1c5aaa3
2011-01-15 07:47:03 -08:00
Robert Greenwalt
19b9ab46a9 Turn off DUN connection after tethering.
Use matching feature type when turning tethering off or the request is ignored.

Also, turn on DUN apn right away so that we don't fail aggressive test cases.

Also don't report connections for enabled apn's that we're no longer connected to.

bug:3332880
bug:3338033
Change-Id: I7db2dfd4879f03465bc9f6d39488c078570dcaf3
2011-01-12 15:52:10 -08:00
Hung-ying Tyan
65a7f147de Get mute state from active call.
Currently, PhoneUtils.getMute() returns the mute state from the foreground phone.
When a SIP call is muted and then put on hold, the call is moved to background
and the SipPhone becomes background phone. At this point, PhoneUtils.getMute()
incorrectly returns false from the idle foreground phone (i.e., GSMPhone).

CallManager provides getMute() but it's not used anywhere. This CL fixes the
method and I'll have another CL to have PhoneUtils.getMute() take advantage of
it.

Bug: 3323789
Change-Id: I6c37500ae93f4e95db3bcd55e24e1ecb58a57c0a
2011-01-11 15:32:30 +08:00
Wink Saville
81f573de63 Merge "Add telephony.sms.receive and telephony.sms.send properties." into honeycomb 2011-01-07 11:00:42 -08:00
Wink Saville
f4871b686f For Cdma a blank plmn is valid to show in some cases.
When roaming the plmn might be blank but we want to have
showPlmn true otherwise "No Service" is displayed.

bug: 3265611
Change-Id: Iaed8997ab0bb336c79cef1fc848526ca7a73f9a1
2011-01-07 08:37:18 -08:00
Wink Saville
cde0233512 Add telephony.sms.receive and telephony.sms.send properties.
The purpose of these properties is to allow, at boot time, the
enable and disabling of receiving and sending of SMS messages.
These properties are used to initialize two booleans within
[Gsm|Cdma]SMSDispatcher code. The two booleans are initialized
to the value of config_sms_capable and when config_sms_capable
is false the device can neither receive nor send SMS.

Under some conditions, such as testing, it could be desirable
to send and or receive SMS messages on a device where config_sms_capable
is false. With the addition of these two properties it is now possible
to use /data/local.prop to control the booleans independently.

bug: 3315489
Change-Id: I83fe6f2da7d66ff720f28b696d8d76ec388706c0
2011-01-06 21:24:34 -08:00
Hung-ying Tyan
8fd2718bf3 am 05c53067: am 273d2ea3: Merge "Fix setting audio group mode in SipPhone." into gingerbread
* commit '05c53067b613796624937214e506c58de817c8fd':
  Fix setting audio group mode in SipPhone.
2011-01-04 17:49:48 -08:00
Hung-ying Tyan
05c53067b6 am 273d2ea3: Merge "Fix setting audio group mode in SipPhone." into gingerbread
* commit '273d2ea3f986f1611d2cf303cc5b93f820c14dd3':
  Fix setting audio group mode in SipPhone.
2011-01-04 17:47:47 -08:00
Hung-ying Tyan
273d2ea3f9 Merge "Fix setting audio group mode in SipPhone." into gingerbread 2011-01-04 17:45:36 -08:00
Robert Greenwalt
e32e812b11 Always file DUN requests for tethering.
A bit of a hack so that first trySetupData call uses the proper APN in
strange edge cases.  Made a new startUsingNetworkFeature string
that ConnectivityService knows means always pass the request to telephony
even if telephony connections are not currently available.

bug:3133178
Change-Id: I2559b9cbaed4b4ec02bdf7ea78e6003ee2be64f2
2011-01-04 11:15:19 -08:00
John Wang
003f338b6f am e8522998: am 06fccc32: Merge "Clear request list while timeout." into gingerbread
* commit 'e85229988e6350a684be91c3bbf64232271c5663':
  Clear request list while timeout.
2011-01-03 08:49:05 -08:00
John Wang
e85229988e am 06fccc32: Merge "Clear request list while timeout." into gingerbread
* commit '06fccc325123bf4c9ebd04ac9300b504436724fe':
  Clear request list while timeout.
2011-01-03 08:46:47 -08:00
Lorenzo Colitti
f6254ba7f0 Fix setupDataCall breakage.
Change I1a1adc61 added a new parameter to setupDataCall,
but updated the callers incorrectly (specifying the
arguments in the wrong order). Fix the order.

Change-Id: I0e762de29ac05d387371a7cfe33a33ad16219221
2010-12-31 00:55:05 -08:00
Lorenzo Colitti
4eb4045072 Get rid of setupDataCallWithProtocol.
setupDataCallWithProtocol was introduced to introduce a
protocol parameter to setupDataCall without having to
modify its callers. This is not very useful, as there are
only two callers. Get rid of it and make setupDataCall take
the protocol parameter itself.

For now, hardcode IPv4 connectivity. When we add the
protocol field to ApnSettings, it will be fetched from
there.

Change-Id: I1a1adc616ffd9ac68be6911f054790da48e472d6
2010-12-29 17:02:54 -08:00
Hung-ying Tyan
1d12ef09a8 Fix setting audio group mode in SipPhone.
Bug: 3119690
Change-Id: I495d3c031ee4c272d360fe19553ef9726a3f8771
2010-12-29 16:07:17 +08:00
John Wang
00d520b66c Clear request list while timeout.
The wakelock will be kept held if there is outstanding requests
in request list. When WAKE_LOCK_TIMEOUT occurs, all requests
in mRequestList already waited at least DEFAULT_WAKE_LOCK_TIMEOUT
but no response. Those lost requests return GENERIC_FAILURE and
request list is cleared.

bug:3292426
Change-Id: I369c6ba4d6836d65ef616140e48c7304faf888f0
2010-12-28 17:14:18 -08:00
Jeff Brown
fa93584a4f am c6f2b3b3: Merge "Fix policy issues when screen is off. (DO NOT MERGE)" into gingerbread
* commit 'c6f2b3b302c06b8b7b81ec7e3a43a7df1813d0e0':
  Fix policy issues when screen is off. (DO NOT MERGE)
2010-12-23 12:43:48 -08:00
Jeff Brown
eb9f7a01b0 Fix policy issues when screen is off. (DO NOT MERGE)
Rewrote interceptKeyBeforeQueueing to make the handling more systematic.
Behavior should be identical except:
- We never pass keys to applications when the screen is off and the keyguard
  is not showing (the proximity sensor turned off the screen).
  Previously we passed all non-wake keys through in this case which
  caused a bug on Crespo where the screen would come back on if a soft key
  was held at the time of power off because the resulting key up event
  would sneak in just before the keyguard was shown.  It would then be
  passed through to the dispatcher which would poke user activity and
  wake up the screen.
- We propagate the key flags when broadcasting media keys which
  ensures that recipients can tell when the key is canceled.
- We ignore endcall or power if canceled (shouldn't happen anyways).

Changed the input dispatcher to not poke user activity for canceled
events since they are synthetic and should not wake the device.

Changed the lock screen so that it does not poke the wake lock when the
grab handle is released.  This fixes a bug where the screen would come
back on immediately if the power went off while the user was holding
one of the grab handles because the sliding tab would receive an up
event after screen turned off and release the grab handles.

Bug: 3144874
Change-Id: Iebb91e10592b4ef2de4b1dd3a2e1e4254aacb697
2010-12-22 16:00:21 -08:00
Jean-Baptiste Queru
b3177c135b am 749c627f: Merge "Support for KSC5601 on SIM."
* commit '749c627fc0f30dd3db051f22f20b69a51dc19e59':
  Support for KSC5601 on SIM.
2010-12-21 12:05:04 -08:00
Erik Zivkovic
aad6f806c5 Support for KSC5601 on SIM.
Korean phones write to the ADN record of the SIM in a non-standard way.
When UCS2 is not used, the alphaTag will be written in the KSC5601
encoding. This contribution adds support for reading that format when
a Korean SIM card is used.

Also adds support for KSC5601 in SMS.

Change-Id: I81a4a6949359b4d23a937ac2d813bafed2b85ff6
2010-12-21 10:26:48 -08:00
John Wang
a347afb90f Merge "Notify voicemail only for voice-capable device." 2010-12-10 16:55:36 -08:00
John Wang
e98ca4a858 Notify voicemail only for voice-capable device.
Only allow voicemail waiting notification for
device supporting voice-capable service.

Bug: 3038102
Change-Id: I7ee1f973755f007cdcd87c4326bc55229a575598
2010-12-10 16:07:32 -08:00
John Wang
9c1d5e997f Merge "Block SMS service for non-sms-capable device." 2010-12-10 16:05:51 -08:00
John Wang
c049f9ad5b Block SMS service for non-sms-capable device.
If device doesn't support sms service, SMSDispatcher
will ignore incoming SMS in dispatching messge and return
ERROR_NO_SERVICE in sending sms messgae.

bug: 3250029
bug: 3038102
Change-Id: Ic72a9192aa128c43cf31da04907620bc680656c6
2010-12-10 15:29:03 -08:00
Wink Saville
ffbce12056 Make activation rejection a non-permanent error.
Removed ACTIVATION_REJECT_GGSN and ACTIVATION_REJECT_UNSPECIFIED from
DataConnection#isPermanentFail() so they won't be detected as permanent.


bug: 3070773
Change-Id: I18d10bc44609e550d7932cd9600116f074bcb8dd
2010-12-10 11:09:47 -08:00
Wink Saville
41cb9d10de am a7404130: am d0ffef4b: am 19b23afa: Merge "Fix for phone app crash in Icc Card."
* commit 'a740413022baca3d2bc365ade40f73a1fee46654':
  Fix for phone app crash in Icc Card.
2010-12-09 14:06:35 -08:00
Wink Saville
a740413022 am d0ffef4b: am 19b23afa: Merge "Fix for phone app crash in Icc Card."
* commit 'd0ffef4b43594e540cb867da18d4403b4f583622':
  Fix for phone app crash in Icc Card.
2010-12-09 14:02:09 -08:00
Wink Saville
d0ffef4b43 am 19b23afa: Merge "Fix for phone app crash in Icc Card."
* commit '19b23afadf1053a8e06cb3444d9cdae3405ad9a1':
  Fix for phone app crash in Icc Card.
2010-12-09 13:58:26 -08:00