diff --git a/Android.bp b/Android.bp
index a70749b..474f866 100644
--- a/Android.bp
+++ b/Android.bp
@@ -6589,6 +6589,31 @@ cc_prebuilt_library_shared {
soc_specific: true,
}
+cc_prebuilt_library_shared {
+ name: "libhta_hexagon_runtime",
+ owner: "xiaomi",
+ strip: {
+ none: true,
+ },
+ target: {
+ android_arm64: {
+ srcs: [
+ "proprietary/vendor/lib64/libhta_hexagon_runtime.so",
+ ],
+ shared_libs: [
+ "liblog",
+ "libcdsprpc",
+ "libc",
+ "libm",
+ "libdl",
+ ],
+ },
+ },
+ compile_multilib: "64",
+ prefer: true,
+ soc_specific: true,
+}
+
cc_prebuilt_library_shared {
name: "libhydra_common",
owner: "xiaomi",
@@ -8565,7 +8590,7 @@ cc_prebuilt_library_shared {
],
shared_libs: [
"liblog",
- "libprotobuf-cpp-full-vendorcompat",
+ "libprotobuf-cpp-full-3.9.1-vendorcompat",
"libc++",
"libc",
"libm",
@@ -8594,7 +8619,6 @@ cc_prebuilt_library_shared {
"libhardware",
"libhidlbase",
"libhidlmemory",
- "libhidltransport",
"libui",
"liblog",
"libnativewindow",
@@ -8604,6 +8628,7 @@ cc_prebuilt_library_shared {
"android.hardware.neuralnetworks@1.0",
"android.hardware.neuralnetworks@1.1",
"android.hardware.neuralnetworks@1.2",
+ "android.hardware.neuralnetworks@1.3",
"android.hidl.safe_union@1.0",
"android.hidl.allocator@1.0",
"android.hidl.memory@1.0",
@@ -8619,6 +8644,31 @@ cc_prebuilt_library_shared {
soc_specific: true,
}
+cc_prebuilt_library_shared {
+ name: "unnhal-acc-hta",
+ owner: "xiaomi",
+ strip: {
+ none: true,
+ },
+ target: {
+ android_arm64: {
+ srcs: [
+ "proprietary/vendor/lib64/unnhal-acc-hta.so",
+ ],
+ shared_libs: [
+ "liblog",
+ "libc++",
+ "libc",
+ "libm",
+ "libdl",
+ ],
+ },
+ },
+ compile_multilib: "64",
+ prefer: true,
+ soc_specific: true,
+}
+
cc_prebuilt_library_shared {
name: "unnhal-acc-hvx",
owner: "xiaomi",
@@ -8635,12 +8685,12 @@ cc_prebuilt_library_shared {
"libhardware",
"libhidlbase",
"libhidlmemory",
- "libhidltransport",
"liblog",
"libutils",
"libcutils",
"android.hidl.allocator@1.0",
"android.hidl.memory@1.0",
+ "libcdsprpc",
"libc++",
"libc",
"libm",
@@ -12867,6 +12917,24 @@ dex_import {
system_ext_specific: true,
}
+prebuilt_etc_xml {
+ name: "android.hardware.neuralnetworks@1.3-service-qti-hta.xml",
+ owner: "xiaomi",
+ src: "proprietary/vendor/etc/vintf/manifest/android.hardware.neuralnetworks@1.3-service-qti-hta.xml",
+ filename_from_src: true,
+ sub_dir: "vintf/manifest",
+ soc_specific: true,
+}
+
+prebuilt_etc_xml {
+ name: "android.hardware.neuralnetworks@1.3-service-qti.xml",
+ owner: "xiaomi",
+ src: "proprietary/vendor/etc/vintf/manifest/android.hardware.neuralnetworks@1.3-service-qti.xml",
+ filename_from_src: true,
+ sub_dir: "vintf/manifest",
+ soc_specific: true,
+}
+
cc_prebuilt_binary {
name: "ATFWD-daemon",
owner: "xiaomi",
@@ -13236,19 +13304,18 @@ cc_prebuilt_binary {
}
cc_prebuilt_binary {
- name: "android.hardware.neuralnetworks@1.2-service-qti",
+ name: "android.hardware.neuralnetworks@1.3-service-qti",
owner: "xiaomi",
target: {
android_arm64: {
srcs: [
- "proprietary/vendor/bin/hw/android.hardware.neuralnetworks@1.2-service-qti",
+ "proprietary/vendor/bin/hw/android.hardware.neuralnetworks@1.3-service-qti",
],
shared_libs: [
"libbase",
"libhardware",
"libhidlbase",
"libhidlmemory",
- "libhidltransport",
"liblog",
"libutils",
"libcutils",
@@ -13257,10 +13324,12 @@ cc_prebuilt_binary {
"android.hardware.neuralnetworks@1.0",
"android.hardware.neuralnetworks@1.1",
"android.hardware.neuralnetworks@1.2",
+ "android.hardware.neuralnetworks@1.3",
"android.hidl.safe_union@1.0",
"android.hidl.allocator@1.0",
"android.hidl.memory@1.0",
- "libprotobuf-cpp-full-vendorcompat",
+ "libprotobuf-cpp-full-3.9.1-vendorcompat",
+ "libsync",
"libc++",
"libc",
"libm",
diff --git a/proprietary/vendor/bin/hw/android.hardware.neuralnetworks@1.3-service-qti b/proprietary/vendor/bin/hw/android.hardware.neuralnetworks@1.3-service-qti
new file mode 100755
index 0000000..ac8c989
Binary files /dev/null and b/proprietary/vendor/bin/hw/android.hardware.neuralnetworks@1.3-service-qti differ
diff --git a/proprietary/vendor/etc/init/android.hardware.neuralnetworks@1.3-service-qti.rc b/proprietary/vendor/etc/init/android.hardware.neuralnetworks@1.3-service-qti.rc
new file mode 100644
index 0000000..1d6c390
--- /dev/null
+++ b/proprietary/vendor/etc/init/android.hardware.neuralnetworks@1.3-service-qti.rc
@@ -0,0 +1,14 @@
+# Copyright (c) 2019-2020 Qualcomm Technologies, Inc.
+# All Rights Reserved.
+# Confidential and Proprietary - Qualcomm Technologies, Inc.
+#
+
+service neuralnetworks_hal_service /vendor/bin/hw/android.hardware.neuralnetworks@1.3-service-qti
+ class hal
+ user system
+ group system
+ writepid /dev/stune/nnapi-hal/tasks
+
+#Below changes moved from init.target.rc as part of go/FR53051
+on post-fs-data
+ mkdir /data/vendor/nnhal 0700 system system
diff --git a/proprietary/vendor/etc/vintf/manifest/android.hardware.neuralnetworks@1.3-service-qti-hta.xml b/proprietary/vendor/etc/vintf/manifest/android.hardware.neuralnetworks@1.3-service-qti-hta.xml
new file mode 100644
index 0000000..4442341
--- /dev/null
+++ b/proprietary/vendor/etc/vintf/manifest/android.hardware.neuralnetworks@1.3-service-qti-hta.xml
@@ -0,0 +1,13 @@
+
+
+
+ android.hardware.neuralnetworks
+ hwbinder
+ @1.3::IDevice/qti-hta
+
+
+
diff --git a/proprietary/vendor/etc/vintf/manifest/android.hardware.neuralnetworks@1.3-service-qti.xml b/proprietary/vendor/etc/vintf/manifest/android.hardware.neuralnetworks@1.3-service-qti.xml
new file mode 100644
index 0000000..b49adac
--- /dev/null
+++ b/proprietary/vendor/etc/vintf/manifest/android.hardware.neuralnetworks@1.3-service-qti.xml
@@ -0,0 +1,14 @@
+
+
+
+ android.hardware.neuralnetworks
+ hwbinder
+ @1.3::IDevice/qti-default
+ @1.3::IDevice/qti-dsp
+ @1.3::IDevice/qti-gpu
+
+
diff --git a/proprietary/vendor/lib64/libhexagon_nn_stub.so b/proprietary/vendor/lib64/libhexagon_nn_stub.so
index 1e8773d..d2c53ff 100644
Binary files a/proprietary/vendor/lib64/libhexagon_nn_stub.so and b/proprietary/vendor/lib64/libhexagon_nn_stub.so differ
diff --git a/proprietary/vendor/lib64/libhta_hexagon_runtime.so b/proprietary/vendor/lib64/libhta_hexagon_runtime.so
new file mode 100644
index 0000000..84b1ce9
Binary files /dev/null and b/proprietary/vendor/lib64/libhta_hexagon_runtime.so differ
diff --git a/proprietary/vendor/lib64/unnhal-acc-adreno.so b/proprietary/vendor/lib64/unnhal-acc-adreno.so
index 37b792e..821cbbd 100644
Binary files a/proprietary/vendor/lib64/unnhal-acc-adreno.so and b/proprietary/vendor/lib64/unnhal-acc-adreno.so differ
diff --git a/proprietary/vendor/lib64/unnhal-acc-common.so b/proprietary/vendor/lib64/unnhal-acc-common.so
index 2060a9d..8fb9d10 100644
Binary files a/proprietary/vendor/lib64/unnhal-acc-common.so and b/proprietary/vendor/lib64/unnhal-acc-common.so differ
diff --git a/proprietary/vendor/lib64/unnhal-acc-hta.so b/proprietary/vendor/lib64/unnhal-acc-hta.so
new file mode 100644
index 0000000..073094f
Binary files /dev/null and b/proprietary/vendor/lib64/unnhal-acc-hta.so differ
diff --git a/proprietary/vendor/lib64/unnhal-acc-hvx.so b/proprietary/vendor/lib64/unnhal-acc-hvx.so
index 1d1992b..2a90fc8 100644
Binary files a/proprietary/vendor/lib64/unnhal-acc-hvx.so and b/proprietary/vendor/lib64/unnhal-acc-hvx.so differ
diff --git a/sdm845-common-vendor.mk b/sdm845-common-vendor.mk
index b6f252b..a565958 100644
--- a/sdm845-common-vendor.mk
+++ b/sdm845-common-vendor.mk
@@ -56,7 +56,7 @@ PRODUCT_COPY_FILES += \
vendor/xiaomi/sdm845-common/proprietary/vendor/etc/init/android.hardware.drm@1.1-service.wfdhdcp.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/android.hardware.drm@1.1-service.wfdhdcp.rc \
vendor/xiaomi/sdm845-common/proprietary/vendor/etc/init/android.hardware.drm@1.2-service.widevine.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/android.hardware.drm@1.2-service.widevine.rc \
vendor/xiaomi/sdm845-common/proprietary/vendor/etc/init/android.hardware.gatekeeper@1.0-service-qti.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/android.hardware.gatekeeper@1.0-service-qti.rc \
- vendor/xiaomi/sdm845-common/proprietary/vendor/etc/init/android.hardware.neuralnetworks@1.2-service-qti.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/android.hardware.neuralnetworks@1.2-service-qti.rc \
+ vendor/xiaomi/sdm845-common/proprietary/vendor/etc/init/android.hardware.neuralnetworks@1.3-service-qti.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/android.hardware.neuralnetworks@1.3-service-qti.rc \
vendor/xiaomi/sdm845-common/proprietary/vendor/etc/init/cnd.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/cnd.rc \
vendor/xiaomi/sdm845-common/proprietary/vendor/etc/init/com.qualcomm.qti.wifidisplayhal@1.0-service.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/com.qualcomm.qti.wifidisplayhal@1.0-service.rc \
vendor/xiaomi/sdm845-common/proprietary/vendor/etc/init/dataadpl.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/dataadpl.rc \
@@ -316,6 +316,7 @@ PRODUCT_PACKAGES += \
libdsutils \
libhdr_tm \
libhexagon_nn_stub \
+ libhta_hexagon_runtime \
libhydra_common \
libkeymasterdeviceutils \
libkeymasterprovision \
@@ -383,6 +384,7 @@ PRODUCT_PACKAGES += \
qtimutex \
unnhal-acc-adreno \
unnhal-acc-common \
+ unnhal-acc-hta \
unnhal-acc-hvx \
vendor.display.color@1.0 \
vendor.display.color@1.1 \
@@ -535,6 +537,8 @@ PRODUCT_PACKAGES += \
com.qti.dpmframework \
dpmapi \
qcrilhook \
+ android.hardware.neuralnetworks@1.3-service-qti-hta.xml \
+ android.hardware.neuralnetworks@1.3-service-qti.xml \
ATFWD-daemon \
adpl \
adsprpcd \
@@ -546,7 +550,7 @@ PRODUCT_PACKAGES += \
android.hardware.bluetooth@1.0-service-qti \
android.hardware.drm@1.2-service.widevine \
android.hardware.gatekeeper@1.0-service-qti \
- android.hardware.neuralnetworks@1.2-service-qti \
+ android.hardware.neuralnetworks@1.3-service-qti \
qcrild \
vendor.display.color@1.0-service \
vendor.qti.esepowermanager@1.0-service \