blob: 56ce809dfed9f3e86be6735795c38d37137cb40e [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
233 */
Sooraj Sasindrane9525fd2020-11-03 20:46:57 -0800234 oneway setNrDualConnectivityStateResponse(RadioResponseInfo info);
Sooraj Sasindrana9d461b2020-08-14 11:00:11 -0700235
236 /**
237 * @param info Response info struct containing response type, serial no. and error
238 *
239 * @param isEnabled Indicates whether NR dual connectivity is enabled or not, True if enabled
240 * else false.
241 * Valid errors returned:
242 * RadioError:NONE
243 * RadioError:RADIO_NOT_AVAILABLE
244 * RadioError:INTERNAL_ERR
245 */
246 oneway isNrDualConnectivityEnabledResponse(RadioResponseInfo info, bool isEnabled);
Daniel Bright15cc34a2020-10-26 11:34:53 -0700247
248 /**
249 * @param info Response info struct containing response type, serial no. and error
Daniel Bright3c72fba2020-11-03 14:56:23 -0800250 * @param id The allocated id. On an error, this is set to 0.
Daniel Bright15cc34a2020-10-26 11:34:53 -0700251 *
252 * Valid errors returned:
253 * RadioError:NONE
254 * RadioError:RADIO_NOT_AVAILABLE
255 * RadioError:INTERNAL_ERR
256 * RadioError:NO_RESOURCES- Indicates that no pdu session ids are available
257 * RadioError:REQUEST_NOT_SUPPORTED
258 */
259 oneway allocatePduSessionIdResponse(RadioResponseInfo info, int32_t id);
260
261 /**
262 * @param info Response info struct containing response type, serial no. and error
263 *
264 * Valid errors returned:
265 * RadioError:NONE
266 * RadioError:RADIO_NOT_AVAILABLE
267 * RadioError:INTERNAL_ERR
268 * RadioError:NO_RESOURCES
269 * RadioError:REQUEST_NOT_SUPPORTED
270 */
271 oneway releasePduSessionIdResponse(RadioResponseInfo info);
272
273 /**
274 * @param info Response info struct containing response type, serial no. and error
275 *
276 * Valid errors returned:
277 * RadioError:NONE
278 * RadioError:RADIO_NOT_AVAILABLE
279 * RadioError:INTERNAL_ERR
280 * RadioError:NO_RESOURCES
281 * RadioError:REQUEST_NOT_SUPPORTED
282 * RadioError:INVALID_CALL_ID
283 */
Daniel Bright3c72fba2020-11-03 14:56:23 -0800284 oneway startHandoverResponse(RadioResponseInfo info);
Daniel Bright15cc34a2020-10-26 11:34:53 -0700285
286 /**
287 * @param info Response info struct containing response type, serial no. and error
288 * @param dcResponse Attributes of data call
289 *
290 * Valid errors returned:
291 * RadioError:NONE
292 * RadioError:RADIO_NOT_AVAILABLE
293 * RadioError:INTERNAL_ERR
294 * RadioError:NO_RESOURCES
295 * RadioError:REQUEST_NOT_SUPPORTED
296 * RadioError:INVALID_CALL_ID
297 */
298 oneway cancelHandoverResponse(RadioResponseInfo info);
ThiƩbaud Weksteen5ae16f32020-08-21 16:46:07 +0200299
300 /**
SongFerngWangf92b61c2021-01-26 03:08:48 +0800301 * Callback of IRadio.setAllowedNetworkTypesBitmap(int, bitfield<RadioAccessFamily>)
ThiƩbaud Weksteen5ae16f32020-08-21 16:46:07 +0200302 *
303 * Valid errors returned:
304 * RadioError:NONE
305 * RadioError:RADIO_NOT_AVAILABLE
306 * RadioError:OPERATION_NOT_ALLOWED
307 * RadioError:MODE_NOT_SUPPORTED
308 * RadioError:INTERNAL_ERR
309 * RadioError:INVALID_ARGUMENTS
310 * RadioError:MODEM_ERR
311 * RadioError:REQUEST_NOT_SUPPORTED
312 * RadioError:NO_RESOURCES
313 */
SongFerngWangf92b61c2021-01-26 03:08:48 +0800314 oneway setAllowedNetworkTypesBitmapResponse(RadioResponseInfo info);
Jack Nudelman5cd94142020-09-24 14:23:35 -0700315
316 /**
SongFerngWangf92b61c2021-01-26 03:08:48 +0800317 * Callback of IRadio.getAllowedNetworkTypesBitmap(int, bitfield<RadioAccessFamily>)
318 * @param info Response info struct containing response type, serial no. and error
319 * @param networkTypeBitmap a 32-bit bitmap of RadioAccessFamily.
Yomna Nassere8bfa9c2020-11-17 22:00:55 +0000320 *
321 * Valid errors returned:
322 * RadioError:NONE
323 * RadioError:RADIO_NOT_AVAILABLE
324 * RadioError:OPERATION_NOT_ALLOWED
325 * RadioError:MODE_NOT_SUPPORTED
326 * RadioError:INTERNAL_ERR
327 * RadioError:INVALID_ARGUMENTS
328 * RadioError:MODEM_ERR
329 * RadioError:REQUEST_NOT_SUPPORTED
330 * RadioError:NO_RESOURCES
331 */
SongFerngWangf92b61c2021-01-26 03:08:48 +0800332 oneway getAllowedNetworkTypesBitmapResponse(
Yomna Nassere8bfa9c2020-11-17 22:00:55 +0000333 RadioResponseInfo info, bitfield<RadioAccessFamily> networkTypeBitmap);
334
335 /**
Jack Nudelman5cd94142020-09-24 14:23:35 -0700336 * @param info Response info struct containing response type, serial no. and error
337 *
338 * Valid errors returned:
339 * RadioError:NONE
340 * RadioError:RADIO_NOT_AVAILABLE
341 * RadioError:MODEM_ERR
342 * RadioError:INVALID_ARGUMENTS
343 */
344 oneway setDataThrottlingResponse(RadioResponseInfo info);
Sarah Chinf69abcf2020-11-18 13:40:15 -0800345
346 /**
347 * @param info Response info struct containing response type, serial no. and error
Sarah Chine52a3942021-02-12 11:55:15 -0800348 * @param specifiers List of RadioAccessSpecifiers that are scanned.
Sarah Chinf69abcf2020-11-18 13:40:15 -0800349 *
350 * Valid errors returned:
351 * RadioError:NONE
352 * RadioError:RADIO_NOT_AVAILABLE
353 * RadioError:INTERNAL_ERR
354 * RadioError:INVALID_ARGUMENTS
355 */
Sarah Chine52a3942021-02-12 11:55:15 -0800356 oneway getSystemSelectionChannelsResponse(
357 RadioResponseInfo info, vec<RadioAccessSpecifier> specifiers);
Hui Wangfb202502020-11-13 04:30:18 +0000358
359 /**
Mingming Caida0d9832020-11-05 17:56:57 -0800360 * This is identical to getCellInfoListResponse_1_5 but uses an updated version of CellInfo.
361 *
362 * @param info Response info struct containing response type, serial no. and error
363 * @param cellInfo List of current cell information known to radio
364 *
365 * Valid errors returned:
366 * RadioError:NONE
367 * RadioError:RADIO_NOT_AVAILABLE
368 * RadioError:INTERNAL_ERR
369 */
370 oneway getCellInfoListResponse_1_6(RadioResponseInfo info, vec<CellInfo> cellInfo);
371
372 /**
Mingming Cai20a2f422020-12-03 12:18:48 -0800373 * This is identical to getSignalStrengthResponse_1_4 but uses an updated version of
374 * SignalStrength.
375 *
376 * @param signalStrength Current signal strength
377 *
378 * Valid errors returned:
379 * RadioError:NONE
380 * RadioError:RADIO_NOT_AVAILABLE
381 * RadioError:INTERNAL_ERR
382 */
383 oneway getSignalStrengthResponse_1_6(RadioResponseInfo info, SignalStrength signalStrength);
384
385 /**
Hui Wangfb202502020-11-13 04:30:18 +0000386 * @param info Response info struct containing response type, serial no. and error
387 * @param voiceRegResponse Current Voice registration response as defined by RegStateResult
388 * in types.hal
389 *
390 * Valid errors returned:
391 * RadioError:NONE
392 * RadioError:RADIO_NOT_AVAILABLE
393 * RadioError:INTERNAL_ERR
394 */
395 oneway getVoiceRegistrationStateResponse_1_6(RadioResponseInfo info,
396 RegStateResult voiceRegResponse);
397
398 /**
399 * @param info Response info struct containing response type, serial no. and error
400 * @param dataRegResponse Current Data registration response as defined by RegStateResult in
401 * types.hal
402 *
403 * Valid errors returned:
404 * RadioError:NONE
405 * RadioError:RADIO_NOT_AVAILABLE
406 * RadioError:INTERNAL_ERR
407 * RadioError:NOT_PROVISIONED
408 */
409 oneway getDataRegistrationStateResponse_1_6(RadioResponseInfo info,
410 RegStateResult dataRegResponse);
Shinsuke Ishiokaede1e952018-08-17 18:02:29 +0900411
412 /**
413 * @param calls Current call list
414 * RadioError:NO_MEMORY
415 * RadioError:INTERNAL_ERR
416 * RadioError:SYSTEM_ERR
417 * RadioError:INVALID_ARGUMENTS
418 * RadioError:REQUEST_NOT_SUPPORTED
419 * RadioError:NO_RESOURCES
420 * RadioError:CANCELLED
421 */
422 oneway getCurrentCallsResponse_1_6(RadioResponseInfo info, vec<Call> calls);
Hongbo Zengb1ea8db2021-02-02 23:01:12 +0800423
424 /**
425 * @param info Response info struct containing response type, serial no. and error
426 * @param slicingConfig Current slicing configuration
427 *
428 * Valid errors returned:
429 * RadioError:NONE
430 * RadioError:RADIO_NOT_AVAILABLE
431 * RadioError:INTERNAL_ERR
432 * RadioError:MODEM_ERR
433 */
434 oneway getSlicingConfigResponse(RadioResponseInfo info,
435 SlicingConfig slicingConfig);
Jayachandran C262b6062020-07-22 15:53:58 -0700436};