blob: d65c6d0fe4fa1221eae65f479536a24e49ecf720 [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
allenwtsu1c3dcd32020-09-25 17:58:01 +080019import @1.0::SendSmsResult;
Yomna Nassere8bfa9c2020-11-17 22:00:55 +000020import @1.4::RadioAccessFamily;
Jayachandran C262b6062020-07-22 15:53:58 -070021import @1.5::IRadioResponse;
Sarah Chine52a3942021-02-12 11:55:15 -080022import @1.5::RadioAccessSpecifier;
Shinsuke Ishiokaede1e952018-08-17 18:02:29 +090023import @1.6::Call;
Mingming Caida0d9832020-11-05 17:56:57 -080024import @1.6::CellInfo;
Hui Wangfb202502020-11-13 04:30:18 +000025import @1.6::RegStateResult;
Mingming Caida0d9832020-11-05 17:56:57 -080026import @1.6::RadioResponseInfo;
Jayachandran C9bc276b2020-07-24 00:46:58 -070027import @1.6::SetupDataCallResult;
Mingming Cai20a2f422020-12-03 12:18:48 -080028import @1.6::SignalStrength;
Hongbo Zengb1ea8db2021-02-02 23:01:12 +080029import @1.6::SlicingConfig;
Jayachandran C262b6062020-07-22 15:53:58 -070030
31/**
32 * Interface declaring response functions to solicited radio requests.
33 */
34interface IRadioResponse extends @1.5::IRadioResponse {
Jayachandran C9bc276b2020-07-24 00:46:58 -070035 /**
36 * @param info Response info struct containing response type, serial no. and error
Tim Line29df602020-09-26 22:43:24 +080037 *
38 * Valid errors returned:
39 * RadioError:NONE
40 * RadioError:INTERNAL_ERR
41 * RadioError:INVALID_ARGUMENTS
42 * RadioError:RF_HARDWARE_ISSUE
43 * RadioError:NO_RF_CALIBRATION_INFO
44 */
45 oneway setRadioPowerResponse_1_6(RadioResponseInfo info);
46
47 /**
48 * @param info Response info struct containing response type, serial no. and error
Jayachandran C9bc276b2020-07-24 00:46:58 -070049 * @param dcResponse SetupDataCallResult defined in types.hal
50 *
51 * Valid errors returned:
52 * RadioError:NONE must be returned on both success and failure of setup with the
53 * DataCallResponse.status containing the actual status
54 * For all other errors the DataCallResponse is ignored.
55 * RadioError:RADIO_NOT_AVAILABLE
56 * RadioError:OP_NOT_ALLOWED_BEFORE_REG_TO_NW
57 * RadioError:OP_NOT_ALLOWED_DURING_VOICE_CALL
58 * RadioError:INVALID_ARGUMENTS
59 * RadioError:INTERNAL_ERR
60 * RadioError:NO_RESOURCES if the vendor is unable handle due to resources
61 * are full.
62 * RadioError:SIM_ABSENT
63 */
64 oneway setupDataCallResponse_1_6(RadioResponseInfo info, SetupDataCallResult dcResponse);
65
66 /**
67 * @param info Response info struct containing response type, serial no. and error
68 * @param dcResponse List of SetupDataCallResult as defined in types.hal
69 *
70 * Valid errors returned:
71 * RadioError:NONE
72 * RadioError:RADIO_NOT_AVAILABLE
73 * RadioError:INTERNAL_ERR
74 * RadioError:SIM_ABSENT
75 */
76 oneway getDataCallListResponse_1_6(RadioResponseInfo info, vec<SetupDataCallResult> dcResponse);
allenwtsu1c3dcd32020-09-25 17:58:01 +080077
78 /**
79 * @param info Response info struct containing response type, serial no. and error
80 * @param sms Response to sms sent as defined by SendSmsResult in types.hal
81 *
82 * Valid errors returned:
83 * RadioError:NONE
84 * RadioError:RADIO_NOT_AVAILABLE
85 * RadioError:SMS_SEND_FAIL_RETRY
86 * RadioError:NETWORK_REJECT
87 * RadioError:INVALID_STATE
88 * RadioError:INVALID_ARGUMENTS
89 * RadioError:NO_MEMORY
90 * RadioError:REQUEST_RATE_LIMITED
91 * RadioError:INVALID_SMS_FORMAT
92 * RadioError:SYSTEM_ERR
93 * RadioError:ENCODING_ERR
94 * RadioError:INVALID_SMSC_ADDRESS
95 * RadioError:MODEM_ERR
96 * RadioError:NETWORK_ERR
97 * RadioError:INTERNAL_ERR
98 * RadioError:REQUEST_NOT_SUPPORTED
99 * RadioError:INVALID_MODEM_STATE
100 * RadioError:NETWORK_NOT_READY
101 * RadioError:OPERATION_NOT_ALLOWED
102 * RadioError:NO_RESOURCES
103 * RadioError:CANCELLED
104 * RadioError:SIM_ABSENT
105 * RadioError:ACCESS_BARRED
106 * RadioError:BLOCKED_DUE_TO_CALL
107 */
108 oneway sendSmsResponse_1_6(RadioResponseInfo info, SendSmsResult sms);
109
110 /**
111 * @param info Response info struct containing response type, serial no. and error
112 * @param sms Response to sms sent as defined by SendSmsResult in types.hal
113 *
114 * Valid errors returned:
115 * RadioError:NONE
116 * RadioError:RADIO_NOT_AVAILABLE
117 * RadioError:SMS_SEND_FAIL_RETRY
118 * RadioError:NETWORK_REJECT
119 * RadioError:INVALID_STATE
120 * RadioError:INVALID_ARGUMENTS
121 * RadioError:NO_MEMORY
122 * RadioError:REQUEST_RATE_LIMITED
123 * RadioError:INVALID_SMS_FORMAT
124 * RadioError:SYSTEM_ERR
125 * RadioError:FDN_CHECK_FAILURE
126 * RadioError:ENCODING_ERR
127 * RadioError:INVALID_SMSC_ADDRESS
128 * RadioError:MODEM_ERR
129 * RadioError:NETWORK_ERR
130 * RadioError:INTERNAL_ERR
131 * RadioError:REQUEST_NOT_SUPPORTED
132 * RadioError:INVALID_MODEM_STATE
133 * RadioError:NETWORK_NOT_READY
134 * RadioError:OPERATION_NOT_ALLOWED
135 * RadioError:NO_RESOURCES
136 * RadioError:CANCELLED
137 * RadioError:SIM_ABSENT
138 * RadioError:ACCESS_BARRED
139 * RadioError:BLOCKED_DUE_TO_CALL
140 */
141 oneway sendSMSExpectMoreResponse_1_6(RadioResponseInfo info, SendSmsResult sms);
142
143 /**
144 * @param info Response info struct containing response type, serial no. and error
145 * @param sms Sms result struct as defined by SendSmsResult in types.hal
146 *
147 * Valid errors returned:
148 * RadioError:NONE
149 * RadioError:RADIO_NOT_AVAILABLE
150 * RadioError:INVALID_ARGUMENTS
151 * RadioError:SMS_SEND_FAIL_RETRY
152 * RadioError:NETWORK_REJECT
153 * RadioError:INVALID_STATE
154 * RadioError:NO_MEMORY
155 * RadioError:REQUEST_RATE_LIMITED
156 * RadioError:INVALID_SMS_FORMAT
157 * RadioError:SYSTEM_ERR
158 * RadioError:FDN_CHECK_FAILURE
159 * RadioError:MODEM_ERR
160 * RadioError:NETWORK_ERR
161 * RadioError:ENCODING_ERR
162 * RadioError:INVALID_SMSC_ADDRESS
163 * RadioError:INTERNAL_ERR
164 * RadioError:SYSTEM_ERR
165 * RadioError:REQUEST_NOT_SUPPORTED
166 * RadioError:OPERATION_NOT_ALLOWED
167 * RadioError:ENCODING_ERR
168 * RadioError:NO_RESOURCES
169 * RadioError:CANCELLED
170 * RadioError:SIM_ABSENT
171 * RadioError:SIMULTANEOUS_SMS_AND_CALL_NOT_ALLOWED
172 * RadioError:ACCESS_BARRED
173 * RadioError:BLOCKED_DUE_TO_CALL
174 */
175 oneway sendCdmaSmsResponse_1_6(RadioResponseInfo info, SendSmsResult sms);
176
177 /**
178 * @param info Response info struct containing response type, serial no. and error
179 * @param sms Response to sms sent as defined by SendSmsResult in types.hal
180 *
181 * Valid errors returned:
182 * RadioError:NONE
183 * RadioError:RADIO_NOT_AVAILABLE
184 * RadioError:SMS_SEND_FAIL_RETRY
185 * RadioError:NETWORK_REJECT
186 * RadioError:INVALID_STATE
187 * RadioError:INVALID_ARGUMENTS
188 * RadioError:NO_MEMORY
189 * RadioError:REQUEST_RATE_LIMITED
190 * RadioError:INVALID_SMS_FORMAT
191 * RadioError:SYSTEM_ERR
192 * RadioError:FDN_CHECK_FAILURE
193 * RadioError:ENCODING_ERR
194 * RadioError:INVALID_SMSC_ADDRESS
195 * RadioError:MODEM_ERR
196 * RadioError:NETWORK_ERR
197 * RadioError:INTERNAL_ERR
198 * RadioError:REQUEST_NOT_SUPPORTED
199 * RadioError:INVALID_MODEM_STATE
200 * RadioError:NETWORK_NOT_READY
201 * RadioError:OPERATION_NOT_ALLOWED
202 * RadioError:NO_RESOURCES
203 * RadioError:CANCELLED
204 * RadioError:SIM_ABSENT
205 * RadioError:SIMULTANEOUS_SMS_AND_CALL_NOT_ALLOWED
206 * RadioError:ACCESS_BARRED
207 * RadioError:BLOCKED_DUE_TO_CALL
208 */
209 oneway sendCdmaSmsExpectMoreResponse_1_6(RadioResponseInfo info, SendSmsResult sms);
Sooraj Sasindrana9d461b2020-08-14 11:00:11 -0700210
211 /**
212 * @param info Response info struct containing response type, serial no. and error
213 *
214 * Valid errors returned:
215 * RadioError:NONE
216 * RadioError:RADIO_NOT_AVAILABLE
Jordan Liue4f5f022020-10-21 16:28:40 -0700217 * RadioError:INVALID_ARGUMENTS
218 * RadioError:SIM_ERR (indicates a timeout or other issue making the SIM unresponsive)
219 *
220 * Note that this differs from setSimCardPowerResponse_1_1 in that the response
221 * should only be sent once the request from setSimCardPower_1_6 is complete
222 * (the SIM has finished powering on or off).
223 */
224 oneway setSimCardPowerResponse_1_6(RadioResponseInfo info);
225
226 /**
227 * @param info Response info struct containing response type, serial no. and error
228 *
229 * Valid errors returned:
230 * RadioError:NONE
231 * RadioError:RADIO_NOT_AVAILABLE
Sooraj Sasindrana9d461b2020-08-14 11:00:11 -0700232 * RadioError:INTERNAL_ERR
Sooraj Sasindran4b272a52021-03-11 16:50:00 -0800233 * RadioError:REQUEST_NOT_SUPPORTED
Sooraj Sasindrana9d461b2020-08-14 11:00:11 -0700234 */
Sooraj Sasindrane9525fd2020-11-03 20:46:57 -0800235 oneway setNrDualConnectivityStateResponse(RadioResponseInfo info);
Sooraj Sasindrana9d461b2020-08-14 11:00:11 -0700236
237 /**
238 * @param info Response info struct containing response type, serial no. and error
239 *
240 * @param isEnabled Indicates whether NR dual connectivity is enabled or not, True if enabled
241 * else false.
242 * Valid errors returned:
243 * RadioError:NONE
244 * RadioError:RADIO_NOT_AVAILABLE
245 * RadioError:INTERNAL_ERR
Sooraj Sasindran4b272a52021-03-11 16:50:00 -0800246 * RadioError:REQUEST_NOT_SUPPORTED
Sooraj Sasindrana9d461b2020-08-14 11:00:11 -0700247 */
248 oneway isNrDualConnectivityEnabledResponse(RadioResponseInfo info, bool isEnabled);
Daniel Bright15cc34a2020-10-26 11:34:53 -0700249
250 /**
251 * @param info Response info struct containing response type, serial no. and error
Daniel Bright3c72fba2020-11-03 14:56:23 -0800252 * @param id The allocated id. On an error, this is set to 0.
Daniel Bright15cc34a2020-10-26 11:34:53 -0700253 *
254 * Valid errors returned:
255 * RadioError:NONE
256 * RadioError:RADIO_NOT_AVAILABLE
257 * RadioError:INTERNAL_ERR
258 * RadioError:NO_RESOURCES- Indicates that no pdu session ids are available
259 * RadioError:REQUEST_NOT_SUPPORTED
260 */
261 oneway allocatePduSessionIdResponse(RadioResponseInfo info, int32_t id);
262
263 /**
264 * @param info Response info struct containing response type, serial no. and error
265 *
266 * Valid errors returned:
267 * RadioError:NONE
268 * RadioError:RADIO_NOT_AVAILABLE
269 * RadioError:INTERNAL_ERR
270 * RadioError:NO_RESOURCES
271 * RadioError:REQUEST_NOT_SUPPORTED
272 */
273 oneway releasePduSessionIdResponse(RadioResponseInfo info);
274
275 /**
276 * @param info Response info struct containing response type, serial no. and error
277 *
278 * Valid errors returned:
279 * RadioError:NONE
280 * RadioError:RADIO_NOT_AVAILABLE
281 * RadioError:INTERNAL_ERR
282 * RadioError:NO_RESOURCES
283 * RadioError:REQUEST_NOT_SUPPORTED
284 * RadioError:INVALID_CALL_ID
285 */
Daniel Bright3c72fba2020-11-03 14:56:23 -0800286 oneway startHandoverResponse(RadioResponseInfo info);
Daniel Bright15cc34a2020-10-26 11:34:53 -0700287
288 /**
289 * @param info Response info struct containing response type, serial no. and error
290 * @param dcResponse Attributes of data call
291 *
292 * Valid errors returned:
293 * RadioError:NONE
294 * RadioError:RADIO_NOT_AVAILABLE
295 * RadioError:INTERNAL_ERR
296 * RadioError:NO_RESOURCES
297 * RadioError:REQUEST_NOT_SUPPORTED
298 * RadioError:INVALID_CALL_ID
299 */
300 oneway cancelHandoverResponse(RadioResponseInfo info);
ThiƩbaud Weksteen5ae16f32020-08-21 16:46:07 +0200301
302 /**
SongFerngWangf92b61c2021-01-26 03:08:48 +0800303 * Callback of IRadio.setAllowedNetworkTypesBitmap(int, bitfield<RadioAccessFamily>)
ThiƩbaud Weksteen5ae16f32020-08-21 16:46:07 +0200304 *
305 * Valid errors returned:
306 * RadioError:NONE
307 * RadioError:RADIO_NOT_AVAILABLE
308 * RadioError:OPERATION_NOT_ALLOWED
309 * RadioError:MODE_NOT_SUPPORTED
310 * RadioError:INTERNAL_ERR
311 * RadioError:INVALID_ARGUMENTS
312 * RadioError:MODEM_ERR
313 * RadioError:REQUEST_NOT_SUPPORTED
314 * RadioError:NO_RESOURCES
315 */
SongFerngWangf92b61c2021-01-26 03:08:48 +0800316 oneway setAllowedNetworkTypesBitmapResponse(RadioResponseInfo info);
Jack Nudelman5cd94142020-09-24 14:23:35 -0700317
318 /**
SongFerngWangf92b61c2021-01-26 03:08:48 +0800319 * Callback of IRadio.getAllowedNetworkTypesBitmap(int, bitfield<RadioAccessFamily>)
320 * @param info Response info struct containing response type, serial no. and error
321 * @param networkTypeBitmap a 32-bit bitmap of RadioAccessFamily.
Yomna Nassere8bfa9c2020-11-17 22:00:55 +0000322 *
323 * Valid errors returned:
324 * RadioError:NONE
325 * RadioError:RADIO_NOT_AVAILABLE
326 * RadioError:OPERATION_NOT_ALLOWED
327 * RadioError:MODE_NOT_SUPPORTED
328 * RadioError:INTERNAL_ERR
329 * RadioError:INVALID_ARGUMENTS
330 * RadioError:MODEM_ERR
331 * RadioError:REQUEST_NOT_SUPPORTED
332 * RadioError:NO_RESOURCES
333 */
SongFerngWangf92b61c2021-01-26 03:08:48 +0800334 oneway getAllowedNetworkTypesBitmapResponse(
Yomna Nassere8bfa9c2020-11-17 22:00:55 +0000335 RadioResponseInfo info, bitfield<RadioAccessFamily> networkTypeBitmap);
336
337 /**
Jack Nudelman5cd94142020-09-24 14:23:35 -0700338 * @param info Response info struct containing response type, serial no. and error
339 *
340 * Valid errors returned:
341 * RadioError:NONE
342 * RadioError:RADIO_NOT_AVAILABLE
343 * RadioError:MODEM_ERR
344 * RadioError:INVALID_ARGUMENTS
345 */
346 oneway setDataThrottlingResponse(RadioResponseInfo info);
Sarah Chinf69abcf2020-11-18 13:40:15 -0800347
348 /**
349 * @param info Response info struct containing response type, serial no. and error
Sarah Chine52a3942021-02-12 11:55:15 -0800350 * @param specifiers List of RadioAccessSpecifiers that are scanned.
Sarah Chinf69abcf2020-11-18 13:40:15 -0800351 *
352 * Valid errors returned:
353 * RadioError:NONE
354 * RadioError:RADIO_NOT_AVAILABLE
355 * RadioError:INTERNAL_ERR
356 * RadioError:INVALID_ARGUMENTS
357 */
Sarah Chine52a3942021-02-12 11:55:15 -0800358 oneway getSystemSelectionChannelsResponse(
359 RadioResponseInfo info, vec<RadioAccessSpecifier> specifiers);
Hui Wangfb202502020-11-13 04:30:18 +0000360
361 /**
Mingming Caida0d9832020-11-05 17:56:57 -0800362 * This is identical to getCellInfoListResponse_1_5 but uses an updated version of CellInfo.
363 *
364 * @param info Response info struct containing response type, serial no. and error
365 * @param cellInfo List of current cell information known to radio
366 *
367 * Valid errors returned:
368 * RadioError:NONE
369 * RadioError:RADIO_NOT_AVAILABLE
370 * RadioError:INTERNAL_ERR
371 */
372 oneway getCellInfoListResponse_1_6(RadioResponseInfo info, vec<CellInfo> cellInfo);
373
374 /**
Mingming Cai20a2f422020-12-03 12:18:48 -0800375 * This is identical to getSignalStrengthResponse_1_4 but uses an updated version of
376 * SignalStrength.
377 *
378 * @param signalStrength Current signal strength
379 *
380 * Valid errors returned:
381 * RadioError:NONE
382 * RadioError:RADIO_NOT_AVAILABLE
383 * RadioError:INTERNAL_ERR
384 */
385 oneway getSignalStrengthResponse_1_6(RadioResponseInfo info, SignalStrength signalStrength);
386
387 /**
Hui Wangfb202502020-11-13 04:30:18 +0000388 * @param info Response info struct containing response type, serial no. and error
389 * @param voiceRegResponse Current Voice registration response as defined by RegStateResult
390 * in types.hal
391 *
392 * Valid errors returned:
393 * RadioError:NONE
394 * RadioError:RADIO_NOT_AVAILABLE
395 * RadioError:INTERNAL_ERR
396 */
397 oneway getVoiceRegistrationStateResponse_1_6(RadioResponseInfo info,
398 RegStateResult voiceRegResponse);
399
400 /**
401 * @param info Response info struct containing response type, serial no. and error
402 * @param dataRegResponse Current Data registration response as defined by RegStateResult in
403 * types.hal
404 *
405 * Valid errors returned:
406 * RadioError:NONE
407 * RadioError:RADIO_NOT_AVAILABLE
408 * RadioError:INTERNAL_ERR
409 * RadioError:NOT_PROVISIONED
410 */
411 oneway getDataRegistrationStateResponse_1_6(RadioResponseInfo info,
412 RegStateResult dataRegResponse);
Shinsuke Ishiokaede1e952018-08-17 18:02:29 +0900413
414 /**
415 * @param calls Current call list
416 * RadioError:NO_MEMORY
417 * RadioError:INTERNAL_ERR
418 * RadioError:SYSTEM_ERR
419 * RadioError:INVALID_ARGUMENTS
420 * RadioError:REQUEST_NOT_SUPPORTED
421 * RadioError:NO_RESOURCES
422 * RadioError:CANCELLED
423 */
424 oneway getCurrentCallsResponse_1_6(RadioResponseInfo info, vec<Call> calls);
Hongbo Zengb1ea8db2021-02-02 23:01:12 +0800425
426 /**
427 * @param info Response info struct containing response type, serial no. and error
428 * @param slicingConfig Current slicing configuration
429 *
430 * Valid errors returned:
431 * RadioError:NONE
432 * RadioError:RADIO_NOT_AVAILABLE
433 * RadioError:INTERNAL_ERR
434 * RadioError:MODEM_ERR
435 */
436 oneway getSlicingConfigResponse(RadioResponseInfo info,
437 SlicingConfig slicingConfig);
Jayachandran C262b6062020-07-22 15:53:58 -0700438};