1<compatibility-matrix version="1.0" type="framework" level="202504"> 2 <hal format="aidl"> 3 <name>android.hardware.audio.core</name> 4 <version>1-2</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-2</version> 24 <interface> 25 <name>IFactory</name> 26 <instance>default</instance> 27 </interface> 28 </hal> 29 <hal format="aidl"> 30 <name>android.hardware.audio.sounddose</name> 31 <version>1-2</version> 32 <interface> 33 <name>ISoundDoseFactory</name> 34 <instance>default</instance> 35 </interface> 36 </hal> 37 <hal format="aidl" updatable-via-apex="true"> 38 <name>android.hardware.authsecret</name> 39 <version>1</version> 40 <interface> 41 <name>IAuthSecret</name> 42 <instance>default</instance> 43 </interface> 44 </hal> 45 <hal format="aidl"> 46 <name>android.hardware.automotive.audiocontrol</name> 47 <version>2-4</version> 48 <interface> 49 <name>IAudioControl</name> 50 <instance>default</instance> 51 </interface> 52 </hal> 53 <hal format="aidl"> 54 <name>android.hardware.automotive.can</name> 55 <version>1</version> 56 <interface> 57 <name>ICanController</name> 58 <instance>default</instance> 59 </interface> 60 </hal> 61 <hal format="aidl"> 62 <name>android.hardware.automotive.evs</name> 63 <version>1-2</version> 64 <interface> 65 <name>IEvsEnumerator</name> 66 <regex-instance>[a-z]+/[0-9]+</regex-instance> 67 </interface> 68 </hal> 69 <hal format="aidl"> 70 <name>android.hardware.macsec</name> 71 <version>1</version> 72 <interface> 73 <name>IMacsecPskPlugin</name> 74 <instance>default</instance> 75 </interface> 76 </hal> 77 <hal format="aidl"> 78 <name>android.hardware.automotive.occupant_awareness</name> 79 <version>1</version> 80 <interface> 81 <name>IOccupantAwareness</name> 82 <instance>default</instance> 83 </interface> 84 </hal> 85 <hal format="aidl"> 86 <name>android.hardware.automotive.vehicle</name> 87 <version>1-4</version> 88 <interface> 89 <name>IVehicle</name> 90 <instance>default</instance> 91 </interface> 92 </hal> 93 <hal format="aidl"> 94 <name>android.hardware.automotive.remoteaccess</name> 95 <version>1-2</version> 96 <interface> 97 <name>IRemoteAccess</name> 98 <instance>default</instance> 99 </interface> 100 </hal> 101 <hal format="aidl"> 102 <name>android.hardware.automotive.ivn</name> 103 <interface> 104 <name>IIvnAndroidDevice</name> 105 <instance>default</instance> 106 </interface> 107 </hal> 108 <hal format="aidl" updatable-via-apex="true"> 109 <name>android.hardware.biometrics.face</name> 110 <version>3-4</version> 111 <interface> 112 <name>IFace</name> 113 <instance>default</instance> 114 <instance>virtual</instance> 115 </interface> 116 </hal> 117 <hal format="aidl" updatable-via-apex="true"> 118 <name>android.hardware.biometrics.fingerprint</name> 119 <version>3-5</version> 120 <interface> 121 <name>IFingerprint</name> 122 <instance>default</instance> 123 <instance>virtual</instance> 124 </interface> 125 </hal> 126 <hal format="aidl"> 127 <name>android.hardware.bluetooth</name> 128 <interface> 129 <name>IBluetoothHci</name> 130 <instance>default</instance> 131 </interface> 132 </hal> 133 <hal format="aidl"> 134 <name>android.hardware.bluetooth.audio</name> 135 <version>3-4</version> 136 <interface> 137 <name>IBluetoothAudioProviderFactory</name> 138 <instance>default</instance> 139 </interface> 140 </hal> 141 <hal format="aidl"> 142 <name>android.hardware.bluetooth.ranging</name> 143 <version>1</version> 144 <interface> 145 <name>IBluetoothChannelSounding</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-2</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</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-4</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>3</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</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</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-3</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 <interface> 376 <name>INfc</name> 377 <instance>default</instance> 378 </interface> 379 </hal> 380 <hal format="aidl"> 381 <name>android.hardware.power</name> 382 <version>5</version> 383 <interface> 384 <name>IPower</name> 385 <instance>default</instance> 386 </interface> 387 </hal> 388 <hal format="aidl"> 389 <name>android.hardware.power.stats</name> 390 <version>2</version> 391 <interface> 392 <name>IPowerStats</name> 393 <instance>default</instance> 394 </interface> 395 </hal> 396 <hal format="aidl"> 397 <name>android.hardware.radio.config</name> 398 <version>3</version> 399 <interface> 400 <name>IRadioConfig</name> 401 <instance>default</instance> 402 </interface> 403 </hal> 404 <hal format="aidl"> 405 <name>android.hardware.radio.data</name> 406 <version>3</version> 407 <interface> 408 <name>IRadioData</name> 409 <instance>slot1</instance> 410 <instance>slot2</instance> 411 <instance>slot3</instance> 412 </interface> 413 </hal> 414 <hal format="aidl"> 415 <name>android.hardware.radio.messaging</name> 416 <version>3</version> 417 <interface> 418 <name>IRadioMessaging</name> 419 <instance>slot1</instance> 420 <instance>slot2</instance> 421 <instance>slot3</instance> 422 </interface> 423 </hal> 424 <hal format="aidl"> 425 <name>android.hardware.radio.modem</name> 426 <version>3</version> 427 <interface> 428 <name>IRadioModem</name> 429 <instance>slot1</instance> 430 <instance>slot2</instance> 431 <instance>slot3</instance> 432 </interface> 433 </hal> 434 <hal format="aidl"> 435 <name>android.hardware.radio.network</name> 436 <version>3</version> 437 <interface> 438 <name>IRadioNetwork</name> 439 <instance>slot1</instance> 440 <instance>slot2</instance> 441 <instance>slot3</instance> 442 </interface> 443 </hal> 444 <hal format="aidl"> 445 <name>android.hardware.radio.sim</name> 446 <version>3</version> 447 <interface> 448 <name>IRadioSim</name> 449 <instance>slot1</instance> 450 <instance>slot2</instance> 451 <instance>slot3</instance> 452 </interface> 453 </hal> 454 <hal format="aidl"> 455 <name>android.hardware.radio.sap</name> 456 <version>1</version> 457 <interface> 458 <name>ISap</name> 459 <instance>slot1</instance> 460 <instance>slot2</instance> 461 <instance>slot3</instance> 462 </interface> 463 </hal> 464 <hal format="aidl"> 465 <name>android.hardware.radio.voice</name> 466 <version>3</version> 467 <interface> 468 <name>IRadioVoice</name> 469 <instance>slot1</instance> 470 <instance>slot2</instance> 471 <instance>slot3</instance> 472 </interface> 473 </hal> 474 <hal format="aidl"> 475 <name>android.hardware.radio.ims</name> 476 <version>2</version> 477 <interface> 478 <name>IRadioIms</name> 479 <instance>slot1</instance> 480 <instance>slot2</instance> 481 <instance>slot3</instance> 482 </interface> 483 </hal> 484 <hal format="aidl"> 485 <name>android.hardware.radio.ims.media</name> 486 <version>2</version> 487 <interface> 488 <name>IImsMedia</name> 489 <instance>default</instance> 490 </interface> 491 </hal> 492 <hal format="aidl"> 493 <name>android.hardware.rebootescrow</name> 494 <version>1</version> 495 <interface> 496 <name>IRebootEscrow</name> 497 <instance>default</instance> 498 </interface> 499 </hal> 500 <hal format="aidl"> 501 <name>android.hardware.secure_element</name> 502 <version>1</version> 503 <interface> 504 <name>ISecureElement</name> 505 <regex-instance>eSE[1-9][0-9]*</regex-instance> 506 <regex-instance>SIM[1-9][0-9]*</regex-instance> 507 </interface> 508 </hal> 509 <hal format="aidl" updatable-via-apex="true"> 510 <name>android.hardware.security.authgraph</name> 511 <version>1</version> 512 <interface> 513 <name>IAuthGraphKeyExchange</name> 514 <instance>nonsecure</instance> 515 </interface> 516 </hal> 517 <hal format="aidl" updatable-via-apex="true"> 518 <name>android.hardware.security.secureclock</name> 519 <version>1</version> 520 <interface> 521 <name>ISecureClock</name> 522 <instance>default</instance> 523 </interface> 524 </hal> 525 <hal format="aidl" updatable-via-apex="true"> 526 <name>android.hardware.security.sharedsecret</name> 527 <version>1</version> 528 <interface> 529 <name>ISharedSecret</name> 530 <instance>default</instance> 531 <instance>strongbox</instance> 532 <regex-instance>.*</regex-instance> 533 </interface> 534 </hal> 535 <hal format="aidl"> 536 <name>android.hardware.sensors</name> 537 <version>2</version> 538 <interface> 539 <name>ISensors</name> 540 <instance>default</instance> 541 </interface> 542 </hal> 543 <hal format="aidl"> 544 <name>android.hardware.soundtrigger3</name> 545 <version>1-2</version> 546 <interface> 547 <name>ISoundTriggerHw</name> 548 <instance>default</instance> 549 </interface> 550 </hal> 551 <hal format="aidl"> 552 <name>android.hardware.tetheroffload</name> 553 <version>1</version> 554 <interface> 555 <name>IOffload</name> 556 <instance>default</instance> 557 </interface> 558 </hal> 559 <hal format="aidl"> 560 <name>android.hardware.thermal</name> 561 <version>2</version> 562 <interface> 563 <name>IThermal</name> 564 <instance>default</instance> 565 </interface> 566 </hal> 567 <hal format="aidl" updatable-via-apex="true"> 568 <name>android.hardware.threadnetwork</name> 569 <version>1</version> 570 <interface> 571 <name>IThreadChip</name> 572 <regex-instance>chip[0-9]+</regex-instance> 573 </interface> 574 </hal> 575 <hal format="aidl"> 576 <name>android.hardware.tv.hdmi.cec</name> 577 <version>1</version> 578 <interface> 579 <name>IHdmiCec</name> 580 <instance>default</instance> 581 </interface> 582 </hal> 583 <hal format="aidl"> 584 <name>android.hardware.tv.hdmi.earc</name> 585 <version>1</version> 586 <interface> 587 <name>IEArc</name> 588 <instance>default</instance> 589 </interface> 590 </hal> 591 <hal format="aidl"> 592 <name>android.hardware.tv.hdmi.connection</name> 593 <version>1</version> 594 <interface> 595 <name>IHdmiConnection</name> 596 <instance>default</instance> 597 </interface> 598 </hal> 599 <hal format="aidl"> 600 <name>android.hardware.tv.tuner</name> 601 <version>1-2</version> 602 <interface> 603 <name>ITuner</name> 604 <instance>default</instance> 605 </interface> 606 </hal> 607 <hal format="aidl"> 608 <name>android.hardware.tv.input</name> 609 <version>1-2</version> 610 <interface> 611 <name>ITvInput</name> 612 <instance>default</instance> 613 </interface> 614 </hal> 615 <hal format="aidl"> 616 <name>android.hardware.usb</name> 617 <version>1-3</version> 618 <interface> 619 <name>IUsb</name> 620 <instance>default</instance> 621 </interface> 622 </hal> 623 <hal format="aidl"> 624 <name>android.hardware.usb.gadget</name> 625 <interface> 626 <name>IUsbGadget</name> 627 <instance>default</instance> 628 </interface> 629 </hal> 630 <hal format="aidl"> 631 <name>android.hardware.vibrator</name> 632 <version>1-2</version> 633 <interface> 634 <name>IVibrator</name> 635 <instance>default</instance> 636 </interface> 637 </hal> 638 <hal format="aidl"> 639 <name>android.hardware.vibrator</name> 640 <version>1-2</version> 641 <interface> 642 <name>IVibratorManager</name> 643 <instance>default</instance> 644 </interface> 645 </hal> 646 <hal format="aidl"> 647 <name>android.hardware.weaver</name> 648 <version>2</version> 649 <interface> 650 <name>IWeaver</name> 651 <instance>default</instance> 652 </interface> 653 </hal> 654 <hal format="aidl" updatable-via-apex="true"> 655 <name>android.hardware.wifi</name> 656 <version>1-2</version> 657 <interface> 658 <name>IWifi</name> 659 <instance>default</instance> 660 </interface> 661 </hal> 662 <hal format="aidl" updatable-via-apex="true"> 663 <name>android.hardware.uwb</name> 664 <version>1</version> 665 <interface> 666 <name>IUwb</name> 667 <instance>default</instance> 668 </interface> 669 </hal> 670 <hal format="aidl"> 671 <name>android.hardware.wifi.hostapd</name> 672 <version>1-2</version> 673 <interface> 674 <name>IHostapd</name> 675 <instance>default</instance> 676 </interface> 677 </hal> 678 <hal format="aidl"> 679 <name>android.hardware.wifi.supplicant</name> 680 <version>2-3</version> 681 <interface> 682 <name>ISupplicant</name> 683 <instance>default</instance> 684 </interface> 685 </hal> 686 <!-- The native mapper HAL must exist on the device --> 687 <hal format="native"> 688 <name>mapper</name> 689 <version>5.0</version> 690 <interface> 691 <regex-instance>.*</regex-instance> 692 </interface> 693 </hal> 694</compatibility-matrix> 695