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