<!-- Copyright (c) 2017-2018, The Linux Foundation. All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
    * Redistributions of source code must retain the above copyright
      notice, this list of conditions and the following disclaimer.
    * Redistributions in binary form must reproduce the above
      copyright notice, this list of conditions and the following
      disclaimer in the documentation and/or other materials provided
      with the distribution.
    * Neither the name of The Linux Foundation nor the names of its
      contributors may be used to endorse or promote products derived
      from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-->
<manifest version="1.0" type="device" target-level="5">
    <kernel target-level="5"/>
    <hal format="hidl">
        <name>android.hardware.audio</name>
        <transport>hwbinder</transport>
        <version>7.0</version>
        <interface>
            <name>IDevicesFactory</name>
            <instance>default</instance>
        </interface>
    </hal>
    <hal format="hidl">
        <name>android.hardware.audio.effect</name>
        <transport>hwbinder</transport>
        <version>7.0</version>
        <interface>
            <name>IEffectsFactory</name>
            <instance>default</instance>
        </interface>
    </hal>
    <hal format="hidl">
        <name>vendor.qti.hardware.cacert</name>
        <transport>hwbinder</transport>
        <version>1.0</version>
        <interface>
        <name>IService</name>
            <instance>default</instance>
        </interface>
    </hal>
    <hal format="hidl">
        <name>vendor.qti.hardware.data.connection</name>
        <transport>hwbinder</transport>
        <version>1.1</version>
        <interface>
            <name>IDataConnection</name>
            <instance>slot1</instance>
            <instance>slot2</instance>
        </interface>
    </hal>
    <hal format="hidl">
        <name>android.hardware.soundtrigger</name>
        <transport>hwbinder</transport>
        <version>2.3</version>
        <interface>
            <name>ISoundTriggerHw</name>
            <instance>default</instance>
        </interface>
    </hal>
    <!-- display -->
    <hal format="hidl">
        <name>android.hardware.renderscript</name>
        <transport arch="32+64">passthrough</transport>
        <version>1.0</version>
        <interface>
            <name>IDevice</name>
            <instance>default</instance>
        </interface>
    </hal>
    <hal format="hidl">
        <name>vendor.google.radioext</name>
        <transport>hwbinder</transport>
        <version>1.3</version>
        <interface>
            <name>IRadioExt</name>
            <instance>default</instance>
        </interface>
    </hal>
    <hal format="hidl">
        <name>android.hardware.memtrack</name>
        <transport>hwbinder</transport>
        <impl level="generic"></impl>
        <version>1.0</version>
        <interface>
            <name>IMemtrack</name>
            <instance>default</instance>
        </interface>
    </hal>
    <hal format="hidl">
        <name>android.hardware.secure_element</name>
        <transport>hwbinder</transport>
        <fqname>@1.2::ISecureElement/SIM1</fqname>
        <fqname>@1.2::ISecureElement/SIM2</fqname>
        <fqname>@1.2::ISecureElement/eSE1</fqname>
    </hal>
    <!-- gatekeeper -->
    <hal format="hidl">
       <name>android.hardware.gatekeeper</name>
       <transport>hwbinder</transport>
       <version>1.0</version>
       <interface>
           <name>IGatekeeper</name>
           <instance>default</instance>
       </interface>
   </hal>
    <!-- iwlan -->
    <hal format="hidl">
        <name>vendor.qti.hardware.data.iwlan</name>
        <transport>hwbinder</transport>
        <version>1.0</version>
        <interface>
            <name>IIWlan</name>
            <instance>slot1</instance>
            <instance>slot2</instance>
        </interface>
    </hal>
    <!-- qcrilhook -->
    <hal format="hidl">
        <name>vendor.qti.hardware.radio.qcrilhook</name>
           <transport>hwbinder</transport>
           <version>1.0</version>
           <interface>
               <name>IQtiOemHook</name>
               <instance>oemhook0</instance>
               <instance>oemhook1</instance>
           </interface>
    </hal>
    <hal format="hidl">
        <name>vendor.qti.hardware.radio.ims</name>
        <transport>hwbinder</transport>
        <version>1.6</version>
        <interface>
            <name>IImsRadio</name>
            <instance>imsradio0</instance>
            <instance>imsradio1</instance>
        </interface>
    </hal>
    <hal format="hidl">
        <name>vendor.qti.hardware.radio.lpa</name>
        <transport>hwbinder</transport>
        <version>1.0</version>
        <interface>
            <name>IUimLpa</name>
            <instance>UimLpa0</instance>
            <instance>UimLpa1</instance>
        </interface>
    </hal>
    <hal format="hidl">
        <name>vendor.qti.hardware.radio.uim</name>
        <transport>hwbinder</transport>
        <version>1.2</version>
        <interface>
            <name>IUim</name>
            <instance>Uim0</instance>
            <instance>Uim1</instance>
        </interface>
    </hal>
    <!-- RIL UIM REMOTE CLIENT -->
    <hal format="hidl">
        <name>vendor.qti.hardware.radio.uim_remote_client</name>
        <transport>hwbinder</transport>
        <version>1.0</version>
        <interface>
            <name>IUimRemoteServiceClient</name>
            <instance>uimRemoteClient0</instance>
            <instance>uimRemoteClient1</instance>
        </interface>
    </hal>
    <!-- RIL UIM REMOTE SERVER -->
    <hal format="hidl">
        <name>vendor.qti.hardware.radio.uim_remote_server</name>
        <transport>hwbinder</transport>
        <version>1.0</version>
        <interface>
            <name>IUimRemoteServiceServer</name>
            <instance>uimRemoteServer0</instance>
            <instance>uimRemoteServer1</instance>
        </interface>
    </hal>
    <!-- deviceInfo HAL -->
    <hal format="hidl">
        <name>vendor.qti.hardware.radio.internal.deviceinfo</name>
        <transport>hwbinder</transport>
        <version>1.0</version>
        <interface>
            <name>IDeviceInfo</name>
            <instance>deviceinfo</instance>
        </interface>
    </hal>
    <!-- IMS RTP Service -->
    <hal format="hidl">
        <name>vendor.qti.imsrtpservice</name>
        <transport>hwbinder</transport>
        <impl level="generic"></impl>
        <version>3.0</version>
        <interface>
            <name>IRTPService</name>
            <instance>imsrtpservice</instance>
        </interface>
    </hal>
    <!-- fingerprint -->
    <hal format="hidl">
        <name>android.hardware.biometrics.fingerprint</name>
        <transport>hwbinder</transport>
        <version>2.2</version>
        <interface>
            <name>IBiometricsFingerprint</name>
            <instance>default</instance>
        </interface>
    </hal>
    <!-- bluetooth -->
    <hal format="hidl">
        <name>android.hardware.bluetooth</name>
        <transport>hwbinder</transport>
        <impl level="generic"></impl>
        <version>1.0</version>
        <interface>
            <name>IBluetoothHci</name>
            <instance>default</instance>
        </interface>
    </hal>
    <hal format="hidl">
        <name>android.hardware.bluetooth.audio</name>
        <transport>hwbinder</transport>
        <version>2.0</version>
        <interface>
            <name>IBluetoothAudioProvidersFactory</name>
            <instance>default</instance>
        </interface>
    </hal>
    <!-- IMS UCE Service -->
   <hal format="hidl">
       <name>com.qualcomm.qti.uceservice</name>
       <transport>hwbinder</transport>
       <version>2.3</version>
       <interface>
         <name>IUceService</name>
         <instance>com.qualcomm.qti.uceservice</instance>
       </interface>
   </hal>
   <!-- IMS callinfo Service -->
   <hal format="hidl">
       <name>vendor.qti.ims.callinfo</name>
       <transport>hwbinder</transport>
       <version>1.0</version>
       <interface>
         <name>IService</name>
         <instance>default</instance>
       </interface>
   </hal>
   <hal format="hidl">
       <name>com.qualcomm.qti.imscmservice</name>
       <transport>hwbinder</transport>
       <version>2.2</version>
       <interface>
         <name>IImsCmService</name>
         <instance>qti.ims.connectionmanagerservice</instance>
       </interface>
   </hal>
    <hal format="hidl">
        <name>vendor.qti.hardware.radio.am</name>
        <transport>hwbinder</transport>
        <version>1.0</version>
        <interface>
            <name>IQcRilAudio</name>
            <instance>slot1</instance>
            <instance>slot2</instance>
        </interface>
    </hal>
    <hal format="hidl">
        <name>vendor.qti.ims.factory</name>
        <transport>hwbinder</transport>
        <version>1.0</version>
        <interface>
            <name>IImsFactory</name>
            <instance>default</instance>
        </interface>
    </hal>
    <hal format="hidl">
        <name>vendor.qti.data.factory</name>
        <transport>hwbinder</transport>
        <version>2.2</version>
        <interface>
            <name>IFactory</name>
            <instance>default</instance>
        </interface>
    </hal>
    <hal format="hidl">
        <name>android.hardware.radio</name>
        <transport>hwbinder</transport>
        <fqname>@1.5::IRadio/slot1</fqname>
        <fqname>@1.5::IRadio/slot2</fqname>
        <fqname>@1.2::ISap/slot1</fqname>
        <fqname>@1.2::ISap/slot2</fqname>
    </hal>
    <hal format="hidl">
      <name>android.hardware.radio.config</name>
      <transport>hwbinder</transport>
      <version>1.1</version>
      <interface>
        <name>IRadioConfig</name>
        <instance>default</instance>
      </interface>
    </hal>
    <!-- keymaster -->
    <hal format="hidl">
       <name>android.hardware.keymaster</name>
       <transport>hwbinder</transport>
       <fqname>@4.0::IKeymasterDevice/default</fqname>
     </hal>
     <hal format="hidl">
        <name>android.hardware.power.stats</name>
        <transport>hwbinder</transport>
        <version>1.0</version>
        <interface>
            <name>IPowerStats</name>
            <instance>default</instance>
        </interface>
    </hal>
    <hal format="hidl">
        <name>android.hardware.dumpstate</name>
        <transport>hwbinder</transport>
        <version>1.1</version>
        <interface>
            <name>IDumpstateDevice</name>
            <instance>default</instance>
        </interface>
      </hal>
    <hal format="hidl">
        <name>hardware.google.bluetooth.sar</name>
        <transport>hwbinder</transport>
        <version>1.0</version>
        <interface>
            <name>IBluetoothSar</name>
            <instance>default</instance>
        </interface>
    </hal>
    <hal format="hidl">
        <name>hardware.google.bluetooth.bt_channel_avoidance</name>
        <transport>hwbinder</transport>
        <version>1.0</version>
        <interface>
            <name>IBTChannelAvoidance</name>
            <instance>default</instance>
        </interface>
    </hal>
    <hal format="hidl">
        <name>vendor.qti.hardware.tui_comm</name>
        <transport>hwbinder</transport>
        <version>1.0</version>
        <interface>
            <name>ITuiComm</name>
            <instance>default</instance>
        </interface>
    </hal>
    <hal format="hidl">
        <name>vendor.qti.hardware.radio.qtiradio</name>
        <transport>hwbinder</transport>
        <version>1.0</version>
        <interface>
            <name>IQtiRadio</name>
            <instance>slot1</instance>
            <instance>slot2</instance>
        </interface>
    </hal>
    <hal format="hidl">
        <name>vendor.qti.hardware.radio.qtiradio</name>
        <transport>hwbinder</transport>
        <version>2.4</version>
        <interface>
            <name>IQtiRadio</name>
            <instance>slot1</instance>
            <instance>slot2</instance>
        </interface>
    </hal>
    <hal format="hidl">
        <name>android.hardware.tetheroffload.config</name>
        <transport>hwbinder</transport>
        <version>1.0</version>
        <interface>
            <name>IOffloadConfig</name>
            <instance>default</instance>
        </interface>
    </hal>
    <hal format="hidl">
        <name>android.hardware.tetheroffload.control</name>
        <transport>hwbinder</transport>
        <version>1.0</version>
        <interface>
            <name>IOffloadControl</name>
            <instance>default</instance>
        </interface>
    </hal>
    <!-- QSEECom HAL service -->
    <hal format="hidl">
        <name>vendor.qti.hardware.qseecom</name>
        <transport>hwbinder</transport>
        <version>1.0</version>
        <interface>
            <name>IQSEECom</name>
            <instance>default</instance>
        </interface>
    </hal>
    <!-- QSPM HAL service -->
    <hal format="hidl">
        <name>vendor.qti.qspmhal</name>
        <transport>hwbinder</transport>
        <version>1.0</version>
        <interface>
            <name>IQspmhal</name>
            <instance>default</instance>
        </interface>
    </hal>
    <hal format="hidl" optional="true">
        <name>vendor.qti.hardware.qteeconnector</name>
        <transport>hwbinder</transport>
        <version>1.0</version>
        <interface>
            <name>IAppConnector</name>
            <instance>default</instance>
        </interface>
        <interface>
            <name>IGPAppConnector</name>
            <instance>default</instance>
        </interface>
    </hal>
    <!-- DSP Service -->
    <hal format="hidl">
        <name>vendor.qti.hardware.dsp</name>
        <transport>hwbinder</transport>
        <version>1.0</version>
        <interface>
            <name>IDspService</name>
            <instance>dspservice</instance>
        </interface>
    </hal>
</manifest>
