3 # Copyright (C) 2018-2019 The LineageOS Project
5 # Licensed under the Apache License, Version 2.0 (the "License");
6 # you may not use this file except in compliance with the License.
7 # You may obtain a copy of the License at
9 # http://www.apache.org/licenses/LICENSE-2.0
11 # Unless required by applicable law or agreed to in writing, software
12 # distributed under the License is distributed on an "AS IS" BASIS,
13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 # See the License for the specific language governing permissions and
15 # limitations under the License.
23 # Load extract_utils and do some sanity checks
24 MY_DIR
="${BASH_SOURCE%/*}"
25 if [[ ! -d "${MY_DIR}" ]]; then MY_DIR
="${PWD}"; fi
27 LINEAGE_ROOT
="${MY_DIR}"/..
/..
/..
29 HELPER
="${LINEAGE_ROOT}/vendor/lineage/build/tools/extract_utils.sh"
30 if [ ! -f "${HELPER}" ]; then
31 echo "Unable to find helper script at ${HELPER}"
39 while [ "${#}" -gt 0 ]; do
58 if [ -z "${SRC}" ]; then
62 # Initialize the helper
63 setup_vendor
"${DEVICE}" "${VENDOR}" "${LINEAGE_ROOT}" true "${CLEAN_VENDOR}"
65 extract
"${MY_DIR}/proprietary-files.txt" "${SRC}" \
66 "${KANG}" --section "${SECTION}"
68 # Fix proprietary blobs
69 BLOB_ROOT
="$LINEAGE_ROOT"/vendor
/"$VENDOR"/"$DEVICE"/proprietary
70 function patch_firmware
() {
71 hexdump -ve '1/1 "%.2X"' $1 | \
72 sed "s/40000054DEC0AD/02000014000000/g" | \
73 xxd
-r -p > $1.patched
79 patch_firmware
$BLOB_ROOT/vendor
/firmware
/fimc_is_lib.bin
80 patch_firmware
$BLOB_ROOT/vendor
/firmware
/fimc_is_rta_2l2_3h1.bin
81 patch_firmware
$BLOB_ROOT/vendor
/firmware
/fimc_is_rta_2l2_imx320.bin
82 patch_firmware
$BLOB_ROOT/vendor
/firmware
/fimc_is_rta_imx333_3h1.bin
83 patch_firmware
$BLOB_ROOT/vendor
/firmware
/fimc_is_rta_imx333_imx320.bin
85 "${MY_DIR}/setup-makefiles.sh"