diff options
10 files changed, 26 insertions, 11 deletions
diff --git a/telephony/java/com/android/internal/telephony/CommandsInterface.java b/telephony/java/com/android/internal/telephony/CommandsInterface.java index 25c512e385f0..e583110d87be 100644 --- a/telephony/java/com/android/internal/telephony/CommandsInterface.java +++ b/telephony/java/com/android/internal/telephony/CommandsInterface.java @@ -880,7 +880,7 @@ public interface CommandsInterface { * ar.userObject contains the orignal value of result.obj * ar.result is null on success and failure */ - void sendBurstDtmf(String dtmfString, Message result); + void sendBurstDtmf(String dtmfString, int on, int off, Message result); /** * smscPDU is smsc address in PDU form GSM BCD format prefixed diff --git a/telephony/java/com/android/internal/telephony/Phone.java b/telephony/java/com/android/internal/telephony/Phone.java index c8d384d8d5f6..7f2b8496f592 100644 --- a/telephony/java/com/android/internal/telephony/Phone.java +++ b/telephony/java/com/android/internal/telephony/Phone.java @@ -760,10 +760,12 @@ public interface Phone { * back to caller. * * @param dtmfString is string representing the dialing digit(s) in the active call + * @param on the DTMF ON length in milliseconds, or 0 for default + * @param off the DTMF OFF length in milliseconds, or 0 for default * @param onCompelte is the callback message when the action is processed by BP * */ - void sendBurstDtmf(String dtmfString, Message onComplete); + void sendBurstDtmf(String dtmfString, int on, int off, Message onComplete); /** * Sets the radio power on/off state (off is sometimes diff --git a/telephony/java/com/android/internal/telephony/PhoneBase.java b/telephony/java/com/android/internal/telephony/PhoneBase.java index a26e7296b2b6..bcb1ccc04c0f 100644 --- a/telephony/java/com/android/internal/telephony/PhoneBase.java +++ b/telephony/java/com/android/internal/telephony/PhoneBase.java @@ -685,7 +685,7 @@ public abstract class PhoneBase implements Phone { return null; } - public void sendBurstDtmf(String dtmfString, Message onComplete) { + public void sendBurstDtmf(String dtmfString, int on, int off, Message onComplete) { // This function should be overridden by the class CDMAPhone. Not implemented in GSMPhone. Log.e(LOG_TAG, "Error! This function should never be executed, inactive CDMAPhone."); } diff --git a/telephony/java/com/android/internal/telephony/PhoneProxy.java b/telephony/java/com/android/internal/telephony/PhoneProxy.java index 5b3c8dd4c162..da002683a895 100644 --- a/telephony/java/com/android/internal/telephony/PhoneProxy.java +++ b/telephony/java/com/android/internal/telephony/PhoneProxy.java @@ -713,8 +713,8 @@ public class PhoneProxy extends Handler implements Phone { return mActivePhone.getCdmaEriIconMode(); } - public void sendBurstDtmf(String dtmfString, Message onComplete){ - mActivePhone.sendBurstDtmf(dtmfString,onComplete); + public void sendBurstDtmf(String dtmfString, int on, int off, Message onComplete){ + mActivePhone.sendBurstDtmf(dtmfString, on, off, onComplete); } public void exitEmergencyCallbackMode(){ diff --git a/telephony/java/com/android/internal/telephony/RIL.java b/telephony/java/com/android/internal/telephony/RIL.java index 4db3e5bfcf8b..690b38a7fa38 100644 --- a/telephony/java/com/android/internal/telephony/RIL.java +++ b/telephony/java/com/android/internal/telephony/RIL.java @@ -1068,10 +1068,13 @@ public final class RIL extends BaseCommands implements CommandsInterface { } public void - sendBurstDtmf(String dtmfString, Message result) { + sendBurstDtmf(String dtmfString, int on, int off, Message result) { RILRequest rr = RILRequest.obtain(RIL_REQUEST_CDMA_BURST_DTMF, result); + rr.mp.writeInt(3); rr.mp.writeString(dtmfString); + rr.mp.writeString(Integer.toString(on)); + rr.mp.writeString(Integer.toString(off)); if (RILJ_LOGD) riljLog(rr.serialString() + "> " + requestToString(rr.mRequest) + " : " + dtmfString); diff --git a/telephony/java/com/android/internal/telephony/RILConstants.java b/telephony/java/com/android/internal/telephony/RILConstants.java index b2e16c74ec3a..783401824621 100644 --- a/telephony/java/com/android/internal/telephony/RILConstants.java +++ b/telephony/java/com/android/internal/telephony/RILConstants.java @@ -118,6 +118,12 @@ cat include/telephony/ril.h | \ */ int RIL_RESTRICTED_STATE_PS_ALL = 0x10; + /** Data profile for RIL_REQUEST_SETUP_DATA_CALL */ + static final int DATA_PROFILE_DEFAULT = 0; + static final int DATA_PROFILE_TETHERED = 1; + static final int DATA_PROFILE_OEM_BASE = 1000; + + int RIL_REQUEST_GET_SIM_STATUS = 1; int RIL_REQUEST_ENTER_SIM_PIN = 2; int RIL_REQUEST_ENTER_SIM_PUK = 3; diff --git a/telephony/java/com/android/internal/telephony/cdma/CDMAPhone.java b/telephony/java/com/android/internal/telephony/cdma/CDMAPhone.java index 3362de83e954..0ab9d34f257c 100755 --- a/telephony/java/com/android/internal/telephony/cdma/CDMAPhone.java +++ b/telephony/java/com/android/internal/telephony/cdma/CDMAPhone.java @@ -630,7 +630,7 @@ public class CDMAPhone extends PhoneBase { mCM.stopDtmf(null); } - public void sendBurstDtmf(String dtmfString, Message onComplete) { + public void sendBurstDtmf(String dtmfString, int on, int off, Message onComplete) { boolean check = true; for (int itr = 0;itr < dtmfString.length(); itr++) { if (!PhoneNumberUtils.is12Key(dtmfString.charAt(itr))) { @@ -641,7 +641,7 @@ public class CDMAPhone extends PhoneBase { } } if ((mCT.state == Phone.State.OFFHOOK)&&(check)) { - mCM.sendBurstDtmf(dtmfString, onComplete); + mCM.sendBurstDtmf(dtmfString, on, off, onComplete); } } diff --git a/telephony/java/com/android/internal/telephony/cdma/CdmaDataConnection.java b/telephony/java/com/android/internal/telephony/cdma/CdmaDataConnection.java index f2b07a880356..fef6d3c633a7 100644 --- a/telephony/java/com/android/internal/telephony/cdma/CdmaDataConnection.java +++ b/telephony/java/com/android/internal/telephony/cdma/CdmaDataConnection.java @@ -21,6 +21,7 @@ import android.util.EventLog; import android.util.Log; import com.android.internal.telephony.CommandException; +import com.android.internal.telephony.CommandsInterface; import com.android.internal.telephony.DataConnection; import com.android.internal.telephony.DataLink; import com.android.internal.telephony.RILConstants; @@ -142,7 +143,8 @@ public class CdmaDataConnection extends DataConnection { lastFailTime = -1; lastFailCause = FailCause.NONE; receivedDisconnectReq = false; - phone.mCM.setupDataCall(Integer.toString(RILConstants.CDMA_PHONE), null, null, null, + phone.mCM.setupDataCall(Integer.toString(RILConstants.CDMA_PHONE), + Integer.toString(RILConstants.DATA_PROFILE_DEFAULT), null, null, null, obtainMessage(EVENT_SETUP_DATA_CONNECTION_DONE)); } diff --git a/telephony/java/com/android/internal/telephony/gsm/PdpConnection.java b/telephony/java/com/android/internal/telephony/gsm/PdpConnection.java index 55e5adc8ac66..89de8673bb4e 100644 --- a/telephony/java/com/android/internal/telephony/gsm/PdpConnection.java +++ b/telephony/java/com/android/internal/telephony/gsm/PdpConnection.java @@ -22,6 +22,7 @@ import android.util.EventLog; import android.util.Log; import com.android.internal.telephony.CommandException; +import com.android.internal.telephony.CommandsInterface; import com.android.internal.telephony.DataConnection; import com.android.internal.telephony.DataLink; import com.android.internal.telephony.Phone; @@ -83,7 +84,8 @@ public class PdpConnection extends DataConnection { lastFailCause = FailCause.NONE; receivedDisconnectReq = false; - phone.mCM.setupDataCall(Integer.toString(RILConstants.GSM_PHONE), null, apn.apn, apn.user, + phone.mCM.setupDataCall(Integer.toString(RILConstants.GSM_PHONE), + Integer.toString(RILConstants.DATA_PROFILE_DEFAULT), apn.apn, apn.user, apn.password, obtainMessage(EVENT_SETUP_DATA_CONNECTION_DONE)); } diff --git a/telephony/java/com/android/internal/telephony/test/SimulatedCommands.java b/telephony/java/com/android/internal/telephony/test/SimulatedCommands.java index 22adc19ef061..f71ea4853e18 100644 --- a/telephony/java/com/android/internal/telephony/test/SimulatedCommands.java +++ b/telephony/java/com/android/internal/telephony/test/SimulatedCommands.java @@ -937,7 +937,7 @@ public final class SimulatedCommands extends BaseCommands * ar.userObject contains the orignal value of result.obj * ar.result is null on success and failure */ - public void sendBurstDtmf(String dtmfString, Message result) { + public void sendBurstDtmf(String dtmfString, int on, int off, Message result) { resultSuccess(result, null); } |