diff options
Diffstat (limited to 'com/android/internal/telephony/RIL.java')
-rw-r--r-- | com/android/internal/telephony/RIL.java | 134 |
1 files changed, 42 insertions, 92 deletions
diff --git a/com/android/internal/telephony/RIL.java b/com/android/internal/telephony/RIL.java index 9007f14d..84c2b659 100644 --- a/com/android/internal/telephony/RIL.java +++ b/com/android/internal/telephony/RIL.java @@ -1655,69 +1655,56 @@ public class RIL extends BaseCommands implements CommandsInterface { } } - private android.hardware.radio.V1_1.RadioAccessSpecifier convertRadioAccessSpecifierToRadioHAL( - RadioAccessSpecifier ras) { - android.hardware.radio.V1_1.RadioAccessSpecifier rasInHalFormat = - new android.hardware.radio.V1_1.RadioAccessSpecifier(); - rasInHalFormat.radioAccessNetwork = ras.radioAccessNetwork; - List<Integer> bands = null; - switch (ras.radioAccessNetwork) { - case RadioAccessNetworks.GERAN: - bands = rasInHalFormat.geranBands; - break; - case RadioAccessNetworks.UTRAN: - bands = rasInHalFormat.utranBands; - break; - case RadioAccessNetworks.EUTRAN: - bands = rasInHalFormat.eutranBands; - break; - default: - Log.wtf(RILJ_LOG_TAG, "radioAccessNetwork " + ras.radioAccessNetwork - + " not supported!"); - return null; - } - - if (ras.bands != null) { - for (int band : ras.bands) { - bands.add(band); - } - } - if (ras.channels != null) { - for (int channel : ras.channels) { - rasInHalFormat.channels.add(channel); - } - } - - return rasInHalFormat; - } - @Override public void startNetworkScan(NetworkScanRequest nsr, Message result) { IRadio radioProxy = getRadioProxy(result); if (radioProxy != null) { - android.hardware.radio.V1_2.IRadio radioProxy12 = - android.hardware.radio.V1_2.IRadio.castFrom(radioProxy); - if (radioProxy12 != null) { - android.hardware.radio.V1_2.NetworkScanRequest request = - new android.hardware.radio.V1_2.NetworkScanRequest(); + android.hardware.radio.V1_1.IRadio radioProxy11 = + android.hardware.radio.V1_1.IRadio.castFrom(radioProxy); + if (radioProxy11 == null) { + if (result != null) { + AsyncResult.forMessage(result, null, + CommandException.fromRilErrno(REQUEST_NOT_SUPPORTED)); + result.sendToTarget(); + } + } else { + android.hardware.radio.V1_1.NetworkScanRequest request = + new android.hardware.radio.V1_1.NetworkScanRequest(); request.type = nsr.scanType; - request.interval = nsr.searchPeriodicity; - request.maxSearchTime = nsr.maxSearchTime; - request.incrementalResultsPeriodicity = nsr.incrementalResultsPeriodicity; - request.incrementalResults = nsr.incrementalResults; - + request.interval = 60; for (RadioAccessSpecifier ras : nsr.specifiers) { - - android.hardware.radio.V1_1.RadioAccessSpecifier rasInHalFormat = - convertRadioAccessSpecifierToRadioHAL(ras); - if (rasInHalFormat == null) { - return; + android.hardware.radio.V1_1.RadioAccessSpecifier s = + new android.hardware.radio.V1_1.RadioAccessSpecifier(); + s.radioAccessNetwork = ras.radioAccessNetwork; + List<Integer> bands = null; + switch (ras.radioAccessNetwork) { + case RadioAccessNetworks.GERAN: + bands = s.geranBands; + break; + case RadioAccessNetworks.UTRAN: + bands = s.utranBands; + break; + case RadioAccessNetworks.EUTRAN: + bands = s.eutranBands; + break; + default: + Log.wtf(RILJ_LOG_TAG, "radioAccessNetwork " + ras.radioAccessNetwork + + " not supported!"); + return; } - - request.specifiers.add(rasInHalFormat); + if (ras.bands != null) { + for (int band : ras.bands) { + bands.add(band); + } + } + if (ras.channels != null) { + for (int channel : ras.channels) { + s.channels.add(channel); + } + } + request.specifiers.add(s); } - request.mccMncs.addAll(nsr.mccMncs); RILRequest rr = obtainRequest(RIL_REQUEST_START_NETWORK_SCAN, result, mRILDefaultWorkSource); @@ -1726,47 +1713,10 @@ public class RIL extends BaseCommands implements CommandsInterface { } try { - radioProxy12.startNetworkScan_1_2(rr.mSerial, request); + radioProxy11.startNetworkScan(rr.mSerial, request); } catch (RemoteException | RuntimeException e) { handleRadioProxyExceptionForRR(rr, "startNetworkScan", e); } - } else { - android.hardware.radio.V1_1.IRadio radioProxy11 = - android.hardware.radio.V1_1.IRadio.castFrom(radioProxy); - if (radioProxy11 == null) { - if (result != null) { - AsyncResult.forMessage(result, null, - CommandException.fromRilErrno(REQUEST_NOT_SUPPORTED)); - result.sendToTarget(); - } - } else { - android.hardware.radio.V1_1.NetworkScanRequest request = - new android.hardware.radio.V1_1.NetworkScanRequest(); - request.type = nsr.scanType; - request.interval = nsr.searchPeriodicity; - for (RadioAccessSpecifier ras : nsr.specifiers) { - android.hardware.radio.V1_1.RadioAccessSpecifier rasInHalFormat = - convertRadioAccessSpecifierToRadioHAL(ras); - if (rasInHalFormat == null) { - return; - } - - request.specifiers.add(rasInHalFormat); - } - - RILRequest rr = obtainRequest(RIL_REQUEST_START_NETWORK_SCAN, result, - mRILDefaultWorkSource); - - if (RILJ_LOGD) { - riljLog(rr.serialString() + "> " + requestToString(rr.mRequest)); - } - - try { - radioProxy11.startNetworkScan(rr.mSerial, request); - } catch (RemoteException | RuntimeException e) { - handleRadioProxyExceptionForRR(rr, "startNetworkScan", e); - } - } } } } |