You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

116 lines
5.5 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

/*
* 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 users 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 cells barring config changes for the current
* user, or if the users 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);
};