blob: 2beb274d7fdde8c76c61d6458b2a98143ac361c7 [file] [log] [blame]
Yifan Hongd1df1012023-04-12 14:20:48 -07001<compatibility-matrix version="1.0" type="framework" level="9">
2 <hal format="hidl" optional="true">
3 <name>android.hardware.audio</name>
4 <version>6.0</version>
5 <version>7.0-1</version>
6 <interface>
7 <name>IDevicesFactory</name>
8 <instance>default</instance>
9 </interface>
10 </hal>
11 <hal format="hidl" optional="true">
12 <name>android.hardware.audio.effect</name>
13 <version>6.0</version>
14 <version>7.0</version>
15 <interface>
16 <name>IEffectsFactory</name>
17 <instance>default</instance>
18 </interface>
19 </hal>
20 <hal format="aidl" optional="true">
21 <name>android.hardware.audio.core</name>
22 <version>1</version>
23 <interface>
24 <name>IModule</name>
25 <instance>default</instance>
26 <instance>a2dp</instance>
27 <instance>bluetooth</instance>
28 <instance>hearing_aid</instance>
29 <instance>msd</instance>
30 <instance>r_submix</instance>
31 <instance>stub</instance>
32 <instance>usb</instance>
33 </interface>
34 <interface>
35 <name>IConfig</name>
36 <instance>default</instance>
37 </interface>
38 </hal>
39 <hal format="aidl" optional="true">
40 <name>android.hardware.audio.effect</name>
41 <version>1</version>
42 <interface>
43 <name>IFactory</name>
44 <instance>default</instance>
45 </interface>
46 </hal>
47 <hal format="aidl" optional="true">
48 <name>android.hardware.audio.sounddose</name>
49 <version>1</version>
50 <interface>
51 <name>ISoundDoseFactory</name>
52 <instance>default</instance>
53 </interface>
54 </hal>
55 <hal format="aidl" optional="true">
56 <name>android.hardware.authsecret</name>
57 <version>1</version>
58 <interface>
59 <name>IAuthSecret</name>
60 <instance>default</instance>
61 </interface>
62 </hal>
63 <hal format="aidl" optional="true">
64 <name>android.hardware.automotive.audiocontrol</name>
65 <version>2-3</version>
66 <interface>
67 <name>IAudioControl</name>
68 <instance>default</instance>
69 </interface>
70 </hal>
71 <hal format="aidl" optional="true">
72 <name>android.hardware.automotive.can</name>
73 <version>1</version>
74 <interface>
75 <name>ICanController</name>
76 <instance>default</instance>
77 </interface>
78 </hal>
79 <hal format="aidl" optional="true">
80 <name>android.hardware.automotive.evs</name>
81 <version>1-2</version>
82 <interface>
83 <name>IEvsEnumerator</name>
84 <regex-instance>[a-z]+/[0-9]+</regex-instance>
85 </interface>
86 </hal>
87 <hal format="aidl" optional="true">
88 <name>android.hardware.automotive.occupant_awareness</name>
89 <version>1</version>
90 <interface>
91 <name>IOccupantAwareness</name>
92 <instance>default</instance>
93 </interface>
94 </hal>
95 <hal format="aidl" optional="true">
96 <name>android.hardware.automotive.vehicle</name>
97 <version>1-2</version>
98 <interface>
99 <name>IVehicle</name>
100 <instance>default</instance>
101 </interface>
102 </hal>
103 <hal format="aidl" optional="true">
104 <name>android.hardware.automotive.remoteaccess</name>
105 <interface>
106 <name>IRemoteAccess</name>
107 <instance>default</instance>
108 </interface>
109 </hal>
110 <hal format="aidl" optional="true">
111 <name>android.hardware.automotive.ivn</name>
112 <interface>
113 <name>IIvnAndroidDevice</name>
114 <instance>default</instance>
115 </interface>
116 </hal>
117 <hal format="aidl" optional="true">
118 <name>android.hardware.biometrics.face</name>
119 <version>3</version>
120 <interface>
121 <name>IFace</name>
122 <instance>default</instance>
123 </interface>
124 </hal>
125 <hal format="aidl" optional="true">
126 <name>android.hardware.biometrics.fingerprint</name>
127 <version>3</version>
128 <interface>
129 <name>IFingerprint</name>
130 <instance>default</instance>
131 <instance>virtual</instance>
132 </interface>
133 </hal>
134 <hal format="hidl" optional="true">
135 <name>android.hardware.bluetooth</name>
136 <version>1.0-1</version>
137 <interface>
138 <name>IBluetoothHci</name>
139 <instance>default</instance>
140 </interface>
141 </hal>
142 <hal format="aidl" optional="true">
143 <name>android.hardware.bluetooth</name>
144 <interface>
145 <name>IBluetoothHci</name>
146 <instance>default</instance>
147 </interface>
148 </hal>
149 <hal format="aidl" optional="true">
150 <name>android.hardware.bluetooth.audio</name>
151 <version>3</version>
152 <interface>
153 <name>IBluetoothAudioProviderFactory</name>
154 <instance>default</instance>
155 </interface>
156 </hal>
157 <hal format="aidl" optional="true">
158 <name>android.hardware.boot</name>
159 <interface>
160 <name>IBootControl</name>
161 <instance>default</instance>
162 </interface>
163 </hal>
164 <hal format="aidl" optional="true">
165 <name>android.hardware.broadcastradio</name>
166 <interface>
167 <name>IBroadcastRadio</name>
168 <regex-instance>.*</regex-instance>
169 </interface>
170 </hal>
171 <hal format="aidl" optional="true" updatable-via-apex="true">
172 <name>android.hardware.camera.provider</name>
173 <version>1-2</version>
174 <interface>
175 <name>ICameraProvider</name>
176 <regex-instance>[^/]+/[0-9]+</regex-instance>
177 </interface>
178 </hal>
179 <hal format="aidl" optional="true">
180 <name>android.hardware.cas</name>
181 <interface>
182 <name>IMediaCasService</name>
183 <instance>default</instance>
184 </interface>
185 </hal>
186 <hal format="aidl" optional="true">
187 <name>android.hardware.confirmationui</name>
188 <version>1</version>
189 <interface>
190 <name>IConfirmationUI</name>
191 <instance>default</instance>
192 </interface>
193 </hal>
194 <hal format="aidl" optional="true">
195 <name>android.hardware.contexthub</name>
196 <version>2</version>
197 <interface>
198 <name>IContextHub</name>
199 <instance>default</instance>
200 </interface>
201 </hal>
202 <hal format="aidl" optional="true" updatable-via-apex="true">
203 <name>android.hardware.drm</name>
204 <version>1</version>
205 <interface>
206 <name>IDrmFactory</name>
207 <regex-instance>.*</regex-instance>
208 </interface>
209 </hal>
210 <hal format="aidl" optional="true">
211 <name>android.hardware.dumpstate</name>
212 <interface>
213 <name>IDumpstateDevice</name>
214 <instance>default</instance>
215 </interface>
216 </hal>
217 <hal format="aidl" optional="true">
218 <name>android.hardware.gatekeeper</name>
219 <version>1</version>
220 <interface>
221 <name>IGatekeeper</name>
222 <instance>default</instance>
223 </interface>
224 </hal>
225 <hal format="aidl" optional="true">
226 <name>android.hardware.gnss</name>
227 <version>2-3</version>
228 <interface>
229 <name>IGnss</name>
230 <instance>default</instance>
231 </interface>
232 </hal>
233 <hal format="aidl" optional="true">
234 <name>android.hardware.gnss.visibility_control</name>
235 <version>1</version>
236 <interface>
237 <name>IGnssVisibilityControl</name>
238 <instance>default</instance>
239 </interface>
240 </hal>
241 <hal format="aidl" optional="true">
242 <name>android.hardware.gnss.measurement_corrections</name>
243 <version>1</version>
244 <interface>
245 <name>IMeasurementCorrectionsInterface</name>
246 <instance>default</instance>
247 </interface>
248 </hal>
249 <hal format="aidl" optional="true">
250 <name>android.hardware.graphics.allocator</name>
251 <version>1-2</version>
252 <interface>
253 <name>IAllocator</name>
254 <instance>default</instance>
255 </interface>
256 </hal>
257 <hal format="aidl" optional="true">
258 <name>android.hardware.graphics.composer3</name>
259 <version>2</version>
260 <interface>
261 <name>IComposer</name>
262 <instance>default</instance>
263 </interface>
264 </hal>
265 <!-- Either the native or the HIDL mapper HAL must exist on the device -->
266 <hal format="hidl" optional="true">
267 <name>android.hardware.graphics.mapper</name>
268 <!-- New, non-Go devices should use 4.0, tested in vts_treble_vintf_vendor_test -->
269 <version>2.1</version>
270 <version>3.0</version>
271 <version>4.0</version>
272 <interface>
273 <name>IMapper</name>
274 <instance>default</instance>
275 </interface>
276 </hal>
277 <hal format="aidl" optional="true">
278 <name>android.hardware.health</name>
279 <version>1-2</version>
280 <interface>
281 <name>IHealth</name>
282 <instance>default</instance>
283 </interface>
284 </hal>
285 <hal format="aidl" optional="true">
286 <name>android.hardware.health.storage</name>
287 <version>1</version>
288 <interface>
289 <name>IStorage</name>
290 <instance>default</instance>
291 </interface>
292 </hal>
293 <hal format="aidl" optional="true">
294 <name>android.hardware.identity</name>
295 <version>1-5</version>
296 <interface>
297 <name>IIdentityCredentialStore</name>
298 <instance>default</instance>
299 </interface>
300 </hal>
301 <hal format="aidl" optional="true">
302 <name>android.hardware.net.nlinterceptor</name>
303 <interface>
304 <name>IInterceptor</name>
305 <instance>default</instance>
306 </interface>
307 </hal>
308 <hal format="aidl" optional="true">
309 <name>android.hardware.oemlock</name>
310 <version>1</version>
311 <interface>
312 <name>IOemLock</name>
313 <instance>default</instance>
314 </interface>
315 </hal>
316 <hal format="aidl" optional="true">
317 <name>android.hardware.ir</name>
318 <version>1</version>
319 <interface>
320 <name>IConsumerIr</name>
321 <instance>default</instance>
322 </interface>
323 </hal>
324 <hal format="aidl" optional="true">
325 <name>android.hardware.input.processor</name>
326 <version>1</version>
327 <interface>
328 <name>IInputProcessor</name>
329 <instance>default</instance>
330 </interface>
331 </hal>
332 <hal format="aidl" optional="true">
333 <name>android.hardware.security.keymint</name>
334 <version>1-3</version>
335 <interface>
336 <name>IKeyMintDevice</name>
337 <instance>default</instance>
338 <instance>strongbox</instance>
339 </interface>
340 </hal>
341 <hal format="aidl" optional="true">
342 <name>android.hardware.security.keymint</name>
343 <version>1-3</version>
344 <interface>
345 <name>IRemotelyProvisionedComponent</name>
346 <instance>default</instance>
347 <instance>strongbox</instance>
348 </interface>
349 </hal>
350 <hal format="aidl" optional="true">
351 <name>android.hardware.light</name>
352 <version>2</version>
353 <interface>
354 <name>ILights</name>
355 <instance>default</instance>
356 </interface>
357 </hal>
358 <hal format="hidl" optional="true">
359 <name>android.hardware.media.c2</name>
360 <version>1.0-2</version>
361 <interface>
362 <name>IComponentStore</name>
363 <regex-instance>default[0-9]*</regex-instance>
364 <regex-instance>vendor[0-9]*_software</regex-instance>
365 </interface>
366 </hal>
367 <hal format="aidl" optional="true">
Sungtak Lee7afc2092023-04-19 21:50:00 +0000368 <name>android.hardware.media.c2</name>
369 <version>1</version>
370 <interface>
371 <name>IComponentStore</name>
372 <regex-instance>default[0-9]*</regex-instance>
373 <regex-instance>vendor[0-9]*_software</regex-instance>
374 </interface>
375 </hal>
376 <hal format="aidl" optional="true">
Yifan Hongd1df1012023-04-12 14:20:48 -0700377 <name>android.hardware.memtrack</name>
378 <version>1</version>
379 <interface>
380 <name>IMemtrack</name>
381 <instance>default</instance>
382 </interface>
383 </hal>
384 <hal format="aidl" optional="true">
385 <name>android.hardware.neuralnetworks</name>
386 <version>1-4</version>
387 <interface>
388 <name>IDevice</name>
389 <regex-instance>.*</regex-instance>
390 </interface>
391 </hal>
392 <hal format="aidl" optional="true">
393 <name>android.hardware.nfc</name>
394 <interface>
395 <name>INfc</name>
396 <instance>default</instance>
397 </interface>
398 </hal>
399 <hal format="aidl" optional="true">
400 <name>android.hardware.power</name>
401 <version>4</version>
402 <interface>
403 <name>IPower</name>
404 <instance>default</instance>
405 </interface>
406 </hal>
407 <hal format="aidl" optional="true">
408 <name>android.hardware.power.stats</name>
409 <version>2</version>
410 <interface>
411 <name>IPowerStats</name>
412 <instance>default</instance>
413 </interface>
414 </hal>
415 <hal format="aidl" optional="true">
416 <name>android.hardware.radio.config</name>
Steven Moreland771b5c12023-04-11 21:27:15 +0000417 <version>3</version>
Yifan Hongd1df1012023-04-12 14:20:48 -0700418 <interface>
419 <name>IRadioConfig</name>
420 <instance>default</instance>
421 </interface>
422 </hal>
423 <hal format="aidl" optional="true">
424 <name>android.hardware.radio.data</name>
Steven Moreland771b5c12023-04-11 21:27:15 +0000425 <version>3</version>
Yifan Hongd1df1012023-04-12 14:20:48 -0700426 <interface>
427 <name>IRadioData</name>
428 <instance>slot1</instance>
429 <instance>slot2</instance>
430 <instance>slot3</instance>
431 </interface>
432 </hal>
433 <hal format="aidl" optional="true">
434 <name>android.hardware.radio.messaging</name>
Steven Moreland771b5c12023-04-11 21:27:15 +0000435 <version>3</version>
Yifan Hongd1df1012023-04-12 14:20:48 -0700436 <interface>
437 <name>IRadioMessaging</name>
438 <instance>slot1</instance>
439 <instance>slot2</instance>
440 <instance>slot3</instance>
441 </interface>
442 </hal>
443 <hal format="aidl" optional="true">
444 <name>android.hardware.radio.modem</name>
Steven Moreland771b5c12023-04-11 21:27:15 +0000445 <version>3</version>
Yifan Hongd1df1012023-04-12 14:20:48 -0700446 <interface>
447 <name>IRadioModem</name>
448 <instance>slot1</instance>
449 <instance>slot2</instance>
450 <instance>slot3</instance>
451 </interface>
452 </hal>
453 <hal format="aidl" optional="true">
454 <name>android.hardware.radio.network</name>
Steven Moreland771b5c12023-04-11 21:27:15 +0000455 <version>3</version>
Yifan Hongd1df1012023-04-12 14:20:48 -0700456 <interface>
457 <name>IRadioNetwork</name>
458 <instance>slot1</instance>
459 <instance>slot2</instance>
460 <instance>slot3</instance>
461 </interface>
462 </hal>
463 <hal format="aidl" optional="true">
464 <name>android.hardware.radio.sim</name>
Steven Moreland771b5c12023-04-11 21:27:15 +0000465 <version>3</version>
Yifan Hongd1df1012023-04-12 14:20:48 -0700466 <interface>
467 <name>IRadioSim</name>
468 <instance>slot1</instance>
469 <instance>slot2</instance>
470 <instance>slot3</instance>
471 </interface>
472 </hal>
473 <hal format="aidl" optional="true">
474 <name>android.hardware.radio.sap</name>
475 <version>1</version>
476 <interface>
477 <name>ISap</name>
478 <instance>slot1</instance>
479 <instance>slot2</instance>
480 <instance>slot3</instance>
481 </interface>
482 </hal>
483 <hal format="aidl" optional="true">
484 <name>android.hardware.radio.voice</name>
Steven Moreland771b5c12023-04-11 21:27:15 +0000485 <version>3</version>
Yifan Hongd1df1012023-04-12 14:20:48 -0700486 <interface>
487 <name>IRadioVoice</name>
488 <instance>slot1</instance>
489 <instance>slot2</instance>
490 <instance>slot3</instance>
491 </interface>
492 </hal>
493 <hal format="aidl" optional="true">
494 <name>android.hardware.radio.ims</name>
Steven Moreland771b5c12023-04-11 21:27:15 +0000495 <version>2</version>
Yifan Hongd1df1012023-04-12 14:20:48 -0700496 <interface>
497 <name>IRadioIms</name>
498 <instance>slot1</instance>
499 <instance>slot2</instance>
500 <instance>slot3</instance>
501 </interface>
502 </hal>
503 <hal format="aidl" optional="true">
504 <name>android.hardware.radio.satellite</name>
505 <version>1</version>
506 <interface>
507 <name>IRadioSatellite</name>
508 <instance>slot1</instance>
509 <instance>slot2</instance>
510 <instance>slot3</instance>
511 </interface>
512 </hal>
513 <hal format="aidl" optional="true">
514 <name>android.hardware.radio.ims.media</name>
Steven Moreland771b5c12023-04-11 21:27:15 +0000515 <version>2</version>
Yifan Hongd1df1012023-04-12 14:20:48 -0700516 <interface>
517 <name>IImsMedia</name>
518 <instance>default</instance>
519 </interface>
520 </hal>
Yifan Hongd1df1012023-04-12 14:20:48 -0700521 <hal format="aidl" optional="true">
522 <name>android.hardware.rebootescrow</name>
523 <version>1</version>
524 <interface>
525 <name>IRebootEscrow</name>
526 <instance>default</instance>
527 </interface>
528 </hal>
529 <hal format="aidl" optional="true">
530 <name>android.hardware.secure_element</name>
531 <version>1</version>
532 <interface>
533 <name>ISecureElement</name>
534 <regex-instance>eSE[1-9][0-9]*</regex-instance>
535 <regex-instance>SIM[1-9][0-9]*</regex-instance>
536 </interface>
537 </hal>
538 <hal format="aidl" optional="true">
539 <name>android.hardware.security.secureclock</name>
540 <version>1</version>
541 <interface>
542 <name>ISecureClock</name>
543 <instance>default</instance>
544 </interface>
545 </hal>
546 <hal format="aidl" optional="true">
547 <name>android.hardware.security.sharedsecret</name>
548 <version>1</version>
549 <interface>
550 <name>ISharedSecret</name>
551 <instance>default</instance>
552 <instance>strongbox</instance>
553 </interface>
554 </hal>
555 <hal format="aidl" optional="true">
556 <name>android.hardware.sensors</name>
557 <version>2</version>
558 <interface>
559 <name>ISensors</name>
560 <instance>default</instance>
561 </interface>
562 </hal>
563 <hal format="hidl" optional="true">
564 <name>android.hardware.soundtrigger</name>
565 <version>2.3</version>
566 <interface>
567 <name>ISoundTriggerHw</name>
568 <instance>default</instance>
569 </interface>
570 </hal>
571 <hal format="aidl" optional="true">
572 <name>android.hardware.soundtrigger3</name>
573 <version>1</version>
574 <interface>
575 <name>ISoundTriggerHw</name>
576 <instance>default</instance>
577 </interface>
578 </hal>
579 <hal format="hidl" optional="true">
580 <name>android.hardware.tetheroffload.config</name>
581 <version>1.0</version>
582 <interface>
583 <name>IOffloadConfig</name>
584 <instance>default</instance>
585 </interface>
586 </hal>
587 <hal format="hidl" optional="true">
588 <name>android.hardware.tetheroffload.control</name>
589 <version>1.1</version>
590 <interface>
591 <name>IOffloadControl</name>
592 <instance>default</instance>
593 </interface>
594 </hal>
595 <hal format="aidl" optional="true">
596 <name>android.hardware.tetheroffload</name>
597 <version>1</version>
598 <interface>
599 <name>IOffload</name>
600 <instance>default</instance>
601 </interface>
602 </hal>
603 <hal format="aidl" optional="true">
604 <name>android.hardware.thermal</name>
605 <version>1</version>
606 <interface>
607 <name>IThermal</name>
608 <instance>default</instance>
609 </interface>
610 </hal>
611 <hal format="aidl" optional="true">
612 <name>android.hardware.tv.hdmi.cec</name>
613 <version>1</version>
614 <interface>
615 <name>IHdmiCec</name>
616 <instance>default</instance>
617 </interface>
618 </hal>
619 <hal format="aidl" optional="true">
620 <name>android.hardware.tv.hdmi.earc</name>
621 <version>1</version>
622 <interface>
623 <name>IEArc</name>
624 <instance>default</instance>
625 </interface>
626 </hal>
627 <hal format="aidl" optional="true">
628 <name>android.hardware.tv.hdmi.connection</name>
629 <version>1</version>
630 <interface>
631 <name>IHdmiConnection</name>
632 <instance>default</instance>
633 </interface>
634 </hal>
635 <hal format="aidl" optional="true">
636 <name>android.hardware.tv.tuner</name>
637 <version>1-2</version>
638 <interface>
639 <name>ITuner</name>
640 <instance>default</instance>
641 </interface>
642 </hal>
643 <hal format="aidl" optional="true">
644 <name>android.hardware.tv.input</name>
645 <version>1</version>
646 <interface>
647 <name>ITvInput</name>
648 <instance>default</instance>
649 </interface>
650 </hal>
651 <hal format="aidl" optional="true">
652 <name>android.hardware.usb</name>
653 <version>1-2</version>
654 <interface>
655 <name>IUsb</name>
656 <instance>default</instance>
657 </interface>
658 </hal>
659 <hal format="aidl" optional="true">
660 <name>android.hardware.usb.gadget</name>
661 <interface>
662 <name>IUsbGadget</name>
663 <instance>default</instance>
664 </interface>
665 </hal>
666 <hal format="aidl" optional="true">
667 <name>android.hardware.vibrator</name>
668 <version>1-2</version>
669 <interface>
670 <name>IVibrator</name>
671 <instance>default</instance>
672 </interface>
673 </hal>
674 <hal format="aidl" optional="true">
675 <name>android.hardware.vibrator</name>
676 <version>1-2</version>
677 <interface>
678 <name>IVibratorManager</name>
679 <instance>default</instance>
680 </interface>
681 </hal>
682 <hal format="aidl" optional="true">
683 <name>android.hardware.weaver</name>
684 <version>2</version>
685 <interface>
686 <name>IWeaver</name>
687 <instance>default</instance>
688 </interface>
689 </hal>
690 <hal format="aidl" optional="true" updatable-via-apex="true">
691 <name>android.hardware.wifi</name>
692 <version>1</version>
693 <interface>
694 <name>IWifi</name>
695 <instance>default</instance>
696 </interface>
697 </hal>
698 <hal format="aidl" optional="true">
699 <name>android.hardware.uwb</name>
700 <version>1</version>
701 <interface>
702 <name>IUwb</name>
703 <instance>default</instance>
704 </interface>
705 </hal>
706 <hal format="aidl" optional="true">
707 <name>android.hardware.wifi.hostapd</name>
708 <version>1</version>
709 <interface>
710 <name>IHostapd</name>
711 <instance>default</instance>
712 </interface>
713 </hal>
714 <hal format="aidl" optional="true">
715 <name>android.hardware.wifi.supplicant</name>
716 <version>2</version>
717 <interface>
718 <name>ISupplicant</name>
719 <instance>default</instance>
720 </interface>
721 </hal>
722 <!-- Either the native or the HIDL mapper HAL must exist on the device -->
723 <hal format="native" optional="true">
724 <name>mapper</name>
725 <version>5.0</version>
726 <interface>
727 <regex-instance>.*</regex-instance>
728 </interface>
729 </hal>
730</compatibility-matrix>