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