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