1*4d7e907cSAndroid Build Coastguard Worker/* 2*4d7e907cSAndroid Build Coastguard Worker * Copyright (C) 2020 The Android Open Source Project 3*4d7e907cSAndroid Build Coastguard Worker * 4*4d7e907cSAndroid Build Coastguard Worker * Licensed under the Apache License, Version 2.0 (the "License"); 5*4d7e907cSAndroid Build Coastguard Worker * you may not use this file except in compliance with the License. 6*4d7e907cSAndroid Build Coastguard Worker * You may obtain a copy of the License at 7*4d7e907cSAndroid Build Coastguard Worker * 8*4d7e907cSAndroid Build Coastguard Worker * http://www.apache.org/licenses/LICENSE-2.0 9*4d7e907cSAndroid Build Coastguard Worker * 10*4d7e907cSAndroid Build Coastguard Worker * Unless required by applicable law or agreed to in writing, software 11*4d7e907cSAndroid Build Coastguard Worker * distributed under the License is distributed on an "AS IS" BASIS, 12*4d7e907cSAndroid Build Coastguard Worker * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13*4d7e907cSAndroid Build Coastguard Worker * See the License for the specific language governing permissions and 14*4d7e907cSAndroid Build Coastguard Worker * limitations under the License. 15*4d7e907cSAndroid Build Coastguard Worker */ 16*4d7e907cSAndroid Build Coastguard Worker 17*4d7e907cSAndroid Build Coastguard Workerpackage [email protected]; 18*4d7e907cSAndroid Build Coastguard Worker 19*4d7e907cSAndroid Build Coastguard Workerimport @1.0::RadioIndicationType; 20*4d7e907cSAndroid Build Coastguard Workerimport @1.5::IRadioIndication; 21*4d7e907cSAndroid Build Coastguard Workerimport @1.6::CellInfo; 22*4d7e907cSAndroid Build Coastguard Workerimport @1.6::LinkCapacityEstimate; 23*4d7e907cSAndroid Build Coastguard Workerimport @1.6::NetworkScanResult; 24*4d7e907cSAndroid Build Coastguard Workerimport @1.6::SignalStrength; 25*4d7e907cSAndroid Build Coastguard Workerimport @1.6::SetupDataCallResult; 26*4d7e907cSAndroid Build Coastguard Workerimport @1.6::PbReceivedStatus; 27*4d7e907cSAndroid Build Coastguard Workerimport @1.6::PhysicalChannelConfig; 28*4d7e907cSAndroid Build Coastguard Workerimport @1.6::PhonebookRecordInfo; 29*4d7e907cSAndroid Build Coastguard Worker 30*4d7e907cSAndroid Build Coastguard Worker/** 31*4d7e907cSAndroid Build Coastguard Worker * Interface declaring unsolicited radio indications. 32*4d7e907cSAndroid Build Coastguard Worker */ 33*4d7e907cSAndroid Build Coastguard Workerinterface IRadioIndication extends @1.5::IRadioIndication { 34*4d7e907cSAndroid Build Coastguard Worker 35*4d7e907cSAndroid Build Coastguard Worker /** 36*4d7e907cSAndroid Build Coastguard Worker * Indicates data call contexts have changed. 37*4d7e907cSAndroid Build Coastguard Worker * 38*4d7e907cSAndroid Build Coastguard Worker * This indication is updated from [email protected] to report the @1.6 version of 39*4d7e907cSAndroid Build Coastguard Worker * SetupDataCallResult. 40*4d7e907cSAndroid Build Coastguard Worker * 41*4d7e907cSAndroid Build Coastguard Worker * @param type Type of radio indication 42*4d7e907cSAndroid Build Coastguard Worker * @param dcList Array of SetupDataCallResult identical to that returned by 43*4d7e907cSAndroid Build Coastguard Worker * IRadio.getDataCallList(). It is the complete list of current data contexts including 44*4d7e907cSAndroid Build Coastguard Worker * new contexts that have been activated. A data call is only removed from this list 45*4d7e907cSAndroid Build Coastguard Worker * when any of the below conditions is matched. 46*4d7e907cSAndroid Build Coastguard Worker * 1. The framework sends a IRadio.deactivateDataCall(). 47*4d7e907cSAndroid Build Coastguard Worker * 2. The radio is powered off/on. 48*4d7e907cSAndroid Build Coastguard Worker * 3. Unsolicited disconnect from either modem or network side. 49*4d7e907cSAndroid Build Coastguard Worker */ 50*4d7e907cSAndroid Build Coastguard Worker oneway dataCallListChanged_1_6(RadioIndicationType type, vec<SetupDataCallResult> dcList); 51*4d7e907cSAndroid Build Coastguard Worker 52*4d7e907cSAndroid Build Coastguard Worker /** 53*4d7e907cSAndroid Build Coastguard Worker * The modem can explicitly set SetupDataCallResult::suggestedRetryTime after a failure in 54*4d7e907cSAndroid Build Coastguard Worker * [email protected]::SetupDataCall. During that time, no new calls are allowed to 55*4d7e907cSAndroid Build Coastguard Worker * [email protected]::SetupDataCall that use the same APN. 56*4d7e907cSAndroid Build Coastguard Worker * 57*4d7e907cSAndroid Build Coastguard Worker * When [email protected]::unthrottleApn is sent, AOSP will no longer throttle calls 58*4d7e907cSAndroid Build Coastguard Worker * to [email protected]::SetupDataCall for the given APN. 59*4d7e907cSAndroid Build Coastguard Worker * 60*4d7e907cSAndroid Build Coastguard Worker * @param type Type of radio indication 61*4d7e907cSAndroid Build Coastguard Worker * @param apn Apn to unthrottle 62*4d7e907cSAndroid Build Coastguard Worker */ 63*4d7e907cSAndroid Build Coastguard Worker oneway unthrottleApn(RadioIndicationType type, string apn); 64*4d7e907cSAndroid Build Coastguard Worker 65*4d7e907cSAndroid Build Coastguard Worker /** 66*4d7e907cSAndroid Build Coastguard Worker * Indicates current link capacity estimate. 67*4d7e907cSAndroid Build Coastguard Worker * This replaces @1.2::IRadioIndication.currentLinkCapacityEstimate(). 68*4d7e907cSAndroid Build Coastguard Worker * This indication is sent whenever the reporting criteria, as set by 69*4d7e907cSAndroid Build Coastguard Worker * @1.2::IRadio.setLinkCapacityReportingCriteria, are met and the indication is not 70*4d7e907cSAndroid Build Coastguard Worker * suppressed by @1.2::IRadio.setIndicationFilter_1_2(). 71*4d7e907cSAndroid Build Coastguard Worker * 72*4d7e907cSAndroid Build Coastguard Worker * @param type Type of radio indication 73*4d7e907cSAndroid Build Coastguard Worker * @param lce LinkCapacityEstimate 74*4d7e907cSAndroid Build Coastguard Worker */ 75*4d7e907cSAndroid Build Coastguard Worker oneway currentLinkCapacityEstimate_1_6(RadioIndicationType type, LinkCapacityEstimate lce); 76*4d7e907cSAndroid Build Coastguard Worker 77*4d7e907cSAndroid Build Coastguard Worker /** 78*4d7e907cSAndroid Build Coastguard Worker * Indicates current signal strength of the radio. 79*4d7e907cSAndroid Build Coastguard Worker * 80*4d7e907cSAndroid Build Coastguard Worker * This is identical to currentSignalStrength_1_4 but uses an updated version of 81*4d7e907cSAndroid Build Coastguard Worker * SignalStrength. 82*4d7e907cSAndroid Build Coastguard Worker * 83*4d7e907cSAndroid Build Coastguard Worker * @param type Type of radio indication 84*4d7e907cSAndroid Build Coastguard Worker * @param signalStrength SignalStrength information 85*4d7e907cSAndroid Build Coastguard Worker */ 86*4d7e907cSAndroid Build Coastguard Worker oneway currentSignalStrength_1_6(RadioIndicationType type, SignalStrength signalStrength); 87*4d7e907cSAndroid Build Coastguard Worker 88*4d7e907cSAndroid Build Coastguard Worker /** 89*4d7e907cSAndroid Build Coastguard Worker * Report all of the current cell information known to the radio. 90*4d7e907cSAndroid Build Coastguard Worker * 91*4d7e907cSAndroid Build Coastguard Worker * This indication is updated from [email protected] to report the @1.6 version of 92*4d7e907cSAndroid Build Coastguard Worker * CellInfo. 93*4d7e907cSAndroid Build Coastguard Worker * 94*4d7e907cSAndroid Build Coastguard Worker * @param type Type of radio indication 95*4d7e907cSAndroid Build Coastguard Worker * @param records Current cell information 96*4d7e907cSAndroid Build Coastguard Worker */ 97*4d7e907cSAndroid Build Coastguard Worker oneway cellInfoList_1_6(RadioIndicationType type, vec<CellInfo> records); 98*4d7e907cSAndroid Build Coastguard Worker 99*4d7e907cSAndroid Build Coastguard Worker /** 100*4d7e907cSAndroid Build Coastguard Worker * Incremental network scan results. 101*4d7e907cSAndroid Build Coastguard Worker * 102*4d7e907cSAndroid Build Coastguard Worker * This indication is updated from [email protected] to report the @1.6 version of 103*4d7e907cSAndroid Build Coastguard Worker * CellInfo. 104*4d7e907cSAndroid Build Coastguard Worker */ 105*4d7e907cSAndroid Build Coastguard Worker oneway networkScanResult_1_6(RadioIndicationType type, NetworkScanResult result); 106*4d7e907cSAndroid Build Coastguard Worker 107*4d7e907cSAndroid Build Coastguard Worker /** 108*4d7e907cSAndroid Build Coastguard Worker * Indicates physical channel configurations. 109*4d7e907cSAndroid Build Coastguard Worker * 110*4d7e907cSAndroid Build Coastguard Worker * An empty configs list shall be returned when the radio is in idle mode (i.e. RRC idle). 111*4d7e907cSAndroid Build Coastguard Worker * 112*4d7e907cSAndroid Build Coastguard Worker * @param type Type of radio indication 113*4d7e907cSAndroid Build Coastguard Worker * @param configs Vector of PhysicalChannelConfigs 114*4d7e907cSAndroid Build Coastguard Worker */ 115*4d7e907cSAndroid Build Coastguard Worker oneway currentPhysicalChannelConfigs_1_6(RadioIndicationType type, 116*4d7e907cSAndroid Build Coastguard Worker vec<PhysicalChannelConfig> configs); 117*4d7e907cSAndroid Build Coastguard Worker 118*4d7e907cSAndroid Build Coastguard Worker /** 119*4d7e907cSAndroid Build Coastguard Worker * Indicates whether SIM phonebook is changed. 120*4d7e907cSAndroid Build Coastguard Worker * 121*4d7e907cSAndroid Build Coastguard Worker * This indication is sent whenever the SIM phonebook is changed, including SIM is 122*4d7e907cSAndroid Build Coastguard Worker * inserted or removed and updated by IRadio.updateSimPhonebookRecords. 123*4d7e907cSAndroid Build Coastguard Worker * 124*4d7e907cSAndroid Build Coastguard Worker * @param type Type of radio indication 125*4d7e907cSAndroid Build Coastguard Worker */ 126*4d7e907cSAndroid Build Coastguard Worker oneway simPhonebookChanged(RadioIndicationType type); 127*4d7e907cSAndroid Build Coastguard Worker 128*4d7e907cSAndroid Build Coastguard Worker /** 129*4d7e907cSAndroid Build Coastguard Worker * Indicates the content of all the used records in the SIM phonebook. 130*4d7e907cSAndroid Build Coastguard Worker * 131*4d7e907cSAndroid Build Coastguard Worker * This indication is associated with the API getSimPhonebookRecords and 132*4d7e907cSAndroid Build Coastguard Worker * might be received more than once that is replying on the record count. 133*4d7e907cSAndroid Build Coastguard Worker * 134*4d7e907cSAndroid Build Coastguard Worker * @param type Type of radio indication 135*4d7e907cSAndroid Build Coastguard Worker * @param status Status of PbReceivedStatus 136*4d7e907cSAndroid Build Coastguard Worker * @param records Vector of PhonebookRecordInfo 137*4d7e907cSAndroid Build Coastguard Worker */ 138*4d7e907cSAndroid Build Coastguard Worker oneway simPhonebookRecordsReceived(RadioIndicationType type, 139*4d7e907cSAndroid Build Coastguard Worker PbReceivedStatus status, vec<PhonebookRecordInfo> records); 140*4d7e907cSAndroid Build Coastguard Worker}; 141