blob: 05a7585724c42a5c6c272694b3472e67b8eef85d [file] [log] [blame]
Jayachandran C262b6062020-07-22 15:53:58 -07001/*
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
Jayachandran C9bc276b2020-07-24 00:46:58 -070019import @1.0::RadioIndicationType;
Jayachandran C262b6062020-07-22 15:53:58 -070020import @1.5::IRadioIndication;
Mingming Caida0d9832020-11-05 17:56:57 -080021import @1.6::CellInfo;
Sooraj Sasindran43e52202020-10-22 15:24:14 -070022import @1.6::LinkCapacityEstimate;
Mingming Caida0d9832020-11-05 17:56:57 -080023import @1.6::NetworkScanResult;
Mingming Cai20a2f422020-12-03 12:18:48 -080024import @1.6::SignalStrength;
Mingming Caida0d9832020-11-05 17:56:57 -080025import @1.6::SetupDataCallResult;
Mengjun Leng48966f02021-03-16 10:09:20 +080026import @1.6::PbReceivedStatus;
Zoey Chene47a5162020-12-01 12:44:06 +080027import @1.6::PhysicalChannelConfig;
Mengjun Leng48966f02021-03-16 10:09:20 +080028import @1.6::PhonebookRecordInfo;
Jayachandran C262b6062020-07-22 15:53:58 -070029
30/**
31 * Interface declaring unsolicited radio indications.
32 */
33interface IRadioIndication extends @1.5::IRadioIndication {
Jayachandran C9bc276b2020-07-24 00:46:58 -070034
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);
Daniel Bright95db21d2020-10-28 15:24:20 -070051
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);
Sooraj Sasindran43e52202020-10-22 15:24:14 -070064
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);
Mingming Caida0d9832020-11-05 17:56:57 -080076
Mingming Cai20a2f422020-12-03 12:18:48 -080077 /**
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
Mingming Caida0d9832020-11-05 17:56:57 -080088 /**
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);
Zoey Chene47a5162020-12-01 12:44:06 +0800106
107 /**
108 * Indicates physical channel configurations.
109 *
Jack Yu147f2d02021-04-12 11:47:23 -0700110 * An empty configs list shall be returned when the radio is in idle mode (i.e. RRC idle).
Zoey Chene47a5162020-12-01 12:44:06 +0800111 *
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);
Mengjun Leng48966f02021-03-16 10:09:20 +0800117
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);
Jayachandran C262b6062020-07-22 15:53:58 -0700140};