From da78308f49c937da5495b20d66a129deade17715 Mon Sep 17 00:00:00 2001
From: Arian <arian.kulmer@web.de>
Date: Wed, 2 Mar 2022 18:40:53 +0100
Subject: [PATCH] sm8350-common: Checkout manifest_lahaina to caf

This is a pre-public tag which matches stock.
https://source.codeaurora.org/quic/la/platform/vendor/qcom/lahaina/plain/manifest_lahaina.xml?h=LA.UM.9.14.r1-12600-LAHAINA.0&id=2100bf201f102dcf517f7436dc5f6e802ab386ac

Change-Id: I4ebe1dc949c0e1188d18e04bae77ed62bdc51fc0
---
 BoardConfigCommon.mk                          |   3 +-
 hidl/manifest_lahaina.xml                     | 712 +++++++++++++-----
 ...F@2.1-service.xml => manifest_lineage.xml} |   6 +-
 hidl/manifest_xiaomi.xml                      |  11 +
 4 files changed, 530 insertions(+), 202 deletions(-)
 rename hidl/{AHBF@2.1-service.xml => manifest_lineage.xml} (59%)
 create mode 100644 hidl/manifest_xiaomi.xml

diff --git a/BoardConfigCommon.mk b/BoardConfigCommon.mk
index 97b8d3d..360f1c2 100644
--- a/BoardConfigCommon.mk
+++ b/BoardConfigCommon.mk
@@ -104,7 +104,8 @@ DEVICE_FRAMEWORK_COMPATIBILITY_MATRIX_FILE := \
 
 DEVICE_MANIFEST_FILE := \
     $(COMMON_PATH)/hidl/manifest_lahaina.xml \
-    $(COMMON_PATH)/hidl/AHBF@2.1-service.xml \
+    $(COMMON_PATH)/hidl/manifest_lineage.xml \
+    $(COMMON_PATH)/hidl/manifest_xiaomi.xml \
     $(COMMON_PATH)/hidl/android.hardware.atrace@1.0-service.xml \
     $(COMMON_PATH)/hidl/android.hardware.gnss@2.1-service-qti.xml \
     $(COMMON_PATH)/hidl/android.hardware.neuralnetworks@1.3-service-qti.xml \
diff --git a/hidl/manifest_lahaina.xml b/hidl/manifest_lahaina.xml
index 9045c58..9d8a7cf 100644
--- a/hidl/manifest_lahaina.xml
+++ b/hidl/manifest_lahaina.xml
@@ -1,8 +1,42 @@
-<!--
-    Input:
-        manifest_lahaina.xml
+<!-- Copyright (c)  2019-2020 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="2.0" type="device" target-level="5">
+<manifest version="1.0" type="device" target-level="5">
+    <kernel target-level="5"/>
+    <!-- CapabilityConfigStore HAL Service  -->
+    <hal format="hidl">
+        <name>vendor.qti.hardware.capabilityconfigstore</name>
+        <transport>hwbinder</transport>
+        <version>1.0</version>
+        <interface>
+            <name>ICapabilityConfigStore</name>
+            <instance>default</instance>
+        </interface>
+    </hal>
     <hal format="hidl">
         <name>android.hardware.audio</name>
         <transport>hwbinder</transport>
@@ -11,7 +45,6 @@
             <name>IDevicesFactory</name>
             <instance>default</instance>
         </interface>
-        <fqname>@6.0::IDevicesFactory/default</fqname>
     </hal>
     <hal format="hidl">
         <name>android.hardware.audio.effect</name>
@@ -21,133 +54,271 @@
             <name>IEffectsFactory</name>
             <instance>default</instance>
         </interface>
-        <fqname>@6.0::IEffectsFactory/default</fqname>
     </hal>
     <hal format="hidl">
-        <name>android.hardware.bluetooth</name>
+        <name>android.hardware.soundtrigger</name>
         <transport>hwbinder</transport>
+        <version>2.3</version>
+        <interface>
+            <name>ISoundTriggerHw</name>
+            <instance>default</instance>
+        </interface>
+    </hal>
+    <hal format="hidl">
+        <name>android.hardware.media.omx</name>
+        <transport>hwbinder</transport>
+        <impl level="generic"></impl>
         <version>1.0</version>
         <interface>
-            <name>IBluetoothHci</name>
+            <name>IOmx</name>
+            <instance>default</instance>
+        </interface>
+        <interface>
+            <name>IOmxStore</name>
             <instance>default</instance>
         </interface>
-        <fqname>@1.0::IBluetoothHci/default</fqname>
     </hal>
+    <!-- VPP Service -->
     <hal format="hidl">
-        <name>android.hardware.bluetooth.audio</name>
+        <name>vendor.qti.hardware.vpp</name>
         <transport>hwbinder</transport>
         <version>2.0</version>
         <interface>
-            <name>IBluetoothAudioProvidersFactory</name>
-            <instance>default</instance>
+            <name>IHidlVppService</name>
+            <instance>vppService</instance>
         </interface>
-        <fqname>@2.0::IBluetoothAudioProvidersFactory/default</fqname>
     </hal>
+    <!-- QConfig HAL Service -->
     <hal format="hidl">
-        <name>android.hardware.camera.provider</name>
+        <name>vendor.qti.hardware.qconfig</name>
         <transport>hwbinder</transport>
-        <version>2.4</version>
+        <version>1.0</version>
         <interface>
-            <name>ICameraProvider</name>
-            <instance>legacy/0</instance>
+            <name>IQConfig</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>
+    <!-- WFD HAL Service -->
+    <hal format="hidl" optional="true">
+        <name>vendor.qti.hardware.wifidisplaysession</name>
+        <transport>hwbinder</transport>
+        <version>1.0</version>
+        <interface>
+            <name>IWifiDisplaySession</name>
+            <instance>wifidisplaysession</instance>
+        </interface>
+        <interface>
+            <name>IWifiDisplaySessionVideoTrack</name>
+            <instance>wifidisplaysessionvideotrack</instance>
+        </interface>
+        <interface>
+            <name>IWifiDisplaySessionAudioTrack</name>
+            <instance>wifidisplaysessionaudiotrack</instance>
+        </interface>
+        <interface>
+            <name>IWifiDisplaySessionImageTrack</name>
+            <instance>wifidisplaysessionimagetrack</instance>
         </interface>
-        <fqname>@2.4::ICameraProvider/legacy/0</fqname>
     </hal>
     <hal format="hidl">
-        <name>android.hardware.drm</name>
+        <name>android.hardware.memtrack</name>
         <transport>hwbinder</transport>
-        <fqname>@1.3::ICryptoFactory/wfdhdcp</fqname>
-        <fqname>@1.3::IDrmFactory/wfdhdcp</fqname>
+        <version>1.0</version>
+        <interface>
+            <name>IMemtrack</name>
+            <instance>default</instance>
+        </interface>
     </hal>
     <hal format="hidl">
-        <name>android.hardware.gatekeeper</name>
+        <name>android.hardware.biometrics.face</name>
         <transport>hwbinder</transport>
         <version>1.0</version>
         <interface>
-            <name>IGatekeeper</name>
+            <name>IBiometricsFace</name>
             <instance>default</instance>
         </interface>
-        <fqname>@1.0::IGatekeeper/default</fqname>
+        <fqname>@1.0::IBiometricsFace/default</fqname>
     </hal>
+    <!-- fingerprint hal: using remote service instead of Google's default service-->
     <hal format="hidl">
-        <name>android.hardware.keymaster</name>
+        <name>android.hardware.biometrics.fingerprint</name>
         <transport>hwbinder</transport>
-        <fqname>@4.1::IKeymasterDevice/default</fqname>
+        <version>2.1</version>
+        <interface>
+            <name>IBiometricsFingerprint</name>
+            <instance>default</instance>
+        </interface>
     </hal>
     <hal format="hidl">
-        <name>android.hardware.media.omx</name>
+        <name>vendor.qti.hardware.fingerprint</name>
         <transport>hwbinder</transport>
         <version>1.0</version>
         <interface>
-            <name>IOmx</name>
+            <name>IQtiExtendedFingerprint</name>
             <instance>default</instance>
         </interface>
+    </hal>
+    <hal format="hidl">
+        <name>android.hardware.keymaster</name>
+        <transport>hwbinder</transport>
+        <fqname>@4.1::IKeymasterDevice/default</fqname>
+        <fqname>@4.0::IKeymasterDevice/strongbox</fqname>
+    </hal>
+    <hal format="hidl">
+       <name>android.hardware.gatekeeper</name>
+       <transport>hwbinder</transport>
+       <impl level="generic"></impl>
+       <version>1.0</version>
+       <interface>
+           <name>IGatekeeper</name>
+           <instance>default</instance>
+       </interface>
+    </hal>
+    <hal format="hidl">
+       <name>android.hardware.authsecret</name>
+       <transport>hwbinder</transport>
+       <version>1.0</version>
+       <interface>
+           <name>IAuthSecret</name>
+           <instance>default</instance>
+       </interface>
+    </hal>
+    <!-- NFC HAL service -->
+    <hal format="hidl">
+        <name>android.hardware.nfc</name>
+        <transport>hwbinder</transport>
+        <version>1.2</version>
         <interface>
-            <name>IOmxStore</name>
+            <name>INfc</name>
             <instance>default</instance>
         </interface>
-        <fqname>@1.0::IOmx/default</fqname>
-        <fqname>@1.0::IOmxStore/default</fqname>
     </hal>
     <hal format="hidl">
-        <name>android.hardware.memtrack</name>
+        <name>vendor.nxp.hardware.nfc</name>
         <transport>hwbinder</transport>
-        <version>1.0</version>
+        <version>2.0</version>
         <interface>
-            <name>IMemtrack</name>
+            <name>INqNfc</name>
             <instance>default</instance>
         </interface>
-        <fqname>@1.0::IMemtrack/default</fqname>
     </hal>
+    <!-- secure element -->
     <hal format="hidl">
-        <name>android.hardware.radio.config</name>
+       <name>android.hardware.secure_element</name>
+       <transport>hwbinder</transport>
+       <version>1.2</version>
+       <interface>
+           <name>ISecureElement</name>
+           <instance>eSE1</instance>
+           <instance>SIM1</instance>
+           <instance>SIM2</instance>
+       </interface>
+    </hal>
+    <!-- eSEPowerManager -->
+    <hal format="hidl">
+        <name>vendor.qti.esepowermanager</name>
         <transport>hwbinder</transport>
         <version>1.1</version>
         <interface>
-            <name>IRadioConfig</name>
+            <name>IEsePowerManager</name>
             <instance>default</instance>
         </interface>
-        <fqname>@1.1::IRadioConfig/default</fqname>
     </hal>
+    <!-- QSEECom HAL service -->
     <hal format="hidl">
-        <name>android.hardware.renderscript</name>
-        <transport arch="32+64">passthrough</transport>
+        <name>vendor.qti.hardware.qseecom</name>
+        <transport>hwbinder</transport>
         <version>1.0</version>
         <interface>
-            <name>IDevice</name>
+            <name>IQSEECom</name>
             <instance>default</instance>
         </interface>
     </hal>
+    <!-- QTEEConnector HAL service -->
     <hal format="hidl">
-        <name>android.hardware.soundtrigger</name>
+        <name>vendor.qti.hardware.qteeconnector</name>
         <transport>hwbinder</transport>
-        <version>2.3</version>
+        <version>1.0</version>
         <interface>
-            <name>ISoundTriggerHw</name>
+            <name>IAppConnector</name>
+            <instance>default</instance>
+        </interface>
+        <interface>
+            <name>IGPAppConnector</name>
             <instance>default</instance>
         </interface>
-        <fqname>@2.3::ISoundTriggerHw/default</fqname>
     </hal>
     <hal format="hidl">
-        <name>android.hardware.tetheroffload.config</name>
+        <name>android.hardware.drm</name>
+        <transport>hwbinder</transport>
+        <fqname>@1.3::ICryptoFactory/wfdhdcp</fqname>
+        <fqname>@1.3::IDrmFactory/wfdhdcp</fqname>
+    </hal>
+    <!-- SensorCal HAL service -->
+    <hal format="hidl">
+        <name>vendor.qti.hardware.sensorscalibrate</name>
         <transport>hwbinder</transport>
         <version>1.0</version>
         <interface>
-            <name>IOffloadConfig</name>
+            <name>ISensorsCalibrate</name>
             <instance>default</instance>
         </interface>
-        <fqname>@1.0::IOffloadConfig/default</fqname>
     </hal>
+    <!-- IRADIO -->
     <hal format="hidl">
-        <name>android.hardware.tetheroffload.control</name>
+        <name>android.hardware.radio</name>
         <transport>hwbinder</transport>
-        <version>1.0</version>
+        <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>
+    <!-- RADIO CONFIG -->
+    <hal format="hidl">
+        <name>android.hardware.radio.config</name>
+        <transport>hwbinder</transport>
+        <version>1.1</version>
         <interface>
-            <name>IOffloadControl</name>
+            <name>IRadioConfig</name>
             <instance>default</instance>
         </interface>
-        <fqname>@1.0::IOffloadControl/default</fqname>
     </hal>
+
+    <!-- RIL AUDIO 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>
+
+    <!-- radio ims -->
+    <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>
+
+    <!-- dpm QMI hal service -->
     <hal format="hidl">
         <name>com.qualcomm.qti.dpm.api</name>
         <transport>hwbinder</transport>
@@ -156,29 +327,151 @@
             <name>IdpmQmi</name>
             <instance>dpmQmiService</instance>
         </interface>
-        <fqname>@1.0::IdpmQmi/dpmQmiService</fqname>
     </hal>
+
+    <!-- qcrilhook -->
     <hal format="hidl">
-        <name>com.qualcomm.qti.imscmservice</name>
+        <name>vendor.qti.hardware.radio.qcrilhook</name>
         <transport>hwbinder</transport>
-        <version>2.2</version>
+        <version>1.0</version>
         <interface>
-            <name>IImsCmService</name>
-            <instance>qti.ims.connectionmanagerservice</instance>
+            <name>IQtiOemHook</name>
+            <instance>oemhook0</instance>
+            <instance>oemhook1</instance>
         </interface>
-        <fqname>@2.2::IImsCmService/qti.ims.connectionmanagerservice</fqname>
     </hal>
+
+    <!-- RIL UIM REMOTE CLIENT -->
     <hal format="hidl">
-        <name>com.qualcomm.qti.uceservice</name>
+        <name>vendor.qti.hardware.radio.uim_remote_client</name>
         <transport>hwbinder</transport>
-        <version>2.2</version>
+        <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>
+
+    <!-- RIL UIM LPA -->
+    <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>
+
+    <!-- RIL UIM -->
+    <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>
+
+    <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>
+
+    <!-- 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>
+        <version>3.0</version>
         <interface>
-            <name>IUceService</name>
-            <instance>com.qualcomm.qti.uceservice</instance>
+            <name>IRTPService</name>
+            <instance>imsrtpservice</instance>
         </interface>
-        <fqname>@2.2::IUceService/com.qualcomm.qti.uceservice</fqname>
     </hal>
+    <!-- Hidl service for 5G network apis -->
     <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>
+   <!-- IMS UCE Service -->
+   <hal format="hidl">
+       <name>com.qualcomm.qti.uceservice</name>
+       <transport>hwbinder</transport>
+       <version>2.2</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>
+   <!-- IMS CM Service -->
+   <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.ims.factory</name>
+       <transport>hwbinder</transport>
+       <version>1.1</version>
+       <interface>
+         <name>IImsFactory</name>
+         <instance>default</instance>
+       </interface>
+   </hal>
+       <hal format="hidl">
         <name>vendor.qti.data.factory</name>
         <transport>hwbinder</transport>
         <version>2.1</version>
@@ -186,233 +479,269 @@
             <name>IFactory</name>
             <instance>default</instance>
         </interface>
-        <fqname>@2.1::IFactory/default</fqname>
     </hal>
+    <!-- Tether Offload -->
     <hal format="hidl">
-        <name>vendor.qti.esepowermanager</name>
+      <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>
+    <hal format="hidl">
+        <name>vendor.qti.hardware.data.iwlan</name>
         <transport>hwbinder</transport>
-        <version>1.1</version>
+        <version>1.0</version>
         <interface>
-            <name>IEsePowerManager</name>
-            <instance>default</instance>
+            <name>IIWlan</name>
+            <instance>slot1</instance>
+            <instance>slot2</instance>
         </interface>
-        <fqname>@1.1::IEsePowerManager/default</fqname>
     </hal>
+    <!-- Data Link Latency -->
     <hal format="hidl">
-        <name>vendor.qti.hardware.alarm</name>
+        <name>vendor.qti.hardware.data.latency</name>
         <transport>hwbinder</transport>
         <version>1.0</version>
         <interface>
-            <name>IAlarm</name>
+            <name>ILinkLatency</name>
             <instance>default</instance>
         </interface>
-        <fqname>@1.0::IAlarm/default</fqname>
     </hal>
     <hal format="hidl">
-        <name>vendor.qti.hardware.audiohalext</name>
+        <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>vendor.qti.hardware.cacert</name>
         <transport>hwbinder</transport>
         <version>1.0</version>
         <interface>
-            <name>IAudioHalExt</name>
+            <name>IService</name>
             <instance>default</instance>
         </interface>
-        <fqname>@1.0::IAudioHalExt/default</fqname>
     </hal>
+    <!-- Factory HAL service -->
     <hal format="hidl">
-        <name>vendor.qti.hardware.bluetooth_audio</name>
+        <name>vendor.qti.hardware.factory</name>
         <transport>hwbinder</transport>
-        <version>2.0</version>
+        <version>1.1</version>
         <interface>
-            <name>IBluetoothAudioProvidersFactory</name>
+            <name>IFactory</name>
             <instance>default</instance>
         </interface>
-        <fqname>@2.0::IBluetoothAudioProvidersFactory/default</fqname>
     </hal>
+    <!-- Perf HAL service -->
     <hal format="hidl">
-        <name>vendor.qti.hardware.bluetooth_sar</name>
+        <name>vendor.qti.hardware.perf</name>
         <transport>hwbinder</transport>
-        <version>1.1</version>
+        <version>2.2</version>
         <interface>
-            <name>IBluetoothSar</name>
+            <name>IPerf</name>
             <instance>default</instance>
         </interface>
-        <fqname>@1.1::IBluetoothSar/default</fqname>
     </hal>
+    <!-- IOP HAL service -->
     <hal format="hidl">
-        <name>vendor.qti.hardware.btconfigstore</name>
+        <name>vendor.qti.hardware.iop</name>
         <transport>hwbinder</transport>
         <version>2.0</version>
         <interface>
-            <name>IBTConfigStore</name>
+            <name>IIop</name>
             <instance>default</instance>
         </interface>
-        <fqname>@2.0::IBTConfigStore/default</fqname>
     </hal>
+    <!-- Secure image data processor HAL Service -->
     <hal format="hidl">
-        <name>vendor.qti.hardware.cacert</name>
+        <name>vendor.qti.hardware.secureprocessor.device</name>
         <transport>hwbinder</transport>
         <version>1.0</version>
         <interface>
-            <name>IService</name>
-            <instance>default</instance>
+            <name>ISecureProcessor</name>
+            <instance>qti-tee</instance>
         </interface>
-        <fqname>@1.0::IService/default</fqname>
     </hal>
+    <!-- bluetooth -->
     <hal format="hidl">
-        <name>vendor.qti.hardware.camera.postproc</name>
+        <name>android.hardware.bluetooth</name>
         <transport>hwbinder</transport>
         <version>1.0</version>
         <interface>
-            <name>IPostProcService</name>
-            <instance>camerapostprocservice</instance>
+            <name>IBluetoothHci</name>
+            <instance>default</instance>
         </interface>
-        <fqname>@1.0::IPostProcService/camerapostprocservice</fqname>
     </hal>
     <hal format="hidl">
-        <name>vendor.qti.hardware.capabilityconfigstore</name>
+        <name>android.hardware.bluetooth.audio</name>
         <transport>hwbinder</transport>
-        <version>1.0</version>
+        <version>2.0</version>
         <interface>
-            <name>ICapabilityConfigStore</name>
+            <name>IBluetoothAudioProvidersFactory</name>
             <instance>default</instance>
         </interface>
-        <fqname>@1.0::ICapabilityConfigStore/default</fqname>
     </hal>
     <hal format="hidl">
-        <name>vendor.qti.hardware.data.latency</name>
+        <name>vendor.qti.hardware.bluetooth_audio</name>
         <transport>hwbinder</transport>
-        <version>1.0</version>
+        <version>2.0</version>
         <interface>
-            <name>ILinkLatency</name>
+            <name>IBluetoothAudioProvidersFactory</name>
             <instance>default</instance>
         </interface>
-        <fqname>@1.0::ILinkLatency/default</fqname>
     </hal>
     <hal format="hidl">
-        <name>vendor.qti.hardware.dsp</name>
+        <name>vendor.qti.hardware.btconfigstore</name>
         <transport>hwbinder</transport>
-        <version>1.0</version>
+        <version>2.0</version>
         <interface>
-            <name>IDspService</name>
-            <instance>dspservice</instance>
+            <name>IBTConfigStore</name>
+            <instance>default</instance>
         </interface>
-        <fqname>@1.0::IDspService/dspservice</fqname>
     </hal>
+
+    <!-- fm -->
     <hal format="hidl">
-        <name>vendor.qti.hardware.eid</name>
+        <name>vendor.qti.hardware.fm</name>
         <transport>hwbinder</transport>
         <version>1.0</version>
         <interface>
-            <name>IEid</name>
+            <name>IFmHci</name>
             <instance>default</instance>
         </interface>
-        <fqname>@1.0::IEid/default</fqname>
     </hal>
+    <!--ANT-->
     <hal format="hidl">
-        <name>vendor.qti.hardware.iop</name>
+        <name>com.dsi.ant</name>
         <transport>hwbinder</transport>
-        <version>2.0</version>
+        <version>1.0</version>
         <interface>
-            <name>IIop</name>
+            <name>IAnt</name>
             <instance>default</instance>
         </interface>
-        <fqname>@2.0::IIop/default</fqname>
     </hal>
+    <!--ANT-->
+    <!--TuiComm-->
     <hal format="hidl">
-        <name>vendor.qti.hardware.perf</name>
+        <name>vendor.qti.hardware.tui_comm</name>
         <transport>hwbinder</transport>
-        <version>2.2</version>
+        <version>1.0</version>
         <interface>
-            <name>IPerf</name>
+            <name>ITuiComm</name>
             <instance>default</instance>
         </interface>
-        <fqname>@2.2::IPerf/default</fqname>
     </hal>
+    <!--TuiComm-->
+    <!--  Soter service -->
     <hal format="hidl">
-        <name>vendor.qti.hardware.qccvndhal</name>
+        <name>vendor.qti.hardware.soter</name>
         <transport>hwbinder</transport>
         <version>1.0</version>
         <interface>
-            <name>IQccvndhal</name>
-            <instance>qccvndhal</instance>
+            <name>ISoter</name>
+            <instance>default</instance>
         </interface>
-        <fqname>@1.0::IQccvndhal/qccvndhal</fqname>
     </hal>
+    <!--  Eid service -->
     <hal format="hidl">
-        <name>vendor.qti.hardware.qconfig</name>
+        <name>vendor.qti.hardware.eid</name>
         <transport>hwbinder</transport>
         <version>1.0</version>
         <interface>
-            <name>IQConfig</name>
+            <name>IEid</name>
             <instance>default</instance>
         </interface>
-        <fqname>@1.0::IQConfig/default</fqname>
     </hal>
+    <!-- Alarm HAL service -->
     <hal format="hidl">
-        <name>vendor.qti.hardware.qseecom</name>
+        <name>vendor.qti.hardware.alarm</name>
         <transport>hwbinder</transport>
         <version>1.0</version>
         <interface>
-            <name>IQSEECom</name>
+            <name>IAlarm</name>
             <instance>default</instance>
         </interface>
-        <fqname>@1.0::IQSEECom/default</fqname>
     </hal>
+
+    <!-- Camera PostProcessing service -->
     <hal format="hidl">
-        <name>vendor.qti.hardware.qteeconnector</name>
+        <name>vendor.qti.hardware.camera.postproc</name>
         <transport>hwbinder</transport>
         <version>1.0</version>
         <interface>
-            <name>IAppConnector</name>
-            <instance>default</instance>
+            <name>IPostProcService</name>
+            <instance>camerapostprocservice</instance>
         </interface>
+    </hal>
+
+    <hal format="hidl">
+        <name>android.hardware.camera.provider</name>
+        <transport>hwbinder</transport>
+        <version>2.4</version>
         <interface>
-            <name>IGPAppConnector</name>
-            <instance>default</instance>
+            <name>ICameraProvider</name>
+            <instance>legacy/0</instance>
         </interface>
-        <fqname>@1.0::IAppConnector/default</fqname>
-        <fqname>@1.0::IGPAppConnector/default</fqname>
     </hal>
+
+    <!-- audio HAL extension service -->
     <hal format="hidl">
-        <name>vendor.qti.hardware.radio.internal.deviceinfo</name>
+        <name>vendor.qti.hardware.audiohalext</name>
         <transport>hwbinder</transport>
         <version>1.0</version>
         <interface>
-            <name>IDeviceInfo</name>
-            <instance>deviceinfo</instance>
+            <name>IAudioHalExt</name>
+            <instance>default</instance>
         </interface>
-        <fqname>@1.0::IDeviceInfo/deviceinfo</fqname>
     </hal>
+    <!-- WIGIG HAL service -->
     <hal format="hidl">
-        <name>vendor.qti.hardware.secureprocessor.device</name>
+        <name>vendor.qti.hardware.wigig.supptunnel</name>
         <transport>hwbinder</transport>
         <version>1.0</version>
         <interface>
-            <name>ISecureProcessor</name>
-            <instance>qti-tee</instance>
+            <name>ISuppTunnelProvider</name>
+            <instance>default</instance>
         </interface>
-        <fqname>@1.0::ISecureProcessor/qti-tee</fqname>
     </hal>
+    <!-- WIGIG network performance tuner service -->
     <hal format="hidl">
-        <name>vendor.qti.hardware.soter</name>
+        <name>vendor.qti.hardware.wigig.netperftuner</name>
         <transport>hwbinder</transport>
         <version>1.0</version>
         <interface>
-            <name>ISoter</name>
+            <name>INetPerfTuner</name>
             <instance>default</instance>
         </interface>
-        <fqname>@1.0::ISoter/default</fqname>
     </hal>
+    <!-- FST manager service -->
     <hal format="hidl">
-        <name>vendor.qti.hardware.vpp</name>
+        <name>vendor.qti.hardware.fstman</name>
         <transport>hwbinder</transport>
-        <version>2.0</version>
+        <version>1.0</version>
         <interface>
-            <name>IHidlVppService</name>
-            <instance>vppService</instance>
+            <name>IFstManager</name>
+            <instance>default</instance>
         </interface>
-        <fqname>@2.0::IHidlVppService/vppService</fqname>
     </hal>
+    <!-- WifiStats HAL service -->
     <hal format="hidl">
         <name>vendor.qti.hardware.wifi.wifilearner</name>
         <transport>hwbinder</transport>
@@ -421,94 +750,81 @@
             <name>IWifiStats</name>
             <instance>wifiStats</instance>
         </interface>
-        <fqname>@1.0::IWifiStats/wifiStats</fqname>
     </hal>
+    <!-- QSPM-HAL service-->
     <hal format="hidl">
-        <name>vendor.qti.hardware.wifidisplaysession</name>
+        <name>vendor.qti.qspmhal</name>
         <transport>hwbinder</transport>
         <version>1.0</version>
         <interface>
-            <name>IWifiDisplaySession</name>
-            <instance>wifidisplaysession</instance>
-        </interface>
-        <interface>
-            <name>IWifiDisplaySessionAudioTrack</name>
-            <instance>wifidisplaysessionaudiotrack</instance>
-        </interface>
-        <interface>
-            <name>IWifiDisplaySessionImageTrack</name>
-            <instance>wifidisplaysessionimagetrack</instance>
-        </interface>
-        <interface>
-            <name>IWifiDisplaySessionVideoTrack</name>
-            <instance>wifidisplaysessionvideotrack</instance>
+            <name>IQspmhal</name>
+            <instance>default</instance>
         </interface>
-        <fqname>@1.0::IWifiDisplaySession/wifidisplaysession</fqname>
-        <fqname>@1.0::IWifiDisplaySessionAudioTrack/wifidisplaysessionaudiotrack</fqname>
-        <fqname>@1.0::IWifiDisplaySessionImageTrack/wifidisplaysessionimagetrack</fqname>
-        <fqname>@1.0::IWifiDisplaySessionVideoTrack/wifidisplaysessionvideotrack</fqname>
     </hal>
+    <!-- Trusted UI HAL Service -->
     <hal format="hidl">
-        <name>vendor.qti.ims.callinfo</name>
+        <name>vendor.qti.hardware.trustedui</name>
         <transport>hwbinder</transport>
         <version>1.0</version>
         <interface>
-            <name>IService</name>
+            <name>ITrustedUI</name>
             <instance>default</instance>
+            <instance>qtee-vm</instance>
+        </interface>
+        <interface>
+            <name>ITrustedInput</name>
+            <instance>default</instance>
+            <instance>qtee-vm</instance>
         </interface>
-        <fqname>@1.0::IService/default</fqname>
     </hal>
+    <!-- BluetoothSar service-->
     <hal format="hidl">
-        <name>vendor.qti.ims.factory</name>
+        <name>vendor.qti.hardware.bluetooth_sar</name>
         <transport>hwbinder</transport>
         <version>1.1</version>
         <interface>
-            <name>IImsFactory</name>
+            <name>IBluetoothSar</name>
             <instance>default</instance>
         </interface>
-        <fqname>@1.1::IImsFactory/default</fqname>
     </hal>
+    <!-- SPU service-->
     <hal format="hidl">
-        <name>vendor.qti.imsrtpservice</name>
+        <name>vendor.qti.spu</name>
         <transport>hwbinder</transport>
-        <version>3.0</version>
+        <version>1.1</version>
         <interface>
-            <name>IRTPService</name>
-            <instance>imsrtpservice</instance>
+            <name>ISPUManager</name>
+            <instance>default</instance>
         </interface>
-        <fqname>@3.0::IRTPService/imsrtpservice</fqname>
     </hal>
+    <!-- QCC HAL Service -->
     <hal format="hidl">
-        <name>vendor.qti.qspmhal</name>
+        <name>vendor.qti.hardware.qccvndhal</name>
         <transport>hwbinder</transport>
         <version>1.0</version>
         <interface>
-            <name>IQspmhal</name>
-            <instance>default</instance>
+            <name>IQccvndhal</name>
+            <instance>qccvndhal</instance>
         </interface>
-        <fqname>@1.0::IQspmhal/default</fqname>
     </hal>
+    <!-- eMBMS HAL Service -->
     <hal format="hidl">
-        <name>vendor.xiaomi.hardware.campostproc</name>
+        <name>vendor.qti.hardware.embmssl</name>
         <transport>hwbinder</transport>
         <version>1.0</version>
         <interface>
-            <name>IMiPostProcService</name>
-            <instance>default</instance>
+            <name>IEmbms</name>
+            <instance>embmsslServer0</instance>
         </interface>
-        <fqname>@1.0::IMiPostProcService/default</fqname>
     </hal>
+    <!-- Memory PASR HAL -->
     <hal format="hidl">
-        <name>vendor.lineage.livedisplay</name>
+        <name>vendor.qti.memory.pasrmanager</name>
         <transport>hwbinder</transport>
-        <version>2.0</version>
+        <version>1.0</version>
         <interface>
-            <name>IPictureAdjustment</name>
-            <instance>default</instance>
+            <name>IPasrManager</name>
+            <instance>pasrhal</instance>
         </interface>
     </hal>
-    <sepolicy>
-        <version>30.0</version>
-    </sepolicy>
-    <kernel target-level="5"/>
 </manifest>
diff --git a/hidl/AHBF@2.1-service.xml b/hidl/manifest_lineage.xml
similarity index 59%
rename from hidl/AHBF@2.1-service.xml
rename to hidl/manifest_lineage.xml
index 115dd7b..3ab833d 100644
--- a/hidl/AHBF@2.1-service.xml
+++ b/hidl/manifest_lineage.xml
@@ -1,10 +1,10 @@
 <manifest version="1.0" type="device">
     <hal format="hidl">
-        <name>android.hardware.biometrics.fingerprint</name>
+        <name>vendor.lineage.livedisplay</name>
         <transport>hwbinder</transport>
-        <version>2.1</version>
+        <version>2.0</version>
         <interface>
-            <name>IBiometricsFingerprint</name>
+            <name>IPictureAdjustment</name>
             <instance>default</instance>
         </interface>
     </hal>
diff --git a/hidl/manifest_xiaomi.xml b/hidl/manifest_xiaomi.xml
new file mode 100644
index 0000000..c03d35e
--- /dev/null
+++ b/hidl/manifest_xiaomi.xml
@@ -0,0 +1,11 @@
+<manifest version="1.0" type="device">
+    <hal format="hidl">
+        <name>vendor.xiaomi.hardware.campostproc</name>
+        <transport>hwbinder</transport>
+        <version>1.0</version>
+        <interface>
+            <name>IMiPostProcService</name>
+            <instance>default</instance>
+        </interface>
+    </hal>
+</manifest>
-- 
GitLab