| /* |
| * Copyright (C) 2019 The Android Open Source Project |
| * |
| * Licensed under the Apache License, Version 2.0 (the "License"); |
| * you may not use this file except in compliance with the License. |
| * You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| |
| package android.hardware.radio@1.5; |
| |
| import @1.0::RadioIndicationType; |
| import @1.4::IRadioIndication; |
| |
| /** |
| * Interface declaring unsolicited radio indications. |
| */ |
| interface IRadioIndication extends @1.4::IRadioIndication { |
| /** |
| * Report change of whether uiccApplications are enabled, or disabled. |
| * |
| * @param type Type of radio indication |
| * @param enabled whether uiccApplications are enabled, or disabled |
| */ |
| oneway uiccApplicationsEnablementChanged(RadioIndicationType type, bool enabled); |
| |
| /** |
| * Report that Registration or a Location/Routing/Tracking Area update has failed. |
| * |
| * <p>Indicate whenever a registration procedure, including a location, routing, or tracking |
| * area update fails. This includes procedures that do not necessarily result in a change of |
| * the modem's registration status. If the modem's registration status changes, that is |
| * reflected in the onNetworkStateChanged() and subsequent get{Voice/Data}RegistrationState(). |
| * |
| * @param cellIdentity the CellIdentity, which must include the globally unique identifier for |
| * the cell (for example, all components of the CGI or ECGI). |
| * @param chosenPlmn a 5 or 6 digit alphanumeric PLMN (MCC|MNC) among those broadcast by the |
| * cell that was chosen for the failed registration attempt. |
| * @param domain Domain::CS, Domain::PS, or both in case of a combined procedure. |
| * @param causeCode the primary failure cause code of the procedure. |
| * For GSM/UMTS (MM), values are in TS 24.008 Sec 10.5.95 |
| * For GSM/UMTS (GMM), values are in TS 24.008 Sec 10.5.147 |
| * For LTE (EMM), cause codes are TS 24.301 Sec 9.9.3.9 |
| * For NR (5GMM), cause codes are TS 24.501 Sec 9.11.3.2 |
| * MAX_INT if this value is unused. |
| * @param additionalCauseCode the cause code of any secondary/combined procedure if appropriate. |
| * For UMTS, if a combined attach succeeds for PS only, then the GMM cause code shall be |
| * included as an additionalCauseCode. |
| * For LTE (ESM), cause codes are in TS 24.301 9.9.4.4 |
| * MAX_INT if this value is unused. |
| */ |
| oneway registrationFailed( |
| RadioIndicationType type, CellIdentity cellIdentity, string chosenPlmn, |
| bitfield<Domain> domain, int32_t causeCode, int32_t additionalCauseCode); |
| |
| /** |
| * Indicate barring information for the user’s access category / access class and PLMN. |
| * |
| * <p>Provide information about the barring status of the cell for the user. The information |
| * provided should describe all barring configurations that are applicable to the current user, |
| * even if the user is not currently barred (due to conditional barring). This informs Android |
| * of likely future (statistical) barring for specific services. |
| * |
| * <p>This indication should be sent whenever the cell’s barring config changes for the current |
| * user, or if the user’s conditional barring status changes due to re-evaluation of the |
| * barring conditions. Barring status will likely change when the device camps for service, |
| * when PLMN selection is completed, when the device attempts to access a conditionally barred |
| * service, and when the System Information including barring info for a camped cell is updated. |
| */ |
| oneway barringInfoChanged( |
| RadioIndicationType type, CellIdentity cellIdentity, vec<BarringInfo> barringInfos); |
| |
| /** |
| * Report all of the current cell information known to the radio. |
| * |
| * This indication is updated from IRadioIndication@1.4 to report the @1.5 version of |
| * CellInfo. |
| * |
| * @param type Type of radio indication |
| * @param records Current cell information |
| */ |
| oneway cellInfoList_1_5(RadioIndicationType type, vec<CellInfo> records); |
| |
| /** |
| * Incremental network scan results. |
| * |
| * This indication is updated from IRadioIndication@1.4 to report the @1.5 version of |
| * CellInfo. |
| */ |
| oneway networkScanResult_1_5(RadioIndicationType type, NetworkScanResult result); |
| |
| /** |
| * Indicates data call contexts have changed. |
| * |
| * This indication is updated from IRadioIndication@1.4 to report the @1.5 version of |
| * SetupDataCallResult. |
| * |
| * @param type Type of radio indication |
| * @param dcList Array of SetupDataCallResult identical to that returned by |
| * IRadio.getDataCallList(). It is the complete list of current data contexts including |
| * new contexts that have been activated. A data call is only removed from this list |
| * when below conditions matched. |
| * 1. The framework sends a IRadio.deactivateDataCall(). |
| * 2. The radio is powered off/on. |
| * 3. Unsolicited disconnect from either modem or network side. |
| */ |
| oneway dataCallListChanged_1_5(RadioIndicationType type, vec<SetupDataCallResult> dcList); |
| }; |