Revert "hikey960/hikey: Transition to using to vendor-package"

This reverts commit af6e3c040223f3dfa5ac3e8b684b16a37d9a078c.

Reason for revert: broke build_test target, b/219798815

Change-Id: I22cfd1321d22b1f03e7e12a781a94886871faa18
diff --git a/bt-wifi-firmware-util/NOTICE b/bt-wifi-firmware-util/NOTICE
new file mode 100644
index 0000000..e5bdc11
--- /dev/null
+++ b/bt-wifi-firmware-util/NOTICE
@@ -0,0 +1,72 @@
+TEXAS INSTRUMENTS TEXT FILE LICENSE
+
+
+Copyright (c) 2008 - 2013 Texas Instruments Incorporated
+
+All rights reserved not granted herein.
+
+Limited License.
+
+If you download and use any version of this software from www.github.com, you
+acknowledge and agree that the terms and conditions of this license control and any
+previous licenses under which this software may have been provided on www.github.com
+are superseded and replaced by the terms and conditions of this license.
+
+Texas Instruments Incorporated grants a world-wide, royalty-free, non-exclusive
+license under copyrights and patents it now or hereafter owns or controls to make,
+have made, use, import, offer to sell and sell ("Utilize") this software subject
+to the terms herein.  With respect to the foregoing patent license, such license
+is granted solely to the extent that any such patent is necessary to Utilize the
+software alone.  The patent license shall not apply to any combinations which
+include this software, other than combinations with devices manufactured by or
+for TI ("TI Devices").  No hardware patent is licensed hereunder.
+
+Redistributions must preserve existing copyright notices and reproduce this license
+(including the above copyright notice and the disclaimer and (if applicable) source
+code license limitations below) in the documentation and/or other materials provided
+with the distribution
+
+Redistribution and use in binary form, without modification, are permitted provided
+that the following conditions are met:
+
+*   No reverse engineering, decompilation, or disassembly of this software is permitted
+    with respect to any software provided in binary form.
+
+*   any redistribution and use are licensed by TI for use only with TI Devices.
+
+*   Nothing shall obligate TI to provide you with source code for the software
+    licensed and provided to you in object code.
+
+If software source code is provided to you, modification and redistribution of the
+source code are permitted provided that the following conditions are met:
+
+*   any redistribution and use of the source code, including any resulting
+    derivative works, are licensed by TI for use only with TI Devices.
+
+*   any redistribution and use of any object code compiled from the source
+    code and any resulting derivative works, are licensed by TI for use only
+    with TI Devices.
+
+Neither the name of Texas Instruments Incorporated nor the names of its suppliers
+may be used to endorse or promote products derived from this software without specific
+prior written permission.
+
+DISCLAIMER.
+
+THIS SOFTWARE IS PROVIDED BY TI AND TI'S LICENSORS "AS IS" AND ANY EXPRESS
+OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
+NO EVENT SHALL TI AND TI'S LICENSORS 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.
+
+BY UTILIZING THIS SOFTWARE TO ENABLE ANT CODE EMBEDDED ON TI DEVICES, YOU
+AGREE THAT NOTHING IN THIS LICENSE GIVES RISE TO ANY WARRANTY OR OTHER
+OBLIGATIONS BY TI OR ITS LICENSORS WITH RESPECT TO THE ANT CODE EMBEDDED
+ON TI DEVICES AND ENABLED BY THE SOFTWARE UNDER THIS LICENSE.  FURTHER, YOU
+AGREE THAT NOTHING IN THIS LICENSE GIVES RISE TO ANY RIGHT TO REVERSE ENGINEER,
+DECOMPILE OR DISASSEMBLE THE ANT CODE EMBEDDED ON THE TI DEVICES.
diff --git a/bt-wifi-firmware-util/TIInit_11.8.32-pcm-960.bts b/bt-wifi-firmware-util/TIInit_11.8.32-pcm-960.bts
new file mode 100644
index 0000000..ff56d1c
--- /dev/null
+++ b/bt-wifi-firmware-util/TIInit_11.8.32-pcm-960.bts
Binary files differ
diff --git a/bt-wifi-firmware-util/TIInit_11.8.32.bts b/bt-wifi-firmware-util/TIInit_11.8.32.bts
new file mode 100755
index 0000000..824ca0f
--- /dev/null
+++ b/bt-wifi-firmware-util/TIInit_11.8.32.bts
Binary files differ
diff --git a/bt-wifi-firmware-util/wl18xx-conf-wl1837mod.bin b/bt-wifi-firmware-util/wl18xx-conf-wl1837mod.bin
new file mode 100644
index 0000000..5dd913c
--- /dev/null
+++ b/bt-wifi-firmware-util/wl18xx-conf-wl1837mod.bin
Binary files differ
diff --git a/bt-wifi-firmware-util/wl18xx-conf.bin b/bt-wifi-firmware-util/wl18xx-conf.bin
new file mode 100644
index 0000000..2bd0f4d
--- /dev/null
+++ b/bt-wifi-firmware-util/wl18xx-conf.bin
Binary files differ
diff --git a/bt-wifi-firmware-util/wl18xx-fw-4.bin b/bt-wifi-firmware-util/wl18xx-fw-4.bin
new file mode 100755
index 0000000..71c160a
--- /dev/null
+++ b/bt-wifi-firmware-util/wl18xx-fw-4.bin
Binary files differ
diff --git a/build/tasks/dtimage.mk b/build/tasks/dtimage.mk
index e125d17..4d6a74d 100644
--- a/build/tasks/dtimage.mk
+++ b/build/tasks/dtimage.mk
@@ -1,7 +1,7 @@
 ifneq ($(filter hikey%, $(TARGET_DEVICE)),)
 ifneq ($(TARGET_NO_DTIMAGE), true)
 
-MKDTIMG := $(LINARO_VENDOR_PATH)/hikey960/$(EXPECTED_LINARO_VENDOR_VERSION)/bootloader/mkdtimg
+MKDTIMG := device/linaro/hikey/installer/hikey960/mkdtimg
 DTB := $(PRODUCT_OUT)/hi3660-hikey960.dtb
 
 $(PRODUCT_OUT)/dt.img: $(DTB)
diff --git a/device-common.mk b/device-common.mk
index 9069595..6d04752 100644
--- a/device-common.mk
+++ b/device-common.mk
@@ -17,31 +17,6 @@
 # Enable updating of APEXes
 $(call inherit-product, $(SRC_TARGET_DIR)/product/updatable_apex.mk)
 
-# Check vendor package version
-# If you need to make changes to the vendor partition,
-# please modify the source git project here:
-#   https://staging-git.codelinaro.org/linaro/linaro-aosp/aosp-linaro-vendor-package
-include $(LOCAL_PATH)/vendor-package-ver.mk
-ifneq (,$(wildcard $(LINARO_VENDOR_PATH)/hikey960/$(EXPECTED_LINARO_VENDOR_VERSION)/version.mk))
-  # Unfortunately inherit-product doesn't export build variables from the
-  # called make file to the caller, so we have to include it directly here.
-  include $(LINARO_VENDOR_PATH)/hikey960/$(EXPECTED_LINARO_VENDOR_VERSION)/version.mk
-  ifneq ($(TARGET_LINARO_VENDOR_VERSION), $(EXPECTED_LINARO_VENDOR_VERSION))
-    $(warning TARGET_LINARO_VENDOR_VERSION ($(TARGET_LINARO_VENDOR_VERSION)) does not match exiting the build ($(EXPECTED_LINARO_VENDOR_VERSION)).)
-    $(warning Please download new binaries here:)
-    $(warning    $(VND_PKG_URL) )
-    $(warning And extract in the ANDROID_TOP_DIR)
-    # Would be good to error out here, but that causes other issues
-  endif
-else
-  $(warning Missing Linaro Vendor Package!)
-  $(warning Please download new binaries here:)
-  $(warning    $(VND_PKG_URL) )
-  $(warning And extract in the ANDROID_TOP_DIR)
-  # Would be good to error out here, but that causes other issues
-endif
-
-$(warning, EXPECTED_LINARO_VENDOR_VERSION=$(EXPECTED_LINARO_VENDOR_VERSION))
 
 ifneq (,$(filter $(TARGET_PRODUCT),hikey960_tv hikey_tv))
 # Setup TV Build
diff --git a/fetch-vendor-package.sh b/fetch-vendor-package.sh
deleted file mode 100755
index cbadbde..0000000
--- a/fetch-vendor-package.sh
+++ /dev/null
@@ -1,27 +0,0 @@
-#!/bin/bash
-# fetch, check & extract the current vendor package
-set -e
-
-DIR_PARENT=$(cd $(dirname $0); pwd)
-if [ -z "${ANDROID_BUILD_TOP}" ]; then
-    ANDROID_BUILD_TOP=$(cd ${DIR_PARENT}/../../../; pwd)
-fi
-
-. "${ANDROID_BUILD_TOP}/device/linaro/hikey/vendor-package-ver.sh"
-
-PKG_FILE=extract-linaro_devices-${EXPECTED_LINARO_VENDOR_VERSION}
-
-pushd ${ANDROID_BUILD_TOP}
-
-if [ ! -e "${PKG_FILE}.tgz"  ]; then
-    curl -L ${VND_PKG_URL} -o  ${PKG_FILE}.tgz
-fi
-
-# generate expected sha512sum, check & cleanup
-echo "${EXPECTED_LINARO_VENDOR_SHA}  ${PKG_FILE}.tgz" > ${PKG_FILE}.tgz.sha
-sha512sum -c ${PKG_FILE}.tgz.sha
-rm ${PKG_FILE}.tgz.sha
-
-tar -xf ${PKG_FILE}.tgz
-./${PKG_FILE}.sh
-popd
diff --git a/hikey.mk b/hikey.mk
index c643f87..7471955 100644
--- a/hikey.mk
+++ b/hikey.mk
@@ -1,7 +1,5 @@
-include $(LOCAL_PATH)/vendor-package-ver.mk
 $(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
 $(call inherit-product, device/linaro/hikey/hikey-common.mk)
-$(call inherit-product, vendor/linaro/hikey960/$(EXPECTED_LINARO_VENDOR_VERSION)/hikey.mk)
 
 #setup dm-verity configs
 PRODUCT_SYSTEM_VERITY_PARTITION := /dev/block/platform/soc/f723d000.dwmmc0/by-name/system
@@ -56,7 +54,3 @@
 
 endif
 endif
-
-PRODUCT_SOONG_NAMESPACES += \
-  vendor/linaro/hikey960/$(EXPECTED_LINARO_VENDOR_VERSION)/mali/utgard
-
diff --git a/hikey/device-hikey.mk b/hikey/device-hikey.mk
index cc94c40..aa202b3 100644
--- a/hikey/device-hikey.mk
+++ b/hikey/device-hikey.mk
@@ -24,6 +24,15 @@
 			device/linaro/hikey/ueventd.common.rc:$(TARGET_COPY_OUT_VENDOR)/ueventd.rc \
 			device/linaro/hikey/common.kl:$(TARGET_COPY_OUT_VENDOR)/usr/keylayout/hikey.kl
 
+# Copy BT firmware
+PRODUCT_COPY_FILES += \
+	device/linaro/hikey/bt-wifi-firmware-util/TIInit_11.8.32.bts:$(TARGET_COPY_OUT_VENDOR)/firmware/ti-connectivity/TIInit_11.8.32.bts
+
+# Copy wlan firmware
+PRODUCT_COPY_FILES += \
+	device/linaro/hikey/bt-wifi-firmware-util/wl18xx-fw-4.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/ti-connectivity/wl18xx-fw-4.bin \
+	device/linaro/hikey/bt-wifi-firmware-util/wl18xx-conf.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/ti-connectivity/wl18xx-conf.bin
+
 # Build HiKey HDMI audio HAL
 PRODUCT_PACKAGES += audio.primary.hikey
 
@@ -45,7 +54,7 @@
 PRODUCT_PACKAGES += hwcomposer.drm_hikey
 
 # Include mali blobs from ARM
-PRODUCT_PACKAGES += libGLES_mali
+PRODUCT_PACKAGES += libGLES_mali.so END_USER_LICENCE_AGREEMENT.txt
 
 ifneq ($(TARGET_NO_RECOVERY),true)
 PRODUCT_COPY_FILES += \
diff --git a/hikey960.mk b/hikey960.mk
index 06ac84b..b300bfa 100644
--- a/hikey960.mk
+++ b/hikey960.mk
@@ -11,14 +11,11 @@
   endif
 endif
 
-
-include $(LOCAL_PATH)/vendor-package-ver.mk
-
+#
 # Inherit the common device configuration
 $(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
 $(call inherit-product, device/linaro/hikey/hikey960/device-hikey960.mk)
 $(call inherit-product, device/linaro/hikey/device-common.mk)
-$(call inherit-product, vendor/linaro/hikey960/$(EXPECTED_LINARO_VENDOR_VERSION)/hikey960.mk)
 
 PRODUCT_PROPERTY_OVERRIDES += ro.opengles.version=196608
 
@@ -49,6 +46,3 @@
         $(SDCARDFS_KO)
   endif
 endif
-
-PRODUCT_SOONG_NAMESPACES += \
-  vendor/linaro/hikey960/$(EXPECTED_LINARO_VENDOR_VERSION)/mali/bifrost
diff --git a/hikey960/device-hikey960.mk b/hikey960/device-hikey960.mk
index dc1c52a..d34dc31 100644
--- a/hikey960/device-hikey960.mk
+++ b/hikey960/device-hikey960.mk
@@ -42,6 +42,15 @@
 PRODUCT_USE_DYNAMIC_PARTITIONS := true
 PRODUCT_USE_DYNAMIC_PARTITION_SIZE :=true
 
+# Copy BT firmware
+PRODUCT_COPY_FILES += \
+	device/linaro/hikey/bt-wifi-firmware-util/TIInit_11.8.32-pcm-960.bts:$(TARGET_COPY_OUT_VENDOR)/firmware/ti-connectivity/TIInit_11.8.32.bts
+
+# Copy wlan firmware
+PRODUCT_COPY_FILES += \
+	device/linaro/hikey/bt-wifi-firmware-util/wl18xx-fw-4.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/ti-connectivity/wl18xx-fw-4.bin \
+	device/linaro/hikey/bt-wifi-firmware-util/wl18xx-conf-wl1837mod.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/ti-connectivity/wl18xx-conf.bin
+
 # Copy hifi firmware
 PRODUCT_COPY_FILES += \
 	device/linaro/hikey/hifi/firmware/hifi-hikey960.img:$(TARGET_COPY_OUT_VENDOR)/firmware/hifi/hifi.img
@@ -56,11 +65,12 @@
 PRODUCT_PACKAGES += gralloc.hikey960
 
 #binary blobs from ARM
-PRODUCT_PACKAGES +=	libGLES_mali \
-			vulkan.hikey960 \
-			libbccArm \
-			libRSDriverArm \
-			libmalicore.bc
+PRODUCT_PACKAGES +=	libGLES_mali.so \
+			vulkan.hikey960.so \
+			libbccArm.so \
+			libRSDriverArm.so \
+			libmalicore.bc \
+			END_USER_LICENCE_AGREEMENT.txt
 
 ifdef MALI_RS_DRIVER_AVAILABLE
 PRODUCT_COPY_FILES += \
diff --git a/installer/hikey960/fip.bin b/installer/hikey960/fip.bin
new file mode 100644
index 0000000..dcf61e2
--- /dev/null
+++ b/installer/hikey960/fip.bin
Binary files differ
diff --git a/installer/hikey960/flash-all.sh b/installer/hikey960/flash-all.sh
index c894558..70bb432 100755
--- a/installer/hikey960/flash-all.sh
+++ b/installer/hikey960/flash-all.sh
@@ -5,7 +5,7 @@
 
 # for cases that don't run "lunch hikey960-userdebug"
 if [ -z "${ANDROID_BUILD_TOP}" ]; then
-    ANDROID_BUILD_TOP=$(cd ${INSTALLER_DIR}/../../../../../; pwd)
+    ANDROID_BUILD_TOP=${INSTALLER_DIR}/../../../../../
     ANDROID_PRODUCT_OUT="${ANDROID_BUILD_TOP}/out/target/product/hikey960"
 fi
 
@@ -16,22 +16,6 @@
 
 echo ${ECHO_PREFIX}"android out dir:${ANDROID_PRODUCT_OUT}"
 
-. "${ANDROID_BUILD_TOP}/device/linaro/hikey/vendor-package-ver.sh"
-
-VENDOR_DIR=$ANDROID_BUILD_TOP/vendor/linaro/hikey960/${EXPECTED_LINARO_VENDOR_VERSION}/
-
-# TODO: Pull one-time recovery/qdl path out of standard install
-# Flash bootloader firmware files
-if [ ! -d "${VENDOR_DIR}/" ]; then
-    echo "FLASH-ALL-AOSP: Missing vendor firmware package?"
-    echo "                Make sure the vendor binaries have been downloaded from"
-    echo "                ${VND_PKG_URL}"
-    echo "                and extracted to $ANDROID_BUILD_TOP."
-    exit
-fi
-
-pushd $VENDOR_DIR/bootloader/
-
 function check_partition_table_version () {
 	fastboot erase reserved
 	if [ $? -eq 0 ]
@@ -43,21 +27,21 @@
 }
 
 function flashing_atf_uefi () {
-	fastboot flash ptable prm_ptable.img
-	fastboot flash xloader hisi-sec_xloader.img
+	fastboot flash ptable "${INSTALLER_DIR}"/prm_ptable.img
+	fastboot flash xloader "${INSTALLER_DIR}"/hisi-sec_xloader.img
 	fastboot reboot-bootloader
 
-	fastboot flash fastboot l-loader.bin
-	fastboot flash fip fip.bin
-	fastboot flash nvme hisi-nvme.img
-	fastboot flash fw_lpm3 hisi-lpm3.img
-	fastboot flash trustfirmware hisi-bl31.bin
+	fastboot flash fastboot "${INSTALLER_DIR}"/l-loader.bin
+	fastboot flash fip "${INSTALLER_DIR}"/fip.bin
+	fastboot flash nvme "${INSTALLER_DIR}"/hisi-nvme.img
+	fastboot flash fw_lpm3   "${INSTALLER_DIR}"/hisi-lpm3.img
+	fastboot flash trustfirmware   "${INSTALLER_DIR}"/hisi-bl31.bin
 	fastboot reboot-bootloader
 
-	fastboot flash ptable prm_ptable.img
-	fastboot flash xloader hisi-sec_xloader.img
-	fastboot flash fastboot l-loader.bin
-	fastboot flash fip fip.bin
+	fastboot flash ptable "${INSTALLER_DIR}"/prm_ptable.img
+	fastboot flash xloader "${INSTALLER_DIR}"/hisi-sec_xloader.img
+	fastboot flash fastboot "${INSTALLER_DIR}"/l-loader.bin
+	fastboot flash fip "${INSTALLER_DIR}"/fip.bin
 
 	fastboot flash boot "${ANDROID_PRODUCT_OUT}"/boot.img
 	fastboot flash super "${ANDROID_PRODUCT_OUT}"/super.img
@@ -66,9 +50,9 @@
 }
 
 function upgrading_ptable_1mb_aligned () {
-	fastboot flash xloader hisi-sec_xloader.img
-	fastboot flash ptable hisi-ptable.img
-	fastboot flash fastboot hisi-fastboot.img
+	fastboot flash xloader "${INSTALLER_DIR}"/hisi-sec_xloader.img
+	fastboot flash ptable "${INSTALLER_DIR}"/hisi-ptable.img
+	fastboot flash fastboot "${INSTALLER_DIR}"/hisi-fastboot.img
 	fastboot reboot-bootloader
 }
 
@@ -89,4 +73,3 @@
 fi
 
 fastboot reboot
-popd
diff --git a/installer/hikey960/hisi-bl31.bin b/installer/hikey960/hisi-bl31.bin
new file mode 100644
index 0000000..abebea6
--- /dev/null
+++ b/installer/hikey960/hisi-bl31.bin
Binary files differ
diff --git a/installer/hikey960/hisi-fastboot.img b/installer/hikey960/hisi-fastboot.img
new file mode 100644
index 0000000..72cbf90
--- /dev/null
+++ b/installer/hikey960/hisi-fastboot.img
Binary files differ
diff --git a/installer/hikey960/hisi-lpm3.img b/installer/hikey960/hisi-lpm3.img
new file mode 100644
index 0000000..bd0243b
--- /dev/null
+++ b/installer/hikey960/hisi-lpm3.img
Binary files differ
diff --git a/installer/hikey960/hisi-nvme.img b/installer/hikey960/hisi-nvme.img
new file mode 100644
index 0000000..ca5bc7c
--- /dev/null
+++ b/installer/hikey960/hisi-nvme.img
Binary files differ
diff --git a/installer/hikey960/hisi-ptable.img b/installer/hikey960/hisi-ptable.img
new file mode 100644
index 0000000..269aa63
--- /dev/null
+++ b/installer/hikey960/hisi-ptable.img
Binary files differ
diff --git a/installer/hikey960/hisi-sec_xloader.img b/installer/hikey960/hisi-sec_xloader.img
new file mode 100644
index 0000000..47c353b
--- /dev/null
+++ b/installer/hikey960/hisi-sec_xloader.img
Binary files differ
diff --git a/installer/hikey960/l-loader.bin b/installer/hikey960/l-loader.bin
new file mode 100644
index 0000000..e0c3726
--- /dev/null
+++ b/installer/hikey960/l-loader.bin
Binary files differ
diff --git a/installer/hikey960/legacy-flash-all.sh b/installer/hikey960/legacy-flash-all.sh
new file mode 100755
index 0000000..3f8bf9b
--- /dev/null
+++ b/installer/hikey960/legacy-flash-all.sh
@@ -0,0 +1,30 @@
+#!/bin/bash
+
+INSTALLER_DIR="`dirname ${0}`"
+
+# for cases that don't run "lunch hikey960-userdebug"
+if [ -z "${ANDROID_BUILD_TOP}" ]; then
+    ANDROID_BUILD_TOP=${INSTALLER_DIR}/../../../../../
+    ANDROID_PRODUCT_OUT="${ANDROID_BUILD_TOP}/out/target/product/hikey960"
+fi
+
+if [ ! -d "${ANDROID_PRODUCT_OUT}" ]; then
+    echo "error in locating out directory, check if it exist"
+    exit
+fi
+
+echo "android out dir:${ANDROID_PRODUCT_OUT}"
+
+fastboot flash xloader "${INSTALLER_DIR}"/hisi-sec_xloader.img
+fastboot flash ptable "${INSTALLER_DIR}"/hisi-ptable.img
+fastboot flash fastboot "${INSTALLER_DIR}"/hisi-fastboot.img
+fastboot reboot-bootloader
+fastboot flash nvme "${INSTALLER_DIR}"/hisi-nvme.img
+fastboot flash fw_lpm3   "${INSTALLER_DIR}"/hisi-lpm3.img
+fastboot flash trustfirmware   "${INSTALLER_DIR}"/hisi-bl31.bin
+fastboot flash boot "${ANDROID_PRODUCT_OUT}"/boot.img
+fastboot flash dts "${ANDROID_PRODUCT_OUT}"/dt.img
+fastboot flash super "${ANDROID_PRODUCT_OUT}"/super.img
+fastboot flash userdata "${ANDROID_PRODUCT_OUT}"/userdata.img
+fastboot format:ext4:10000000 cache
+fastboot reboot
diff --git a/installer/hikey960/mkdtimg b/installer/hikey960/mkdtimg
new file mode 100755
index 0000000..6572204
--- /dev/null
+++ b/installer/hikey960/mkdtimg
@@ -0,0 +1,159 @@
+#!/usr/bin/env python
+# Copyright 2017, The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+from __future__ import print_function
+try:
+	from os import fstat, stat, remove
+	from sys import exit
+	from argparse import ArgumentParser, FileType
+	from ctypes import sizeof, Structure, c_char, c_int
+	from struct import pack, calcsize
+	import zlib
+except Exception as e:
+	print("some module is needed:" + str(e))
+	exit(-1)
+
+dt_head_info_fmt = '4sII'
+dt_entry_fmt = 'Q4I2Q'
+dtimg_version = 1
+dtb_count = 1
+
+def write32(output, value):
+	output.write(chr(value & 255)) ; value=value // 256
+	output.write(chr(value & 255)) ; value=value // 256
+	output.write(chr(value & 255)) ; value=value // 256
+	output.write(chr(value & 255))
+
+def compress(filename, input, output):
+	output.write('\037\213\010')
+	output.write(chr(0))
+
+	statval = stat(filename)
+	write32(output, 0)
+	output.write('\002')
+	output.write('\003')
+
+	crcval = zlib.crc32("")
+	compobj = zlib.compressobj(9, zlib.DEFLATED, -zlib.MAX_WBITS,
+		zlib.DEF_MEM_LEVEL, 0)
+	while True:
+		data = input.read(1024)
+		if data == "":
+			break
+		crcval = zlib.crc32(data, crcval)
+		output.write(compobj.compress(data))
+	output.write(compobj.flush())
+	write32(output, crcval)
+	write32(output, statval.st_size)
+
+def dtb_compress(dtb_file):
+	try:
+		outputname = dtb_file + '.gz'
+		input = open(dtb_file, 'rb')
+		output = open(outputname, 'wb')
+		compress(dtb_file, input, output)
+		input.close()
+		output.close()
+	except Exception as e:
+		print('dtb_compress error:' + str(e))
+		exit(-1)
+	return outputname
+
+class dt_head_info(Structure):
+	_fields_ = [('magic', c_char * 4),
+		    ('version', c_int),
+		    ('dt_count', c_int)]
+
+class dt_entry_t(Structure):
+	_fields_ = [('dtb_size', c_int),
+		    ('dtb_offset', c_int)]
+
+def align_page_size(offset, pagesize):
+	return (pagesize - (offset % pagesize))
+
+def write_head_info(head_info, args):
+	args.output.write(pack(dt_head_info_fmt,
+			       head_info.magic,
+			       head_info.version,
+			       head_info.dt_count))
+
+def write_dtb_entry_t(dt_entry, args):
+	args.output.write(pack(dt_entry_fmt,
+			       0,  # reserved
+			       dt_entry.dtb_size,
+			       0,  # reserved
+			       dt_entry.dtb_offset,
+			       0,  # reserved
+			       0,  # reserved
+			       0)) # reserved
+
+def write_padding(args, padding):
+	for i in range(0, padding):
+		args.output.write('\x00')
+
+def write_dtb(args):
+	dtb_file = args.dtb
+	out_dtb = dtb_file
+	if args.compress == True:
+		out_dtb = dtb_compress(dtb_file)
+	try:
+		dtb_offset = calcsize(dt_head_info_fmt) + \
+				      calcsize(dt_entry_fmt) + \
+				      4
+		padding = align_page_size(dtb_offset, args.pagesize)
+		dtb_size = stat(out_dtb).st_size
+		dtb_size_padding = align_page_size(dtb_size, args.pagesize)
+		dt_entry = dt_entry_t(dtb_size + dtb_size_padding,
+				      dtb_offset + padding)
+		write_dtb_entry_t(dt_entry, args)
+		args.output.write(pack('I', 0)) # SUCCESS code number
+		write_padding(args, padding)
+		with open(out_dtb, 'rb') as dtb_fd:
+			args.output.write(dtb_fd.read(dtb_size))
+			write_padding(args, dtb_size_padding)
+	except Exception as e:
+		print('write dtb error:' + str(e))
+		exit(-1)
+
+def clean_gz_file(args):
+	try:
+		if args.compress != True:
+			return
+		remove(args.dtb + '.gz')
+	except Exception as e:
+		print('clean gz file error:' + str(e))
+		exit(-1)
+
+def parse_cmdline():
+	parser = ArgumentParser()
+	parser.add_argument('-c', '--compress', help='compress dtb or not',
+			    action='store_true')
+	parser.add_argument('-d', '--dtb', help='path to the dtb', type=str,
+			    required=True)
+	parser.add_argument('-s', '--pagesize', help='align page size',
+			    type=int, choices=[2**i for i in range(11,15)],
+			    default=2048)
+	parser.add_argument('-o', '--output', help='output file name',
+			    type=FileType('wb'), required=True)
+	return parser.parse_args()
+
+def main():
+	args = parse_cmdline()
+	dtimg_head_info = dt_head_info('HSDT', dtimg_version, dtb_count)
+	write_head_info(dtimg_head_info, args)
+	write_dtb(args)
+	clean_gz_file(args)
+
+if __name__ == '__main__':
+	main()
diff --git a/installer/hikey960/prm_ptable.img b/installer/hikey960/prm_ptable.img
new file mode 100644
index 0000000..e7b9b03
--- /dev/null
+++ b/installer/hikey960/prm_ptable.img
Binary files differ
diff --git a/installer/hikey960/uefi-flash-all.sh b/installer/hikey960/uefi-flash-all.sh
new file mode 100755
index 0000000..347b5b2
--- /dev/null
+++ b/installer/hikey960/uefi-flash-all.sh
@@ -0,0 +1,3 @@
+#!/bin/bash
+INSTALLER_DIR="`dirname ${0}`"
+${INSTALLER_DIR}/flash-all.sh
diff --git a/mali/Android.mk b/mali/Android.mk
new file mode 100644
index 0000000..4060483
--- /dev/null
+++ b/mali/Android.mk
@@ -0,0 +1,31 @@
+#
+# Copyright (C) 2015 The Android Open-Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+# WARNING: Everything listed here will be built on ALL platforms,
+# including x86, the emulator, and the SDK.  Modules must be uniquely
+# named (liblights.panda), and must build everywhere, or limit themselves
+# to only building on ARM if they include assembly. Individual makefiles
+# are responsible for having their own logic, for fine-grained control.
+
+ifneq ($(filter hikey%, $(TARGET_DEVICE)),)
+
+LOCAL_PATH := $(call my-dir)
+
+# if some modules are built directly from this directory (not subdirectories),
+# their rules should be written here.
+
+include $(call all-makefiles-under,$(LOCAL_PATH))
+endif
diff --git a/mali/bifrost/APACHE_LICENSE.txt b/mali/bifrost/APACHE_LICENSE.txt
new file mode 100644
index 0000000..d645695
--- /dev/null
+++ b/mali/bifrost/APACHE_LICENSE.txt
@@ -0,0 +1,202 @@
+
+                                 Apache License
+                           Version 2.0, January 2004
+                        http://www.apache.org/licenses/
+
+   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+   1. Definitions.
+
+      "License" shall mean the terms and conditions for use, reproduction,
+      and distribution as defined by Sections 1 through 9 of this document.
+
+      "Licensor" shall mean the copyright owner or entity authorized by
+      the copyright owner that is granting the License.
+
+      "Legal Entity" shall mean the union of the acting entity and all
+      other entities that control, are controlled by, or are under common
+      control with that entity. For the purposes of this definition,
+      "control" means (i) the power, direct or indirect, to cause the
+      direction or management of such entity, whether by contract or
+      otherwise, or (ii) ownership of fifty percent (50%) or more of the
+      outstanding shares, or (iii) beneficial ownership of such entity.
+
+      "You" (or "Your") shall mean an individual or Legal Entity
+      exercising permissions granted by this License.
+
+      "Source" form shall mean the preferred form for making modifications,
+      including but not limited to software source code, documentation
+      source, and configuration files.
+
+      "Object" form shall mean any form resulting from mechanical
+      transformation or translation of a Source form, including but
+      not limited to compiled object code, generated documentation,
+      and conversions to other media types.
+
+      "Work" shall mean the work of authorship, whether in Source or
+      Object form, made available under the License, as indicated by a
+      copyright notice that is included in or attached to the work
+      (an example is provided in the Appendix below).
+
+      "Derivative Works" shall mean any work, whether in Source or Object
+      form, that is based on (or derived from) the Work and for which the
+      editorial revisions, annotations, elaborations, or other modifications
+      represent, as a whole, an original work of authorship. For the purposes
+      of this License, Derivative Works shall not include works that remain
+      separable from, or merely link (or bind by name) to the interfaces of,
+      the Work and Derivative Works thereof.
+
+      "Contribution" shall mean any work of authorship, including
+      the original version of the Work and any modifications or additions
+      to that Work or Derivative Works thereof, that is intentionally
+      submitted to Licensor for inclusion in the Work by the copyright owner
+      or by an individual or Legal Entity authorized to submit on behalf of
+      the copyright owner. For the purposes of this definition, "submitted"
+      means any form of electronic, verbal, or written communication sent
+      to the Licensor or its representatives, including but not limited to
+      communication on electronic mailing lists, source code control systems,
+      and issue tracking systems that are managed by, or on behalf of, the
+      Licensor for the purpose of discussing and improving the Work, but
+      excluding communication that is conspicuously marked or otherwise
+      designated in writing by the copyright owner as "Not a Contribution."
+
+      "Contributor" shall mean Licensor and any individual or Legal Entity
+      on behalf of whom a Contribution has been received by Licensor and
+      subsequently incorporated within the Work.
+
+   2. Grant of Copyright License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      copyright license to reproduce, prepare Derivative Works of,
+      publicly display, publicly perform, sublicense, and distribute the
+      Work and such Derivative Works in Source or Object form.
+
+   3. Grant of Patent License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      (except as stated in this section) patent license to make, have made,
+      use, offer to sell, sell, import, and otherwise transfer the Work,
+      where such license applies only to those patent claims licensable
+      by such Contributor that are necessarily infringed by their
+      Contribution(s) alone or by combination of their Contribution(s)
+      with the Work to which such Contribution(s) was submitted. If You
+      institute patent litigation against any entity (including a
+      cross-claim or counterclaim in a lawsuit) alleging that the Work
+      or a Contribution incorporated within the Work constitutes direct
+      or contributory patent infringement, then any patent licenses
+      granted to You under this License for that Work shall terminate
+      as of the date such litigation is filed.
+
+   4. Redistribution. You may reproduce and distribute copies of the
+      Work or Derivative Works thereof in any medium, with or without
+      modifications, and in Source or Object form, provided that You
+      meet the following conditions:
+
+      (a) You must give any other recipients of the Work or
+          Derivative Works a copy of this License; and
+
+      (b) You must cause any modified files to carry prominent notices
+          stating that You changed the files; and
+
+      (c) You must retain, in the Source form of any Derivative Works
+          that You distribute, all copyright, patent, trademark, and
+          attribution notices from the Source form of the Work,
+          excluding those notices that do not pertain to any part of
+          the Derivative Works; and
+
+      (d) If the Work includes a "NOTICE" text file as part of its
+          distribution, then any Derivative Works that You distribute must
+          include a readable copy of the attribution notices contained
+          within such NOTICE file, excluding those notices that do not
+          pertain to any part of the Derivative Works, in at least one
+          of the following places: within a NOTICE text file distributed
+          as part of the Derivative Works; within the Source form or
+          documentation, if provided along with the Derivative Works; or,
+          within a display generated by the Derivative Works, if and
+          wherever such third-party notices normally appear. The contents
+          of the NOTICE file are for informational purposes only and
+          do not modify the License. You may add Your own attribution
+          notices within Derivative Works that You distribute, alongside
+          or as an addendum to the NOTICE text from the Work, provided
+          that such additional attribution notices cannot be construed
+          as modifying the License.
+
+      You may add Your own copyright statement to Your modifications and
+      may provide additional or different license terms and conditions
+      for use, reproduction, or distribution of Your modifications, or
+      for any such Derivative Works as a whole, provided Your use,
+      reproduction, and distribution of the Work otherwise complies with
+      the conditions stated in this License.
+
+   5. Submission of Contributions. Unless You explicitly state otherwise,
+      any Contribution intentionally submitted for inclusion in the Work
+      by You to the Licensor shall be under the terms and conditions of
+      this License, without any additional terms or conditions.
+      Notwithstanding the above, nothing herein shall supersede or modify
+      the terms of any separate license agreement you may have executed
+      with Licensor regarding such Contributions.
+
+   6. Trademarks. This License does not grant permission to use the trade
+      names, trademarks, service marks, or product names of the Licensor,
+      except as required for reasonable and customary use in describing the
+      origin of the Work and reproducing the content of the NOTICE file.
+
+   7. Disclaimer of Warranty. Unless required by applicable law or
+      agreed to in writing, Licensor provides the Work (and each
+      Contributor provides its Contributions) on an "AS IS" BASIS,
+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+      implied, including, without limitation, any warranties or conditions
+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+      PARTICULAR PURPOSE. You are solely responsible for determining the
+      appropriateness of using or redistributing the Work and assume any
+      risks associated with Your exercise of permissions under this License.
+
+   8. Limitation of Liability. In no event and under no legal theory,
+      whether in tort (including negligence), contract, or otherwise,
+      unless required by applicable law (such as deliberate and grossly
+      negligent acts) or agreed to in writing, shall any Contributor be
+      liable to You for damages, including any direct, indirect, special,
+      incidental, or consequential damages of any character arising as a
+      result of this License or out of the use or inability to use the
+      Work (including but not limited to damages for loss of goodwill,
+      work stoppage, computer failure or malfunction, or any and all
+      other commercial damages or losses), even if such Contributor
+      has been advised of the possibility of such damages.
+
+   9. Accepting Warranty or Additional Liability. While redistributing
+      the Work or Derivative Works thereof, You may choose to offer,
+      and charge a fee for, acceptance of support, warranty, indemnity,
+      or other liability obligations and/or rights consistent with this
+      License. However, in accepting such obligations, You may act only
+      on Your own behalf and on Your sole responsibility, not on behalf
+      of any other Contributor, and only if You agree to indemnify,
+      defend, and hold each Contributor harmless for any liability
+      incurred by, or claims asserted against, such Contributor by reason
+      of your accepting any such warranty or additional liability.
+
+   END OF TERMS AND CONDITIONS
+
+   APPENDIX: How to apply the Apache License to your work.
+
+      To apply the Apache License to your work, attach the following
+      boilerplate notice, with the fields enclosed by brackets "[]"
+      replaced with your own identifying information. (Don't include
+      the brackets!)  The text should be enclosed in the appropriate
+      comment syntax for the file format. We also recommend that a
+      file or class name and description of purpose be included on the
+      same "printed page" as the copyright notice for easier
+      identification within third-party archives.
+
+   Copyright [yyyy] [name of copyright owner]
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
diff --git a/mali/bifrost/Android.mk b/mali/bifrost/Android.mk
new file mode 100644
index 0000000..0df1f5f
--- /dev/null
+++ b/mali/bifrost/Android.mk
@@ -0,0 +1,87 @@
+ifneq ($(filter hikey960, $(TARGET_DEVICE)),)
+LOCAL_PATH := $(call my-dir)
+
+include $(CLEAR_VARS)
+LOCAL_MODULE := END_USER_LICENCE_AGREEMENT.txt
+LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
+LOCAL_LICENSE_CONDITIONS := notice
+LOCAL_MODULE_CLASS := SHARED_LIBRARIES
+LOCAL_STRIP_MODULE := false
+LOCAL_SRC_FILES_arm := $(LOCAL_MODULE)
+LOCAL_MODULE_PATH_32 := $(TARGET_OUT_VENDOR)
+LOCAL_MULTILIB := 32
+include $(BUILD_PREBUILT)
+
+include $(CLEAR_VARS)
+LOCAL_MODULE := libGLES_mali.so
+LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
+LOCAL_LICENSE_CONDITIONS := notice
+LOCAL_MODULE_CLASS := SHARED_LIBRARIES
+LOCAL_STRIP_MODULE := false
+LOCAL_SRC_FILES_arm := lib/egl/$(LOCAL_MODULE)
+LOCAL_SRC_FILES_arm64 := lib64/egl/$(LOCAL_MODULE)
+LOCAL_MODULE_PATH_32 := $(TARGET_OUT_VENDOR)/lib/egl/
+LOCAL_MODULE_PATH_64 := $(TARGET_OUT_VENDOR)/lib64/egl/
+LOCAL_MULTILIB := both
+LOCAL_SHARED_LIBRARIES := android.hardware.graphics.common@1.0 libz libnativewindow libc++ liblog libm libc libdl
+include $(BUILD_PREBUILT)
+
+include $(CLEAR_VARS)
+LOCAL_MODULE := libbccArm.so
+LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
+LOCAL_LICENSE_CONDITIONS := notice
+LOCAL_MODULE_CLASS := SHARED_LIBRARIES
+LOCAL_STRIP_MODULE := false
+LOCAL_SRC_FILES_arm64 := lib64/$(LOCAL_MODULE)
+LOCAL_MODULE_PATH_64 := $(TARGET_OUT_VENDOR)/lib64/
+LOCAL_MULTILIB := 64
+# Bypass prebuilt ELF check because libLLVM is not a module (it is copied by
+# PRODUCT_COPY_FILES instead).
+LOCAL_CHECK_ELF_FILES := false
+include $(BUILD_PREBUILT)
+
+include $(CLEAR_VARS)
+LOCAL_MODULE := libRSDriverArm.so
+LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
+LOCAL_LICENSE_CONDITIONS := notice
+LOCAL_MODULE_CLASS := SHARED_LIBRARIES
+LOCAL_STRIP_MODULE := false
+LOCAL_SRC_FILES_arm := lib/$(LOCAL_MODULE)
+LOCAL_SRC_FILES_arm64 := lib64/$(LOCAL_MODULE)
+LOCAL_MODULE_PATH_32 := $(TARGET_OUT_VENDOR)/lib/
+LOCAL_MODULE_PATH_64 := $(TARGET_OUT_VENDOR)/lib64/
+LOCAL_MULTILIB := both
+LOCAL_SHARED_LIBRARIES := libRS_internal libRSCpuRef liblog libnativewindow libbcinfo libdl libc++ libc libm
+include $(BUILD_PREBUILT)
+
+include $(CLEAR_VARS)
+LOCAL_MODULE := libmalicore.bc
+LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
+LOCAL_LICENSE_CONDITIONS := notice
+LOCAL_MODULE_CLASS := SHARED_LIBRARIES
+LOCAL_STRIP_MODULE := false
+LOCAL_SRC_FILES_arm := lib/$(LOCAL_MODULE)
+LOCAL_SRC_FILES_arm64 := lib64/$(LOCAL_MODULE)
+LOCAL_MODULE_PATH_32 := $(TARGET_OUT_VENDOR)/lib/
+LOCAL_MODULE_PATH_64 := $(TARGET_OUT_VENDOR)/lib64/
+LOCAL_MULTILIB := both
+include $(BUILD_PREBUILT)
+
+include $(CLEAR_VARS)
+LOCAL_MODULE := vulkan.hikey960.so
+LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
+LOCAL_LICENSE_CONDITIONS := notice
+LOCAL_MODULE_CLASS := SHARED_LIBRARIES
+LOCAL_STRIP_MODULE := false
+LOCAL_SRC_FILES_arm := lib/hw/$(LOCAL_MODULE)
+LOCAL_SRC_FILES_arm64 := lib64/hw/$(LOCAL_MODULE)
+LOCAL_MODULE_PATH_32 := $(TARGET_OUT_VENDOR)/lib/hw
+LOCAL_MODULE_PATH_64 := $(TARGET_OUT_VENDOR)/lib64/hw
+LOCAL_MULTILIB := both
+LOCAL_SHARED_LIBRARIES := android.hardware.graphics.common@1.0 libz libnativewindow libc++ liblog libm libc libdl
+# Bypass prebuilt ELF check because the DT_SONAME "libGLES_mali.so" is
+# different from LOCAL_MODULE "vulkan.hikey960.so".
+LOCAL_CHECK_ELF_FILES := false
+include $(BUILD_PREBUILT)
+
+endif
diff --git a/mali/bifrost/END_USER_LICENCE_AGREEMENT.txt b/mali/bifrost/END_USER_LICENCE_AGREEMENT.txt
new file mode 100644
index 0000000..34da5f8
--- /dev/null
+++ b/mali/bifrost/END_USER_LICENCE_AGREEMENT.txt
@@ -0,0 +1,194 @@
+LES-PRE-20769

+SP-Version: 1.0

+25 November 2015

+

+END USER LICENCE AGREEMENT FOR THE MALI USERSPACE DRIVER ("Mali DRIVER")

+

+THIS END USER LICENCE AGREEMENT ("LICENCE") IS A LEGAL AGREEMENT

+BETWEEN YOU (EITHER A SINGLE INDIVIDUAL, OR SINGLE LEGAL ENTITY) AND

+ARM LIMITED ("ARM") FOR THE USE OF THE SOFTWARE ACCOMPANYING THIS

+LICENCE. ARM IS ONLY WILLING TO LICENSE THE SOFTWARE TO YOU ON

+CONDITION THAT YOU ACCEPT ALL OF THE TERMS IN THIS LICENCE. BY

+INSTALLING OR OTHERWISE USING OR COPYING THE SOFTWARE YOU INDICATE

+THAT YOU AGREE TO BE BOUND BY ALL OF THE TERMS OF THIS LICENCE. IF YOU

+DO NOT AGREE TO THE TERMS OF THIS LICENCE, ARM IS UNWILLING TO LICENSE

+THE SOFTWARE TO YOU AND YOU MAY NOT INSTALL, USE OR COPY THE SOFTWARE,

+AND YOU SHOULD PROMPTLY RETURN THE SOFTWARE TO YOUR SUPPLIER.

+

+"Applications" means applications for use solely in conjunction with

+Mali-based products manufactured under licence from ARM.

+

+"Output" means data resulting from your use of the Software and all

+direct and indirect derivatives thereof.

+

+"Software" means any software, firmware and data accompanying this

+Licence, any printed, electronic or online documentation supplied with

+it under the terms of this Licence for the Mali Driver.

+

+1. LICENCE GRANTS TO YOU.

+

+1.1 ARM hereby grants to you, subject to the terms and conditions of

+this Licence, a non-exclusive, non-transferable, revocable, worldwide

+licence to:

+

+(i)	use and copy the Software or certain components or optional

+	functionality in the Software, as applicable, solely for the

+	purposes of running, designing or developing Applications; and

+

+(ii)	subject to Clause 1.2, distribute the whole of the Software;

+	and/or (b) the whole or any part of the Software together

+	with, or as incorporated into, Applications; and

+

+1.2 If you choose to redistribute the whole or any part of the

+Software pursuant to the licences granted in Clause 1.1(ii), you

+agree: (i) not to use ARM's or any of its licensors names, logos or

+trademarks to market Applications; (ii) to retain any and all

+copyright notices and other notices (whether ARM's or its licensor's)

+which are included with the Software; and (iii) include a copy of this

+Licence with such redistribution.

+

+2. RESTRICTIONS ON USE OF THE SOFTWARE.

+

+BENCHMARKING: This Licence does not prevent you from using the

+Software for benchmarking purposes. However, you shall ensure that any

+and all benchmarking data relating to the Software, and any other

+results of your use or testing of the Software which are indicative of

+its performance, efficacy, reliability or quality, shall not be used

+to disparage ARM, its products or services, or in a manner that, in

+ARM's reasonable judgment, may diminish or otherwise damage the

+reputation of ARM.

+

+COPYRIGHT AND RESERVATION OF RIGHTS: The Software is owned by ARM or

+its licensors and is protected by copyright and other intellectual

+property laws and international treaties. The Software is licensed not

+sold. You acquire no rights to the Software other than as expressly

+provided by this Licence. You shall not remove from the Software any

+copyright notice or other notice and shall ensure that any such notice

+is reproduced in any copies of the whole or any part of the Software

+made by you or other permitted users.

+

+REVERSE ENGINEERING: Except to the extent that such activity is

+permitted by applicable law you shall not reverse engineer, decompile

+or disassemble any of the Software. If the Software was provided to

+you in Europe you shall not reverse engineer, decompile or disassemble

+any of the Software for the purposes of error correction.

+

+RESTRICTED USE: You agree that you shall not use the Software or the

+Output other than pursuant to and in accordance with the exercise of

+any of the licences granted under this Licence. Without limiting the

+generality of the foregoing, you shall not use the Software or any

+Output: (a) for determining if any features, functions or processes

+provided by the Software are covered by any patents or patent

+applications owned by you or a third party; or (b) for developing

+technology, applications or products which avoid any of ARM's

+intellectual property in the Software licensed hereunder; or (c) as a

+reference for modifying existing patents or patent applications or

+creating any continuation, continuation in part, or extension of

+existing patents or patent applications.

+

+3. SUPPORT.

+

+ARM is not under an obligation to provide support, but it may do so at

+its own discretion, and if it does, it will only be in respect of the

+Software as delivered.

+

+4. NO WARRANTIES.

+

+YOU AGREE THAT THE SOFTWARE IS LICENSED "AS IS", AND THAT ARM

+EXPRESSLY DISCLAIMS ALL REPRESENTATIONS, WARRANTIES, CONDITIONS OR

+OTHER TERMS, EXPRESS OR IMPLIED OR STATUTORY, INCLUDING WITHOUT

+LIMITATION THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, SATISFACTORY

+QUALITY, AND FITNESS FOR A PARTICULAR PURPOSE.

+

+YOU EXPRESSLY ASSUME ALL LIABILITIES AND RISKS, FOR USE OR OPERATION

+OF APPLICATIONS, INCLUDING WITHOUT LIMITATION, APPLICATIONS DESIGNED

+OR INTENDED FOR MISSION CRITICAL APPLICATIONS, SUCH AS PACEMAKERS,

+WEAPONRY, AIRCRAFT NAVIGATION, FACTORY CONTROL SYSTEMS, ETC. SHOULD

+THE SOFTWARE PROVE DEFECTIVE, YOU ASSUME THE ENTIRE COST OF ALL

+NECESSARY SERVICING, REPAIR OR CORRECTION.

+

+5. LIMITATION OF LIABILITY.

+

+TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT SHALL

+ARM BE LIABLE FOR ANY INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL

+DAMAGES (INCLUDING LOSS OF PROFITS) ARISING OUT OF THE USE OR

+INABILITY TO USE THE SOFTWARE WHETHER BASED ON A CLAIM UNDER CONTRACT,

+TORT OR OTHER LEGAL THEORY, EVEN IF ARM WAS ADVISED OF THE POSSIBILITY

+OF SUCH DAMAGES.

+

+ARM does not seek to limit or exclude liability for death or personal

+injury arising from ARM's negligence or ARM's fraud and because some

+jurisdictions do not permit the exclusion or limitation of liability

+for consequential or incidental damages the above limitation relating

+to liability for consequential damages may not apply to you.

+

+NOTWITHSTANDING ANYTHING TO THE CONTRARY CONTAINED IN THIS LICENCE,

+THE MAXIMUM LIABILITY OF ARM TO YOU IN AGGREGATE FOR ALL CLAIMS MADE

+AGAINST ARM IN CONTRACT TORT OR OTHERWISE UNDER OR IN CONNECTION WITH

+THE SUBJECT MATTER OF THIS LICENCE SHALL NOT EXCEED THE GREATER OF:

+(I) THE TOTAL OF SUMS PAID BY YOU TO ARM (IF ANY) FOR THIS LICENCE;

+AND (II) $10.00 USD. THE EXISTENCE OF MORE THAN ONE CLAIM WILL NOT

+ENLARGE OR EXTEND THE LIMIT.

+

+6. U.S. GOVERNMENT END USERS.

+

+US Government Restrictions: Use, duplication, reproduction, release,

+modification, disclosure or transfer of the Software is restricted in

+accordance with the terms of this Licence.

+

+7. TERM AND TERMINATION.

+

+This Licence shall remain in force until terminated by you or by ARM.

+Without prejudice to any of its other rights if you are in breach of

+any of the terms and conditions of this Licence then ARM may terminate

+this Licence immediately upon giving written notice to you or on

+thirty (30) days written notice without cause. You may terminate this

+Licence at any time. Upon termination of this Licence by you or by ARM

+, you shall stop using the Software and destroy all copies of the

+Software in your possession, together with all documentation and

+related materials. The provisions of clauses 2, 3, 4, 5, 6, 7, and 8

+shall survive termination of this Licence.

+

+8. GENERAL.

+

+This Licence is governed by English Law. Except where ARM agrees

+otherwise in: (i) a written contract signed by you and ARM; or (ii) a

+written contract provided by ARM and accepted by you, this is the only

+agreement between you and ARM relating to the Software and it may only

+be modified by written agreement between you and ARM. Except as

+expressly agreed in writing, this Licence may not be modified by

+purchase orders, advertising or other representation by any person. If

+any clause or sentence in this Licence is held by a court of law to be

+illegal or unenforceable the remaining provisions of this Licence

+shall not be affected thereby. The failure by ARM to enforce any of

+the provisions of this Licence, unless waived in writing, shall not

+constitute a waiver of ARM's rights to enforce such provision or any

+other provision of this Licence in the future.

+

+At ARM's request, you agree to check your computers for installations

+of the Software and any other information requested by ARM relating to

+Software installation and to provide this information to ARM. You

+agree that auditors nominated by ARM may also perform such checking

+and reporting on behalf of ARM by prior appointment during your normal

+business hours on seven (7) days' notice. ARM shall bear the auditors'

+costs for that audit unless it reveals unlicensed usage in which case

+you shall promptly reimburse ARM for all reasonable costs and

+expenses, including professional fees, relating to such audit. Any

+information which is disclosed to ARM or such auditors during checking

+or audit shall be treated as your confidential information and shall

+only be used by ARM for licence management, compliance and enforcement

+purposes.

+

+The Software provided under this Agreement is subject to U.K.,

+European Union, and U.S. export control laws and regulations,

+including the U.S. Export Administration Act and its associated

+regulations (hereafter collectively referred to as "Export

+Regulations").  LICENSEE agrees to comply fully with all such Export

+Regulations and LICENSEE agrees that it shall not, either directly or

+indirectly, export in breach of the Export Regulations, any Software

+received under this Agreement, nor any direct products thereof; (i) to

+any country, company or person subject to export restrictions or

+sanctions under the Export Regulations; or (ii) for any prohibited end

+use, which at the time of export requires an export license or other

+governmental approval, without first obtaining such license or

+approval.

diff --git a/mali/bifrost/bin/bcc b/mali/bifrost/bin/bcc
new file mode 100755
index 0000000..c828bca
--- /dev/null
+++ b/mali/bifrost/bin/bcc
Binary files differ
diff --git a/mali/bifrost/lib/egl/libGLES_mali.so b/mali/bifrost/lib/egl/libGLES_mali.so
new file mode 100755
index 0000000..092d472
--- /dev/null
+++ b/mali/bifrost/lib/egl/libGLES_mali.so
Binary files differ
diff --git a/mali/bifrost/lib/hw/vulkan.hikey960.so b/mali/bifrost/lib/hw/vulkan.hikey960.so
new file mode 120000
index 0000000..57c186c
--- /dev/null
+++ b/mali/bifrost/lib/hw/vulkan.hikey960.so
@@ -0,0 +1 @@
+../egl/libGLES_mali.so
\ No newline at end of file
diff --git a/mali/bifrost/lib/libRSDriverArm.so b/mali/bifrost/lib/libRSDriverArm.so
new file mode 100755
index 0000000..721e324
--- /dev/null
+++ b/mali/bifrost/lib/libRSDriverArm.so
Binary files differ
diff --git a/mali/bifrost/lib/libclcore.bc b/mali/bifrost/lib/libclcore.bc
new file mode 100644
index 0000000..ee0429a
--- /dev/null
+++ b/mali/bifrost/lib/libclcore.bc
Binary files differ
diff --git a/mali/bifrost/lib/libclcore_neon.bc b/mali/bifrost/lib/libclcore_neon.bc
new file mode 100644
index 0000000..ce3da69
--- /dev/null
+++ b/mali/bifrost/lib/libclcore_neon.bc
Binary files differ
diff --git a/mali/bifrost/lib/libmalicore.bc b/mali/bifrost/lib/libmalicore.bc
new file mode 100644
index 0000000..5901017
--- /dev/null
+++ b/mali/bifrost/lib/libmalicore.bc
Binary files differ
diff --git a/mali/bifrost/lib64/egl/libGLES_mali.so b/mali/bifrost/lib64/egl/libGLES_mali.so
new file mode 100755
index 0000000..19c41f1
--- /dev/null
+++ b/mali/bifrost/lib64/egl/libGLES_mali.so
Binary files differ
diff --git a/mali/bifrost/lib64/hw/vulkan.hikey960.so b/mali/bifrost/lib64/hw/vulkan.hikey960.so
new file mode 120000
index 0000000..57c186c
--- /dev/null
+++ b/mali/bifrost/lib64/hw/vulkan.hikey960.so
@@ -0,0 +1 @@
+../egl/libGLES_mali.so
\ No newline at end of file
diff --git a/mali/bifrost/lib64/libLLVM.so b/mali/bifrost/lib64/libLLVM.so
new file mode 100755
index 0000000..894b1d1
--- /dev/null
+++ b/mali/bifrost/lib64/libLLVM.so
Binary files differ
diff --git a/mali/bifrost/lib64/libRSDriverArm.so b/mali/bifrost/lib64/libRSDriverArm.so
new file mode 100755
index 0000000..0a10776
--- /dev/null
+++ b/mali/bifrost/lib64/libRSDriverArm.so
Binary files differ
diff --git a/mali/bifrost/lib64/libbcc.so b/mali/bifrost/lib64/libbcc.so
new file mode 100755
index 0000000..b95b141
--- /dev/null
+++ b/mali/bifrost/lib64/libbcc.so
Binary files differ
diff --git a/mali/bifrost/lib64/libbccArm.so b/mali/bifrost/lib64/libbccArm.so
new file mode 100755
index 0000000..7fe1dfd
--- /dev/null
+++ b/mali/bifrost/lib64/libbccArm.so
Binary files differ
diff --git a/mali/bifrost/lib64/libclcore.bc b/mali/bifrost/lib64/libclcore.bc
new file mode 100644
index 0000000..ca3d10b
--- /dev/null
+++ b/mali/bifrost/lib64/libclcore.bc
Binary files differ
diff --git a/mali/bifrost/lib64/libmalicore.bc b/mali/bifrost/lib64/libmalicore.bc
new file mode 100644
index 0000000..f8c6d71
--- /dev/null
+++ b/mali/bifrost/lib64/libmalicore.bc
Binary files differ
diff --git a/mali/utgard/Android.mk b/mali/utgard/Android.mk
new file mode 100644
index 0000000..c7afa7b
--- /dev/null
+++ b/mali/utgard/Android.mk
@@ -0,0 +1,30 @@
+ifneq ($(filter hikey hikey64 hikey32, $(TARGET_DEVICE)),)
+LOCAL_PATH := $(call my-dir)
+
+include $(CLEAR_VARS)
+LOCAL_MODULE := END_USER_LICENCE_AGREEMENT.txt
+LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
+LOCAL_LICENSE_CONDITIONS := notice
+LOCAL_MODULE_CLASS := SHARED_LIBRARIES
+LOCAL_STRIP_MODULE := false
+LOCAL_SRC_FILES_arm := $(LOCAL_MODULE)
+LOCAL_MODULE_PATH_32 := $(TARGET_OUT_VENDOR)
+LOCAL_MULTILIB := 32
+LOCAL_SHARED_LIBRARIES := libc++ libc libdl liblog libm
+include $(BUILD_PREBUILT)
+
+include $(CLEAR_VARS)
+LOCAL_MODULE := libGLES_mali.so
+LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
+LOCAL_LICENSE_CONDITIONS := notice
+LOCAL_MODULE_CLASS := SHARED_LIBRARIES
+LOCAL_STRIP_MODULE := false
+LOCAL_SRC_FILES_arm := lib/egl/$(LOCAL_MODULE)
+LOCAL_SRC_FILES_arm64 := lib64/egl/$(LOCAL_MODULE)
+LOCAL_MODULE_PATH_32 := $(TARGET_OUT_VENDOR)/lib/egl/
+LOCAL_MODULE_PATH_64 := $(TARGET_OUT_VENDOR)/lib64/egl/
+LOCAL_MULTILIB := both
+LOCAL_SHARED_LIBRARIES := libc++ libc libdl liblog libm
+include $(BUILD_PREBUILT)
+
+endif
diff --git a/mali/utgard/END_USER_LICENCE_AGREEMENT.txt b/mali/utgard/END_USER_LICENCE_AGREEMENT.txt
new file mode 100644
index 0000000..34da5f8
--- /dev/null
+++ b/mali/utgard/END_USER_LICENCE_AGREEMENT.txt
@@ -0,0 +1,194 @@
+LES-PRE-20769

+SP-Version: 1.0

+25 November 2015

+

+END USER LICENCE AGREEMENT FOR THE MALI USERSPACE DRIVER ("Mali DRIVER")

+

+THIS END USER LICENCE AGREEMENT ("LICENCE") IS A LEGAL AGREEMENT

+BETWEEN YOU (EITHER A SINGLE INDIVIDUAL, OR SINGLE LEGAL ENTITY) AND

+ARM LIMITED ("ARM") FOR THE USE OF THE SOFTWARE ACCOMPANYING THIS

+LICENCE. ARM IS ONLY WILLING TO LICENSE THE SOFTWARE TO YOU ON

+CONDITION THAT YOU ACCEPT ALL OF THE TERMS IN THIS LICENCE. BY

+INSTALLING OR OTHERWISE USING OR COPYING THE SOFTWARE YOU INDICATE

+THAT YOU AGREE TO BE BOUND BY ALL OF THE TERMS OF THIS LICENCE. IF YOU

+DO NOT AGREE TO THE TERMS OF THIS LICENCE, ARM IS UNWILLING TO LICENSE

+THE SOFTWARE TO YOU AND YOU MAY NOT INSTALL, USE OR COPY THE SOFTWARE,

+AND YOU SHOULD PROMPTLY RETURN THE SOFTWARE TO YOUR SUPPLIER.

+

+"Applications" means applications for use solely in conjunction with

+Mali-based products manufactured under licence from ARM.

+

+"Output" means data resulting from your use of the Software and all

+direct and indirect derivatives thereof.

+

+"Software" means any software, firmware and data accompanying this

+Licence, any printed, electronic or online documentation supplied with

+it under the terms of this Licence for the Mali Driver.

+

+1. LICENCE GRANTS TO YOU.

+

+1.1 ARM hereby grants to you, subject to the terms and conditions of

+this Licence, a non-exclusive, non-transferable, revocable, worldwide

+licence to:

+

+(i)	use and copy the Software or certain components or optional

+	functionality in the Software, as applicable, solely for the

+	purposes of running, designing or developing Applications; and

+

+(ii)	subject to Clause 1.2, distribute the whole of the Software;

+	and/or (b) the whole or any part of the Software together

+	with, or as incorporated into, Applications; and

+

+1.2 If you choose to redistribute the whole or any part of the

+Software pursuant to the licences granted in Clause 1.1(ii), you

+agree: (i) not to use ARM's or any of its licensors names, logos or

+trademarks to market Applications; (ii) to retain any and all

+copyright notices and other notices (whether ARM's or its licensor's)

+which are included with the Software; and (iii) include a copy of this

+Licence with such redistribution.

+

+2. RESTRICTIONS ON USE OF THE SOFTWARE.

+

+BENCHMARKING: This Licence does not prevent you from using the

+Software for benchmarking purposes. However, you shall ensure that any

+and all benchmarking data relating to the Software, and any other

+results of your use or testing of the Software which are indicative of

+its performance, efficacy, reliability or quality, shall not be used

+to disparage ARM, its products or services, or in a manner that, in

+ARM's reasonable judgment, may diminish or otherwise damage the

+reputation of ARM.

+

+COPYRIGHT AND RESERVATION OF RIGHTS: The Software is owned by ARM or

+its licensors and is protected by copyright and other intellectual

+property laws and international treaties. The Software is licensed not

+sold. You acquire no rights to the Software other than as expressly

+provided by this Licence. You shall not remove from the Software any

+copyright notice or other notice and shall ensure that any such notice

+is reproduced in any copies of the whole or any part of the Software

+made by you or other permitted users.

+

+REVERSE ENGINEERING: Except to the extent that such activity is

+permitted by applicable law you shall not reverse engineer, decompile

+or disassemble any of the Software. If the Software was provided to

+you in Europe you shall not reverse engineer, decompile or disassemble

+any of the Software for the purposes of error correction.

+

+RESTRICTED USE: You agree that you shall not use the Software or the

+Output other than pursuant to and in accordance with the exercise of

+any of the licences granted under this Licence. Without limiting the

+generality of the foregoing, you shall not use the Software or any

+Output: (a) for determining if any features, functions or processes

+provided by the Software are covered by any patents or patent

+applications owned by you or a third party; or (b) for developing

+technology, applications or products which avoid any of ARM's

+intellectual property in the Software licensed hereunder; or (c) as a

+reference for modifying existing patents or patent applications or

+creating any continuation, continuation in part, or extension of

+existing patents or patent applications.

+

+3. SUPPORT.

+

+ARM is not under an obligation to provide support, but it may do so at

+its own discretion, and if it does, it will only be in respect of the

+Software as delivered.

+

+4. NO WARRANTIES.

+

+YOU AGREE THAT THE SOFTWARE IS LICENSED "AS IS", AND THAT ARM

+EXPRESSLY DISCLAIMS ALL REPRESENTATIONS, WARRANTIES, CONDITIONS OR

+OTHER TERMS, EXPRESS OR IMPLIED OR STATUTORY, INCLUDING WITHOUT

+LIMITATION THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, SATISFACTORY

+QUALITY, AND FITNESS FOR A PARTICULAR PURPOSE.

+

+YOU EXPRESSLY ASSUME ALL LIABILITIES AND RISKS, FOR USE OR OPERATION

+OF APPLICATIONS, INCLUDING WITHOUT LIMITATION, APPLICATIONS DESIGNED

+OR INTENDED FOR MISSION CRITICAL APPLICATIONS, SUCH AS PACEMAKERS,

+WEAPONRY, AIRCRAFT NAVIGATION, FACTORY CONTROL SYSTEMS, ETC. SHOULD

+THE SOFTWARE PROVE DEFECTIVE, YOU ASSUME THE ENTIRE COST OF ALL

+NECESSARY SERVICING, REPAIR OR CORRECTION.

+

+5. LIMITATION OF LIABILITY.

+

+TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT SHALL

+ARM BE LIABLE FOR ANY INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL

+DAMAGES (INCLUDING LOSS OF PROFITS) ARISING OUT OF THE USE OR

+INABILITY TO USE THE SOFTWARE WHETHER BASED ON A CLAIM UNDER CONTRACT,

+TORT OR OTHER LEGAL THEORY, EVEN IF ARM WAS ADVISED OF THE POSSIBILITY

+OF SUCH DAMAGES.

+

+ARM does not seek to limit or exclude liability for death or personal

+injury arising from ARM's negligence or ARM's fraud and because some

+jurisdictions do not permit the exclusion or limitation of liability

+for consequential or incidental damages the above limitation relating

+to liability for consequential damages may not apply to you.

+

+NOTWITHSTANDING ANYTHING TO THE CONTRARY CONTAINED IN THIS LICENCE,

+THE MAXIMUM LIABILITY OF ARM TO YOU IN AGGREGATE FOR ALL CLAIMS MADE

+AGAINST ARM IN CONTRACT TORT OR OTHERWISE UNDER OR IN CONNECTION WITH

+THE SUBJECT MATTER OF THIS LICENCE SHALL NOT EXCEED THE GREATER OF:

+(I) THE TOTAL OF SUMS PAID BY YOU TO ARM (IF ANY) FOR THIS LICENCE;

+AND (II) $10.00 USD. THE EXISTENCE OF MORE THAN ONE CLAIM WILL NOT

+ENLARGE OR EXTEND THE LIMIT.

+

+6. U.S. GOVERNMENT END USERS.

+

+US Government Restrictions: Use, duplication, reproduction, release,

+modification, disclosure or transfer of the Software is restricted in

+accordance with the terms of this Licence.

+

+7. TERM AND TERMINATION.

+

+This Licence shall remain in force until terminated by you or by ARM.

+Without prejudice to any of its other rights if you are in breach of

+any of the terms and conditions of this Licence then ARM may terminate

+this Licence immediately upon giving written notice to you or on

+thirty (30) days written notice without cause. You may terminate this

+Licence at any time. Upon termination of this Licence by you or by ARM

+, you shall stop using the Software and destroy all copies of the

+Software in your possession, together with all documentation and

+related materials. The provisions of clauses 2, 3, 4, 5, 6, 7, and 8

+shall survive termination of this Licence.

+

+8. GENERAL.

+

+This Licence is governed by English Law. Except where ARM agrees

+otherwise in: (i) a written contract signed by you and ARM; or (ii) a

+written contract provided by ARM and accepted by you, this is the only

+agreement between you and ARM relating to the Software and it may only

+be modified by written agreement between you and ARM. Except as

+expressly agreed in writing, this Licence may not be modified by

+purchase orders, advertising or other representation by any person. If

+any clause or sentence in this Licence is held by a court of law to be

+illegal or unenforceable the remaining provisions of this Licence

+shall not be affected thereby. The failure by ARM to enforce any of

+the provisions of this Licence, unless waived in writing, shall not

+constitute a waiver of ARM's rights to enforce such provision or any

+other provision of this Licence in the future.

+

+At ARM's request, you agree to check your computers for installations

+of the Software and any other information requested by ARM relating to

+Software installation and to provide this information to ARM. You

+agree that auditors nominated by ARM may also perform such checking

+and reporting on behalf of ARM by prior appointment during your normal

+business hours on seven (7) days' notice. ARM shall bear the auditors'

+costs for that audit unless it reveals unlicensed usage in which case

+you shall promptly reimburse ARM for all reasonable costs and

+expenses, including professional fees, relating to such audit. Any

+information which is disclosed to ARM or such auditors during checking

+or audit shall be treated as your confidential information and shall

+only be used by ARM for licence management, compliance and enforcement

+purposes.

+

+The Software provided under this Agreement is subject to U.K.,

+European Union, and U.S. export control laws and regulations,

+including the U.S. Export Administration Act and its associated

+regulations (hereafter collectively referred to as "Export

+Regulations").  LICENSEE agrees to comply fully with all such Export

+Regulations and LICENSEE agrees that it shall not, either directly or

+indirectly, export in breach of the Export Regulations, any Software

+received under this Agreement, nor any direct products thereof; (i) to

+any country, company or person subject to export restrictions or

+sanctions under the Export Regulations; or (ii) for any prohibited end

+use, which at the time of export requires an export license or other

+governmental approval, without first obtaining such license or

+approval.

diff --git a/mali/utgard/lib/egl/libGLES_mali.so b/mali/utgard/lib/egl/libGLES_mali.so
new file mode 100755
index 0000000..f86da7e
--- /dev/null
+++ b/mali/utgard/lib/egl/libGLES_mali.so
Binary files differ
diff --git a/mali/utgard/lib64/egl/libGLES_mali.so b/mali/utgard/lib64/egl/libGLES_mali.so
new file mode 100755
index 0000000..5c0af47
--- /dev/null
+++ b/mali/utgard/lib64/egl/libGLES_mali.so
Binary files differ
diff --git a/vendor-package-ver.mk b/vendor-package-ver.mk
deleted file mode 100644
index be369eb..0000000
--- a/vendor-package-ver.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-HELPER_SCRIPT=./device/linaro/hikey/vendor-package-ver.sh
-EXPECTED_LINARO_VENDOR_VERSION := $(shell $(HELPER_SCRIPT) ver)
-VND_PKG_URL := $(shell $(HELPER_SCRIPT) url)
-LINARO_VENDOR_PATH := vendor/linaro/
diff --git a/vendor-package-ver.sh b/vendor-package-ver.sh
deleted file mode 100755
index 12f4a6f..0000000
--- a/vendor-package-ver.sh
+++ /dev/null
@@ -1,13 +0,0 @@
-#!/bin/bash
-
-export EXPECTED_LINARO_VENDOR_VERSION=20220210
-export EXPECTED_LINARO_VENDOR_SHA=75efc8471f299f64716140712c0785b8e8aeaf5aa7e389a6f12f78ad4962420740da32f4535d795006e78c5f0b77a1cee8c168192a87f668103c00d87d480e6d
-export VND_PKG_URL=https://releases.linaro.org/android/aosp-linaro-vendor-package/extract-linaro_devices-20220210.tgz
-
-if [ "$1" = "url" ]; then
- echo $VND_PKG_URL
-elif [ "$1" = "ver" ]; then
- echo $EXPECTED_LINARO_VENDOR_VERSION
-elif [ "$1" = "sha" ]; then
- echo $EXPECTED_LINARO_VENDOR_SHA
-fi