diff options
author | Steve Muckle <smuckle@google.com> | 2022-02-16 05:56:08 +0000 |
---|---|---|
committer | Steve Muckle <smuckle@google.com> | 2022-02-16 05:58:48 +0000 |
commit | e5d9bba726b715b58bbce26e36faa00278c0377e (patch) | |
tree | 2dbcd5b5596907aab0c475f79004293ca442c476 | |
parent | 0a9c087775aff4ba10d91db4b77e20e02f477ff2 (diff) | |
download | hikey-e5d9bba726b715b58bbce26e36faa00278c0377e.tar.gz |
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
51 files changed, 1046 insertions, 121 deletions
diff --git a/bt-wifi-firmware-util/NOTICE b/bt-wifi-firmware-util/NOTICE new file mode 100644 index 00000000..e5bdc11d --- /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 Binary files differnew file mode 100644 index 00000000..ff56d1c5 --- /dev/null +++ b/bt-wifi-firmware-util/TIInit_11.8.32-pcm-960.bts diff --git a/bt-wifi-firmware-util/TIInit_11.8.32.bts b/bt-wifi-firmware-util/TIInit_11.8.32.bts Binary files differnew file mode 100755 index 00000000..824ca0f2 --- /dev/null +++ b/bt-wifi-firmware-util/TIInit_11.8.32.bts diff --git a/bt-wifi-firmware-util/wl18xx-conf-wl1837mod.bin b/bt-wifi-firmware-util/wl18xx-conf-wl1837mod.bin Binary files differnew file mode 100644 index 00000000..5dd913cc --- /dev/null +++ b/bt-wifi-firmware-util/wl18xx-conf-wl1837mod.bin diff --git a/bt-wifi-firmware-util/wl18xx-conf.bin b/bt-wifi-firmware-util/wl18xx-conf.bin Binary files differnew file mode 100644 index 00000000..2bd0f4df --- /dev/null +++ b/bt-wifi-firmware-util/wl18xx-conf.bin diff --git a/bt-wifi-firmware-util/wl18xx-fw-4.bin b/bt-wifi-firmware-util/wl18xx-fw-4.bin Binary files differnew file mode 100755 index 00000000..71c160ac --- /dev/null +++ b/bt-wifi-firmware-util/wl18xx-fw-4.bin diff --git a/build/tasks/dtimage.mk b/build/tasks/dtimage.mk index e125d170..4d6a74d4 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 90695957..6d047521 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 cbadbdeb..00000000 --- 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 @@ -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 @@ ifneq ($(HIKEY_MODS),) 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 cc94c401..aa202b37 100644 --- a/hikey/device-hikey.mk +++ b/hikey/device-hikey.mk @@ -24,6 +24,15 @@ PRODUCT_COPY_FILES += $(TARGET_PREBUILT_KERNEL):kernel \ 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 += sensors.hikey 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 06ac84b5..b300bfa8 100644 --- a/hikey960.mk +++ b/hikey960.mk @@ -11,14 +11,11 @@ ifndef HIKEY_USES_GKI 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 @@ ifneq ($(HIKEY_USES_GKI),) $(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 dc1c52a6..d34dc311 100644 --- a/hikey960/device-hikey960.mk +++ b/hikey960/device-hikey960.mk @@ -42,6 +42,15 @@ PRODUCT_BUILD_SUPER_PARTITION := true 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 += audio.primary.hikey960 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 Binary files differnew file mode 100644 index 00000000..dcf61e25 --- /dev/null +++ b/installer/hikey960/fip.bin diff --git a/installer/hikey960/flash-all.sh b/installer/hikey960/flash-all.sh index c894558c..70bb4328 100755 --- a/installer/hikey960/flash-all.sh +++ b/installer/hikey960/flash-all.sh @@ -5,7 +5,7 @@ ECHO_PREFIX="=== " # 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 @@ fi 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 check_partition_table_version () { } 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 flashing_atf_uefi () { } 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 @@ else fi fastboot reboot -popd diff --git a/installer/hikey960/hisi-bl31.bin b/installer/hikey960/hisi-bl31.bin Binary files differnew file mode 100644 index 00000000..abebea6d --- /dev/null +++ b/installer/hikey960/hisi-bl31.bin diff --git a/installer/hikey960/hisi-fastboot.img b/installer/hikey960/hisi-fastboot.img Binary files differnew file mode 100644 index 00000000..72cbf90f --- /dev/null +++ b/installer/hikey960/hisi-fastboot.img diff --git a/installer/hikey960/hisi-lpm3.img b/installer/hikey960/hisi-lpm3.img Binary files differnew file mode 100644 index 00000000..bd0243bf --- /dev/null +++ b/installer/hikey960/hisi-lpm3.img diff --git a/installer/hikey960/hisi-nvme.img b/installer/hikey960/hisi-nvme.img Binary files differnew file mode 100644 index 00000000..ca5bc7c1 --- /dev/null +++ b/installer/hikey960/hisi-nvme.img diff --git a/installer/hikey960/hisi-ptable.img b/installer/hikey960/hisi-ptable.img Binary files differnew file mode 100644 index 00000000..269aa63d --- /dev/null +++ b/installer/hikey960/hisi-ptable.img diff --git a/installer/hikey960/hisi-sec_xloader.img b/installer/hikey960/hisi-sec_xloader.img Binary files differnew file mode 100644 index 00000000..47c353b8 --- /dev/null +++ b/installer/hikey960/hisi-sec_xloader.img diff --git a/installer/hikey960/l-loader.bin b/installer/hikey960/l-loader.bin Binary files differnew file mode 100644 index 00000000..e0c37260 --- /dev/null +++ b/installer/hikey960/l-loader.bin diff --git a/installer/hikey960/legacy-flash-all.sh b/installer/hikey960/legacy-flash-all.sh new file mode 100755 index 00000000..3f8bf9b4 --- /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 00000000..65722043 --- /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 Binary files differnew file mode 100644 index 00000000..e7b9b037 --- /dev/null +++ b/installer/hikey960/prm_ptable.img diff --git a/installer/hikey960/uefi-flash-all.sh b/installer/hikey960/uefi-flash-all.sh new file mode 100755 index 00000000..347b5b28 --- /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 00000000..40604835 --- /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 00000000..d6456956 --- /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 00000000..0df1f5fc --- /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 00000000..34da5f85 --- /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 Binary files differnew file mode 100755 index 00000000..c828bcaf --- /dev/null +++ b/mali/bifrost/bin/bcc diff --git a/mali/bifrost/lib/egl/libGLES_mali.so b/mali/bifrost/lib/egl/libGLES_mali.so Binary files differnew file mode 100755 index 00000000..092d472f --- /dev/null +++ b/mali/bifrost/lib/egl/libGLES_mali.so diff --git a/mali/bifrost/lib/hw/vulkan.hikey960.so b/mali/bifrost/lib/hw/vulkan.hikey960.so new file mode 120000 index 00000000..57c186c5 --- /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 Binary files differnew file mode 100755 index 00000000..721e324b --- /dev/null +++ b/mali/bifrost/lib/libRSDriverArm.so diff --git a/mali/bifrost/lib/libclcore.bc b/mali/bifrost/lib/libclcore.bc Binary files differnew file mode 100644 index 00000000..ee0429ad --- /dev/null +++ b/mali/bifrost/lib/libclcore.bc diff --git a/mali/bifrost/lib/libclcore_neon.bc b/mali/bifrost/lib/libclcore_neon.bc Binary files differnew file mode 100644 index 00000000..ce3da693 --- /dev/null +++ b/mali/bifrost/lib/libclcore_neon.bc diff --git a/mali/bifrost/lib/libmalicore.bc b/mali/bifrost/lib/libmalicore.bc Binary files differnew file mode 100644 index 00000000..5901017e --- /dev/null +++ b/mali/bifrost/lib/libmalicore.bc diff --git a/mali/bifrost/lib64/egl/libGLES_mali.so b/mali/bifrost/lib64/egl/libGLES_mali.so Binary files differnew file mode 100755 index 00000000..19c41f1d --- /dev/null +++ b/mali/bifrost/lib64/egl/libGLES_mali.so diff --git a/mali/bifrost/lib64/hw/vulkan.hikey960.so b/mali/bifrost/lib64/hw/vulkan.hikey960.so new file mode 120000 index 00000000..57c186c5 --- /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 Binary files differnew file mode 100755 index 00000000..894b1d1c --- /dev/null +++ b/mali/bifrost/lib64/libLLVM.so diff --git a/mali/bifrost/lib64/libRSDriverArm.so b/mali/bifrost/lib64/libRSDriverArm.so Binary files differnew file mode 100755 index 00000000..0a10776d --- /dev/null +++ b/mali/bifrost/lib64/libRSDriverArm.so diff --git a/mali/bifrost/lib64/libbcc.so b/mali/bifrost/lib64/libbcc.so Binary files differnew file mode 100755 index 00000000..b95b141c --- /dev/null +++ b/mali/bifrost/lib64/libbcc.so diff --git a/mali/bifrost/lib64/libbccArm.so b/mali/bifrost/lib64/libbccArm.so Binary files differnew file mode 100755 index 00000000..7fe1dfd3 --- /dev/null +++ b/mali/bifrost/lib64/libbccArm.so diff --git a/mali/bifrost/lib64/libclcore.bc b/mali/bifrost/lib64/libclcore.bc Binary files differnew file mode 100644 index 00000000..ca3d10b8 --- /dev/null +++ b/mali/bifrost/lib64/libclcore.bc diff --git a/mali/bifrost/lib64/libmalicore.bc b/mali/bifrost/lib64/libmalicore.bc Binary files differnew file mode 100644 index 00000000..f8c6d712 --- /dev/null +++ b/mali/bifrost/lib64/libmalicore.bc diff --git a/mali/utgard/Android.mk b/mali/utgard/Android.mk new file mode 100644 index 00000000..c7afa7b4 --- /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 00000000..34da5f85 --- /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 Binary files differnew file mode 100755 index 00000000..f86da7e5 --- /dev/null +++ b/mali/utgard/lib/egl/libGLES_mali.so diff --git a/mali/utgard/lib64/egl/libGLES_mali.so b/mali/utgard/lib64/egl/libGLES_mali.so Binary files differnew file mode 100755 index 00000000..5c0af47c --- /dev/null +++ b/mali/utgard/lib64/egl/libGLES_mali.so diff --git a/vendor-package-ver.mk b/vendor-package-ver.mk deleted file mode 100644 index be369eb1..00000000 --- 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 12f4a6f0..00000000 --- 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 |