Loading compatibility_matrices/compatibility_matrix.9.xml 0 → 100644 +730 −0 Original line number Diff line number Diff line <!-- WARNING: This file is unused in the Android 14 branch. --> <compatibility-matrix version="1.0" type="framework" level="9"> <hal format="hidl" optional="true"> <name>android.hardware.audio</name> <version>6.0</version> <version>7.0-1</version> <interface> <name>IDevicesFactory</name> <instance>default</instance> </interface> </hal> <hal format="hidl" optional="true"> <name>android.hardware.audio.effect</name> <version>6.0</version> <version>7.0</version> <interface> <name>IEffectsFactory</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.audio.core</name> <version>1</version> <interface> <name>IModule</name> <instance>default</instance> <instance>a2dp</instance> <instance>bluetooth</instance> <instance>hearing_aid</instance> <instance>msd</instance> <instance>r_submix</instance> <instance>stub</instance> <instance>usb</instance> </interface> <interface> <name>IConfig</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.audio.effect</name> <version>1</version> <interface> <name>IFactory</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.audio.sounddose</name> <version>1</version> <interface> <name>ISoundDoseFactory</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.authsecret</name> <version>1</version> <interface> <name>IAuthSecret</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.automotive.audiocontrol</name> <version>2-3</version> <interface> <name>IAudioControl</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.automotive.can</name> <version>1</version> <interface> <name>ICanController</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.automotive.evs</name> <version>1-2</version> <interface> <name>IEvsEnumerator</name> <regex-instance>[a-z]+/[0-9]+</regex-instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.automotive.occupant_awareness</name> <version>1</version> <interface> <name>IOccupantAwareness</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.automotive.vehicle</name> <version>1-2</version> <interface> <name>IVehicle</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.automotive.remoteaccess</name> <interface> <name>IRemoteAccess</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.automotive.ivn</name> <interface> <name>IIvnAndroidDevice</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.biometrics.face</name> <version>3</version> <interface> <name>IFace</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.biometrics.fingerprint</name> <version>3</version> <interface> <name>IFingerprint</name> <instance>default</instance> <instance>virtual</instance> </interface> </hal> <hal format="hidl" optional="true"> <name>android.hardware.bluetooth</name> <version>1.0-1</version> <interface> <name>IBluetoothHci</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.bluetooth</name> <interface> <name>IBluetoothHci</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.bluetooth.audio</name> <version>3</version> <interface> <name>IBluetoothAudioProviderFactory</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.boot</name> <interface> <name>IBootControl</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.broadcastradio</name> <interface> <name>IBroadcastRadio</name> <regex-instance>.*</regex-instance> </interface> </hal> <hal format="aidl" optional="true" updatable-via-apex="true"> <name>android.hardware.camera.provider</name> <version>1-2</version> <interface> <name>ICameraProvider</name> <regex-instance>[^/]+/[0-9]+</regex-instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.cas</name> <interface> <name>IMediaCasService</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.confirmationui</name> <version>1</version> <interface> <name>IConfirmationUI</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.contexthub</name> <version>2</version> <interface> <name>IContextHub</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true" updatable-via-apex="true"> <name>android.hardware.drm</name> <version>1</version> <interface> <name>IDrmFactory</name> <regex-instance>.*</regex-instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.dumpstate</name> <interface> <name>IDumpstateDevice</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.gatekeeper</name> <version>1</version> <interface> <name>IGatekeeper</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.gnss</name> <version>2-3</version> <interface> <name>IGnss</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.gnss.visibility_control</name> <version>1</version> <interface> <name>IGnssVisibilityControl</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.gnss.measurement_corrections</name> <version>1</version> <interface> <name>IMeasurementCorrectionsInterface</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.graphics.allocator</name> <version>1-2</version> <interface> <name>IAllocator</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.graphics.composer3</name> <version>2</version> <interface> <name>IComposer</name> <instance>default</instance> </interface> </hal> <!-- Either the native or the HIDL mapper HAL must exist on the device --> <hal format="hidl" optional="true"> <name>android.hardware.graphics.mapper</name> <!-- New, non-Go devices should use 4.0, tested in vts_treble_vintf_vendor_test --> <version>2.1</version> <version>3.0</version> <version>4.0</version> <interface> <name>IMapper</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.health</name> <version>1-2</version> <interface> <name>IHealth</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.health.storage</name> <version>1</version> <interface> <name>IStorage</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.identity</name> <version>1-5</version> <interface> <name>IIdentityCredentialStore</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.net.nlinterceptor</name> <interface> <name>IInterceptor</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.oemlock</name> <version>1</version> <interface> <name>IOemLock</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.ir</name> <version>1</version> <interface> <name>IConsumerIr</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.input.processor</name> <version>1</version> <interface> <name>IInputProcessor</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.security.keymint</name> <version>1-3</version> <interface> <name>IKeyMintDevice</name> <instance>default</instance> <instance>strongbox</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.security.keymint</name> <version>1-3</version> <interface> <name>IRemotelyProvisionedComponent</name> <instance>default</instance> <instance>strongbox</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.light</name> <version>2</version> <interface> <name>ILights</name> <instance>default</instance> </interface> </hal> <hal format="hidl" optional="true"> <name>android.hardware.media.c2</name> <version>1.0-2</version> <interface> <name>IComponentStore</name> <regex-instance>default[0-9]*</regex-instance> <regex-instance>vendor[0-9]*_software</regex-instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.memtrack</name> <version>1</version> <interface> <name>IMemtrack</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.neuralnetworks</name> <version>1-4</version> <interface> <name>IDevice</name> <regex-instance>.*</regex-instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.nfc</name> <interface> <name>INfc</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.power</name> <version>4</version> <interface> <name>IPower</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.power.stats</name> <version>2</version> <interface> <name>IPowerStats</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.radio.config</name> <version>2</version> <interface> <name>IRadioConfig</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.radio.data</name> <version>2</version> <interface> <name>IRadioData</name> <instance>slot1</instance> <instance>slot2</instance> <instance>slot3</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.radio.messaging</name> <version>2</version> <interface> <name>IRadioMessaging</name> <instance>slot1</instance> <instance>slot2</instance> <instance>slot3</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.radio.modem</name> <version>2</version> <interface> <name>IRadioModem</name> <instance>slot1</instance> <instance>slot2</instance> <instance>slot3</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.radio.network</name> <version>2</version> <interface> <name>IRadioNetwork</name> <instance>slot1</instance> <instance>slot2</instance> <instance>slot3</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.radio.sim</name> <version>2</version> <interface> <name>IRadioSim</name> <instance>slot1</instance> <instance>slot2</instance> <instance>slot3</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.radio.sap</name> <version>1</version> <interface> <name>ISap</name> <instance>slot1</instance> <instance>slot2</instance> <instance>slot3</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.radio.voice</name> <version>2</version> <interface> <name>IRadioVoice</name> <instance>slot1</instance> <instance>slot2</instance> <instance>slot3</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.radio.ims</name> <version>1</version> <interface> <name>IRadioIms</name> <instance>slot1</instance> <instance>slot2</instance> <instance>slot3</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.radio.satellite</name> <version>1</version> <interface> <name>IRadioSatellite</name> <instance>slot1</instance> <instance>slot2</instance> <instance>slot3</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.radio.ims.media</name> <version>1</version> <interface> <name>IImsMedia</name> <instance>default</instance> </interface> </hal> <hal format="hidl" optional="true"> <name>android.hardware.renderscript</name> <version>1.0</version> <interface> <name>IDevice</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.rebootescrow</name> <version>1</version> <interface> <name>IRebootEscrow</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.secure_element</name> <version>1</version> <interface> <name>ISecureElement</name> <regex-instance>eSE[1-9][0-9]*</regex-instance> <regex-instance>SIM[1-9][0-9]*</regex-instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.security.secureclock</name> <version>1</version> <interface> <name>ISecureClock</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.security.sharedsecret</name> <version>1</version> <interface> <name>ISharedSecret</name> <instance>default</instance> <instance>strongbox</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.sensors</name> <version>2</version> <interface> <name>ISensors</name> <instance>default</instance> </interface> </hal> <hal format="hidl" optional="true"> <name>android.hardware.soundtrigger</name> <version>2.3</version> <interface> <name>ISoundTriggerHw</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.soundtrigger3</name> <version>1</version> <interface> <name>ISoundTriggerHw</name> <instance>default</instance> </interface> </hal> <hal format="hidl" optional="true"> <name>android.hardware.tetheroffload.config</name> <version>1.0</version> <interface> <name>IOffloadConfig</name> <instance>default</instance> </interface> </hal> <hal format="hidl" optional="true"> <name>android.hardware.tetheroffload.control</name> <version>1.1</version> <interface> <name>IOffloadControl</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.tetheroffload</name> <version>1</version> <interface> <name>IOffload</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.thermal</name> <version>1</version> <interface> <name>IThermal</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.tv.hdmi.cec</name> <version>1</version> <interface> <name>IHdmiCec</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.tv.hdmi.earc</name> <version>1</version> <interface> <name>IEArc</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.tv.hdmi.connection</name> <version>1</version> <interface> <name>IHdmiConnection</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.tv.tuner</name> <version>1-2</version> <interface> <name>ITuner</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.tv.input</name> <version>1</version> <interface> <name>ITvInput</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.usb</name> <version>1-2</version> <interface> <name>IUsb</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.usb.gadget</name> <interface> <name>IUsbGadget</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.vibrator</name> <version>1-2</version> <interface> <name>IVibrator</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.vibrator</name> <version>1-2</version> <interface> <name>IVibratorManager</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.weaver</name> <version>2</version> <interface> <name>IWeaver</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true" updatable-via-apex="true"> <name>android.hardware.wifi</name> <version>1</version> <interface> <name>IWifi</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.uwb</name> <version>1</version> <interface> <name>IUwb</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.wifi.hostapd</name> <version>1</version> <interface> <name>IHostapd</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.wifi.supplicant</name> <version>2</version> <interface> <name>ISupplicant</name> <instance>default</instance> </interface> </hal> <!-- Either the native or the HIDL mapper HAL must exist on the device --> <hal format="native" optional="true"> <name>mapper</name> <version>5.0</version> <interface> <regex-instance>.*</regex-instance> </interface> </hal> </compatibility-matrix> Loading
compatibility_matrices/compatibility_matrix.9.xml 0 → 100644 +730 −0 Original line number Diff line number Diff line <!-- WARNING: This file is unused in the Android 14 branch. --> <compatibility-matrix version="1.0" type="framework" level="9"> <hal format="hidl" optional="true"> <name>android.hardware.audio</name> <version>6.0</version> <version>7.0-1</version> <interface> <name>IDevicesFactory</name> <instance>default</instance> </interface> </hal> <hal format="hidl" optional="true"> <name>android.hardware.audio.effect</name> <version>6.0</version> <version>7.0</version> <interface> <name>IEffectsFactory</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.audio.core</name> <version>1</version> <interface> <name>IModule</name> <instance>default</instance> <instance>a2dp</instance> <instance>bluetooth</instance> <instance>hearing_aid</instance> <instance>msd</instance> <instance>r_submix</instance> <instance>stub</instance> <instance>usb</instance> </interface> <interface> <name>IConfig</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.audio.effect</name> <version>1</version> <interface> <name>IFactory</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.audio.sounddose</name> <version>1</version> <interface> <name>ISoundDoseFactory</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.authsecret</name> <version>1</version> <interface> <name>IAuthSecret</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.automotive.audiocontrol</name> <version>2-3</version> <interface> <name>IAudioControl</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.automotive.can</name> <version>1</version> <interface> <name>ICanController</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.automotive.evs</name> <version>1-2</version> <interface> <name>IEvsEnumerator</name> <regex-instance>[a-z]+/[0-9]+</regex-instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.automotive.occupant_awareness</name> <version>1</version> <interface> <name>IOccupantAwareness</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.automotive.vehicle</name> <version>1-2</version> <interface> <name>IVehicle</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.automotive.remoteaccess</name> <interface> <name>IRemoteAccess</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.automotive.ivn</name> <interface> <name>IIvnAndroidDevice</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.biometrics.face</name> <version>3</version> <interface> <name>IFace</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.biometrics.fingerprint</name> <version>3</version> <interface> <name>IFingerprint</name> <instance>default</instance> <instance>virtual</instance> </interface> </hal> <hal format="hidl" optional="true"> <name>android.hardware.bluetooth</name> <version>1.0-1</version> <interface> <name>IBluetoothHci</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.bluetooth</name> <interface> <name>IBluetoothHci</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.bluetooth.audio</name> <version>3</version> <interface> <name>IBluetoothAudioProviderFactory</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.boot</name> <interface> <name>IBootControl</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.broadcastradio</name> <interface> <name>IBroadcastRadio</name> <regex-instance>.*</regex-instance> </interface> </hal> <hal format="aidl" optional="true" updatable-via-apex="true"> <name>android.hardware.camera.provider</name> <version>1-2</version> <interface> <name>ICameraProvider</name> <regex-instance>[^/]+/[0-9]+</regex-instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.cas</name> <interface> <name>IMediaCasService</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.confirmationui</name> <version>1</version> <interface> <name>IConfirmationUI</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.contexthub</name> <version>2</version> <interface> <name>IContextHub</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true" updatable-via-apex="true"> <name>android.hardware.drm</name> <version>1</version> <interface> <name>IDrmFactory</name> <regex-instance>.*</regex-instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.dumpstate</name> <interface> <name>IDumpstateDevice</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.gatekeeper</name> <version>1</version> <interface> <name>IGatekeeper</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.gnss</name> <version>2-3</version> <interface> <name>IGnss</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.gnss.visibility_control</name> <version>1</version> <interface> <name>IGnssVisibilityControl</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.gnss.measurement_corrections</name> <version>1</version> <interface> <name>IMeasurementCorrectionsInterface</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.graphics.allocator</name> <version>1-2</version> <interface> <name>IAllocator</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.graphics.composer3</name> <version>2</version> <interface> <name>IComposer</name> <instance>default</instance> </interface> </hal> <!-- Either the native or the HIDL mapper HAL must exist on the device --> <hal format="hidl" optional="true"> <name>android.hardware.graphics.mapper</name> <!-- New, non-Go devices should use 4.0, tested in vts_treble_vintf_vendor_test --> <version>2.1</version> <version>3.0</version> <version>4.0</version> <interface> <name>IMapper</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.health</name> <version>1-2</version> <interface> <name>IHealth</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.health.storage</name> <version>1</version> <interface> <name>IStorage</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.identity</name> <version>1-5</version> <interface> <name>IIdentityCredentialStore</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.net.nlinterceptor</name> <interface> <name>IInterceptor</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.oemlock</name> <version>1</version> <interface> <name>IOemLock</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.ir</name> <version>1</version> <interface> <name>IConsumerIr</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.input.processor</name> <version>1</version> <interface> <name>IInputProcessor</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.security.keymint</name> <version>1-3</version> <interface> <name>IKeyMintDevice</name> <instance>default</instance> <instance>strongbox</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.security.keymint</name> <version>1-3</version> <interface> <name>IRemotelyProvisionedComponent</name> <instance>default</instance> <instance>strongbox</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.light</name> <version>2</version> <interface> <name>ILights</name> <instance>default</instance> </interface> </hal> <hal format="hidl" optional="true"> <name>android.hardware.media.c2</name> <version>1.0-2</version> <interface> <name>IComponentStore</name> <regex-instance>default[0-9]*</regex-instance> <regex-instance>vendor[0-9]*_software</regex-instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.memtrack</name> <version>1</version> <interface> <name>IMemtrack</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.neuralnetworks</name> <version>1-4</version> <interface> <name>IDevice</name> <regex-instance>.*</regex-instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.nfc</name> <interface> <name>INfc</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.power</name> <version>4</version> <interface> <name>IPower</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.power.stats</name> <version>2</version> <interface> <name>IPowerStats</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.radio.config</name> <version>2</version> <interface> <name>IRadioConfig</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.radio.data</name> <version>2</version> <interface> <name>IRadioData</name> <instance>slot1</instance> <instance>slot2</instance> <instance>slot3</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.radio.messaging</name> <version>2</version> <interface> <name>IRadioMessaging</name> <instance>slot1</instance> <instance>slot2</instance> <instance>slot3</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.radio.modem</name> <version>2</version> <interface> <name>IRadioModem</name> <instance>slot1</instance> <instance>slot2</instance> <instance>slot3</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.radio.network</name> <version>2</version> <interface> <name>IRadioNetwork</name> <instance>slot1</instance> <instance>slot2</instance> <instance>slot3</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.radio.sim</name> <version>2</version> <interface> <name>IRadioSim</name> <instance>slot1</instance> <instance>slot2</instance> <instance>slot3</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.radio.sap</name> <version>1</version> <interface> <name>ISap</name> <instance>slot1</instance> <instance>slot2</instance> <instance>slot3</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.radio.voice</name> <version>2</version> <interface> <name>IRadioVoice</name> <instance>slot1</instance> <instance>slot2</instance> <instance>slot3</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.radio.ims</name> <version>1</version> <interface> <name>IRadioIms</name> <instance>slot1</instance> <instance>slot2</instance> <instance>slot3</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.radio.satellite</name> <version>1</version> <interface> <name>IRadioSatellite</name> <instance>slot1</instance> <instance>slot2</instance> <instance>slot3</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.radio.ims.media</name> <version>1</version> <interface> <name>IImsMedia</name> <instance>default</instance> </interface> </hal> <hal format="hidl" optional="true"> <name>android.hardware.renderscript</name> <version>1.0</version> <interface> <name>IDevice</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.rebootescrow</name> <version>1</version> <interface> <name>IRebootEscrow</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.secure_element</name> <version>1</version> <interface> <name>ISecureElement</name> <regex-instance>eSE[1-9][0-9]*</regex-instance> <regex-instance>SIM[1-9][0-9]*</regex-instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.security.secureclock</name> <version>1</version> <interface> <name>ISecureClock</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.security.sharedsecret</name> <version>1</version> <interface> <name>ISharedSecret</name> <instance>default</instance> <instance>strongbox</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.sensors</name> <version>2</version> <interface> <name>ISensors</name> <instance>default</instance> </interface> </hal> <hal format="hidl" optional="true"> <name>android.hardware.soundtrigger</name> <version>2.3</version> <interface> <name>ISoundTriggerHw</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.soundtrigger3</name> <version>1</version> <interface> <name>ISoundTriggerHw</name> <instance>default</instance> </interface> </hal> <hal format="hidl" optional="true"> <name>android.hardware.tetheroffload.config</name> <version>1.0</version> <interface> <name>IOffloadConfig</name> <instance>default</instance> </interface> </hal> <hal format="hidl" optional="true"> <name>android.hardware.tetheroffload.control</name> <version>1.1</version> <interface> <name>IOffloadControl</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.tetheroffload</name> <version>1</version> <interface> <name>IOffload</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.thermal</name> <version>1</version> <interface> <name>IThermal</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.tv.hdmi.cec</name> <version>1</version> <interface> <name>IHdmiCec</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.tv.hdmi.earc</name> <version>1</version> <interface> <name>IEArc</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.tv.hdmi.connection</name> <version>1</version> <interface> <name>IHdmiConnection</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.tv.tuner</name> <version>1-2</version> <interface> <name>ITuner</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.tv.input</name> <version>1</version> <interface> <name>ITvInput</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.usb</name> <version>1-2</version> <interface> <name>IUsb</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.usb.gadget</name> <interface> <name>IUsbGadget</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.vibrator</name> <version>1-2</version> <interface> <name>IVibrator</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.vibrator</name> <version>1-2</version> <interface> <name>IVibratorManager</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.weaver</name> <version>2</version> <interface> <name>IWeaver</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true" updatable-via-apex="true"> <name>android.hardware.wifi</name> <version>1</version> <interface> <name>IWifi</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.uwb</name> <version>1</version> <interface> <name>IUwb</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.wifi.hostapd</name> <version>1</version> <interface> <name>IHostapd</name> <instance>default</instance> </interface> </hal> <hal format="aidl" optional="true"> <name>android.hardware.wifi.supplicant</name> <version>2</version> <interface> <name>ISupplicant</name> <instance>default</instance> </interface> </hal> <!-- Either the native or the HIDL mapper HAL must exist on the device --> <hal format="native" optional="true"> <name>mapper</name> <version>5.0</version> <interface> <regex-instance>.*</regex-instance> </interface> </hal> </compatibility-matrix>