Update source to Armbian-dev-202610.A311Y3
This commit is contained in:
@@ -0,0 +1,115 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR MIT)
|
||||
# Copyright (C) 2026 Amlogic, Inc. All rights reserved
|
||||
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
# set -x
|
||||
|
||||
#
|
||||
# Variables
|
||||
#
|
||||
|
||||
EXEC_BASEDIR=$(dirname $(readlink -f $0))
|
||||
ACPU_IMAGETOOL=${EXEC_BASEDIR}/../../binary-tool/acpu-imagetool
|
||||
|
||||
#
|
||||
# Settings
|
||||
#
|
||||
|
||||
#BASEDIR_DEVICE_TEMPLATE="${BASEDIR_ROOTRSA_X}/data/template/device"
|
||||
BASEDIR_CHIPSET_TEMPLATE=$1
|
||||
|
||||
BASEDIR_ROOT=${BASEDIR_ROOT:-$BASEDIR_TEMPLATE}
|
||||
|
||||
#BASEDIR_RSAKEY_LVLX="${BASEDIR_ROOTRSA_X}/data/key/lvlxrsa"
|
||||
|
||||
BASEDIR_OUTPUT_BLOB=$2
|
||||
|
||||
SOC=$3
|
||||
|
||||
input_postfix=.signed
|
||||
output_postfix=.device.signed
|
||||
|
||||
echo "============ ROOTRSA_INDEX ${DEVICE_ROOTRSA_INDEX}"
|
||||
echo "============ KEY_DIR ${BASEDIR_ROOT}"
|
||||
echo "============ PROJECT ${PROJECT}"
|
||||
|
||||
if [ -z "$PROJECT" ]; then
|
||||
BASEDIR_AESKEY_ROOT="${BASEDIR_ROOT}/root/aes/rootkey"
|
||||
BASEDIR_RSAKEY_ROOT="${BASEDIR_ROOT}/root/rsa"
|
||||
BASEDIR_BOOTBLOBS_RSAKEY_ROOT="${BASEDIR_ROOT}/boot-blobs/rsa/rootrsa-${DEVICE_ROOTRSA_INDEX}"
|
||||
BASEDIR_BOOTBLOBS_TEMPLATE_ROOT="${BASEDIR_ROOT}/boot-blobs/template/rootrsa-${DEVICE_ROOTRSA_INDEX}"
|
||||
BASEDIR_FIP_RSAKEY_ROOT="${BASEDIR_ROOT}/fip/rsa/rootrsa-${DEVICE_ROOTRSA_INDEX}"
|
||||
BASEDIR_FIP_AESKEY_ROOT="${BASEDIR_ROOT}/fip/aes/protkey"
|
||||
BASEDIR_FIP_TEMPLATE_ROOT="${BASEDIR_ROOT}/fip/template/rootrsa-${DEVICE_ROOTRSA_INDEX}"
|
||||
else
|
||||
BASEDIR_AESKEY_ROOT="${BASEDIR_ROOT}/root/aes/${PROJECT}/rootkey"
|
||||
BASEDIR_RSAKEY_ROOT="${BASEDIR_ROOT}/root/rsa/${PROJECT}"
|
||||
BASEDIR_BOOTBLOBS_RSAKEY_ROOT="${BASEDIR_ROOT}/boot-blobs/rsa/${PROJECT}/rootrsa-${DEVICE_ROOTRSA_INDEX}"
|
||||
BASEDIR_BOOTBLOBS_TEMPLATE_ROOT="${BASEDIR_ROOT}/boot-blobs/template/${PROJECT}/rootrsa-${DEVICE_ROOTRSA_INDEX}"
|
||||
BASEDIR_FIP_RSAKEY_ROOT="${BASEDIR_ROOT}/fip/rsa/${PROJECT}/rootrsa-${DEVICE_ROOTRSA_INDEX}"
|
||||
BASEDIR_FIP_AESKEY_ROOT="${BASEDIR_ROOT}/fip/aes/${PROJECT}/protkey"
|
||||
BASEDIR_FIP_TEMPLATE_ROOT="${BASEDIR_ROOT}/fip/template/${PROJECT}/rootrsa-${DEVICE_ROOTRSA_INDEX}"
|
||||
fi
|
||||
|
||||
BASEDIR_DEVICE_TEMPLATE="${BASEDIR_BOOTBLOBS_TEMPLATE_ROOT}"
|
||||
|
||||
#
|
||||
# Arguments
|
||||
#
|
||||
|
||||
#
|
||||
# Arguments
|
||||
#
|
||||
|
||||
BB1ST_ARGS="${BB1ST_ARGS}"
|
||||
|
||||
### Input: template ###
|
||||
BB1ST_ARGS="${BB1ST_ARGS} --infile-template-bb1st=${BASEDIR_DEVICE_TEMPLATE}/bb1st.bin"
|
||||
|
||||
### Input: blobs ###
|
||||
BB1ST_ARGS="${BB1ST_ARGS} --infile-dvinit-params=${BASEDIR_CHIPSET_TEMPLATE}/dvinit-params.bin"
|
||||
BB1ST_ARGS="${BB1ST_ARGS} --infile-blob-bl2e=${BASEDIR_CHIPSET_TEMPLATE}/blob-bl2e${DEVICE_STORAGE_SUFFIX}${DEVICE_VARIANT_SUFFIX}.bin${input_postfix}"
|
||||
BB1ST_ARGS="${BB1ST_ARGS} --infile-blob-bl2x=${BASEDIR_CHIPSET_TEMPLATE}/blob-bl2x.bin${input_postfix}"
|
||||
BB1ST_ARGS="${BB1ST_ARGS} --infile-blob-bb1st-ref=${BASEDIR_CHIPSET_TEMPLATE}/bb1st${DEVICE_STORAGE_SUFFIX}${DEVICE_VARIANT_SUFFIX}.bin${input_postfix}"
|
||||
|
||||
### Input: Device Level-1/2 Private RSA keys
|
||||
BB1ST_ARGS="${BB1ST_ARGS} --infile-signkey-device-lvl1=${BASEDIR_BOOTBLOBS_RSAKEY_ROOT}/key/level-1-rsa-priv.pem"
|
||||
BB1ST_ARGS="${BB1ST_ARGS} --infile-signkey-device-lvl2=${BASEDIR_BOOTBLOBS_RSAKEY_ROOT}/key/level-2-rsa-priv.pem"
|
||||
|
||||
### Input: Device Level-2 Public RSA key
|
||||
BB1ST_ARGS="${BB1ST_ARGS} --infile-pubkey-device-lvl2cert=${BASEDIR_BOOTBLOBS_RSAKEY_ROOT}/key/level-2-rsa-pub.pem"
|
||||
|
||||
### Features, flags and switches ###
|
||||
BB1ST_ARGS="${BB1ST_ARGS} --switch-keep-device-lvl2-pubrsa=1"
|
||||
|
||||
BB1ST_ARGS="${BB1ST_ARGS} --scs-family=${SOC}"
|
||||
|
||||
# arb info
|
||||
BB1ST_ARGS="${BB1ST_ARGS} --val-device-scs-segid=${DEVICE_SCS_SEGID}"
|
||||
BB1ST_ARGS="${BB1ST_ARGS} --val-device-vendor-segid=${DEVICE_VENDOR_SEGID}"
|
||||
BB1ST_ARGS="${BB1ST_ARGS} --val-device-scs-vers=${DEVICE_SCS_VERS}"
|
||||
BB1ST_ARGS="${BB1ST_ARGS} --val-device-tee-vers=${DEVICE_TEE_VERS}"
|
||||
if [ "1" == "${DEVICE_SCS_LVL1CERT_VERS_SUBMASK}" ]; then
|
||||
BB1ST_ARGS="${BB1ST_ARGS} --switch-device-lvl1cert-vers-submask=1"
|
||||
fi
|
||||
|
||||
### Output: blobs ###
|
||||
BB1ST_ARGS="${BB1ST_ARGS} --outfile-bb1st=${BASEDIR_OUTPUT_BLOB}/bb1st${DEVICE_STORAGE_SUFFIX}${DEVICE_VARIANT_SUFFIX}.bin${output_postfix}"
|
||||
BB1ST_ARGS="${BB1ST_ARGS} --outfile-blob-bl2e=${BASEDIR_OUTPUT_BLOB}/blob-bl2e${DEVICE_STORAGE_SUFFIX}${DEVICE_VARIANT_SUFFIX}.bin${output_postfix}"
|
||||
BB1ST_ARGS="${BB1ST_ARGS} --outfile-blob-bl2x=${BASEDIR_OUTPUT_BLOB}/blob-bl2x.bin${output_postfix}"
|
||||
|
||||
echo ${TOOLS_ARGS}
|
||||
|
||||
#
|
||||
# Main
|
||||
#
|
||||
|
||||
set -x
|
||||
|
||||
${ACPU_IMAGETOOL} \
|
||||
create-boot-blobs \
|
||||
${BB1ST_ARGS}
|
||||
|
||||
# vim: set tabstop=2 expandtab shiftwidth=2:
|
||||
@@ -0,0 +1,126 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR MIT)
|
||||
# Copyright (C) 2026 Amlogic, Inc. All rights reserved
|
||||
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
# set -x
|
||||
|
||||
#
|
||||
# Variables
|
||||
#
|
||||
|
||||
EXEC_BASEDIR=$(dirname $(readlink -f $0))
|
||||
ACPU_IMAGETOOL=${EXEC_BASEDIR}/../../binary-tool/acpu-imagetool
|
||||
BASEDIR_TOP=$(readlink -f ${EXEC_BASEDIR}/..)
|
||||
|
||||
#
|
||||
# Settings
|
||||
#
|
||||
|
||||
#BASEDIR_DEVICE_TEMPLATE="${BASEDIR_ROOTRSA_X}/data/template/device"
|
||||
BASEDIR_CHIPSET_TEMPLATE=$1
|
||||
|
||||
BASEDIR_ROOT=${BASEDIR_ROOT:-$BASEDIR_TEMPLATE}
|
||||
|
||||
#BASEDIR_AESKEY_PROT="${BASEDIR_ROOTRSA_X}/data/key/aesroot"
|
||||
#BASEDIR_RSAKEY_LVLX="${BASEDIR_ROOTRSA_X}/data/key/lvlxrsa"
|
||||
|
||||
BASEDIR_PAYLOAD=$2
|
||||
|
||||
#BASEDIR_EPK="${BASEDIR_ROOTRSA_X}/data/epk"
|
||||
|
||||
BASEDIR_OUTPUT=$3
|
||||
|
||||
input_postfix=.signed
|
||||
output_postfix=.device.signed
|
||||
|
||||
echo "============ ROOTRSA_INDEX ${DEVICE_ROOTRSA_INDEX}"
|
||||
echo "============ KEY_DIR ${BASEDIR_ROOT}"
|
||||
echo "============ PROJECT ${PROJECT}"
|
||||
|
||||
if [ -z "$PROJECT" ]; then
|
||||
BASEDIR_AESKEY_ROOT="${BASEDIR_ROOT}/root/aes/rootkey"
|
||||
BASEDIR_RSAKEY_ROOT="${BASEDIR_ROOT}/root/rsa"
|
||||
BASEDIR_BOOTBLOBS_RSAKEY_ROOT="${BASEDIR_ROOT}/boot-blobs/rsa/rootrsa-${DEVICE_ROOTRSA_INDEX}"
|
||||
BASEDIR_BOOTBLOBS_TEMPLATE_ROOT="${BASEDIR_ROOT}/boot-blobs/template/rootrsa-${DEVICE_ROOTRSA_INDEX}"
|
||||
BASEDIR_FIP_RSAKEY_ROOT="${BASEDIR_ROOT}/fip/rsa/rootrsa-${DEVICE_ROOTRSA_INDEX}"
|
||||
BASEDIR_FIP_AESKEY_ROOT="${BASEDIR_ROOT}/fip/aes/protkey"
|
||||
BASEDIR_FIP_TEMPLATE_ROOT="${BASEDIR_ROOT}/fip/template/rootrsa-${DEVICE_ROOTRSA_INDEX}"
|
||||
else
|
||||
BASEDIR_AESKEY_ROOT="${BASEDIR_ROOT}/root/aes/${PROJECT}/rootkey"
|
||||
BASEDIR_RSAKEY_ROOT="${BASEDIR_ROOT}/root/rsa/${PROJECT}"
|
||||
BASEDIR_BOOTBLOBS_RSAKEY_ROOT="${BASEDIR_ROOT}/boot-blobs/rsa/${PROJECT}/rootrsa-${DEVICE_ROOTRSA_INDEX}"
|
||||
BASEDIR_BOOTBLOBS_TEMPLATE_ROOT="${BASEDIR_ROOT}/boot-blobs/template/${PROJECT}/rootrsa-${DEVICE_ROOTRSA_INDEX}"
|
||||
BASEDIR_FIP_RSAKEY_ROOT="${BASEDIR_ROOT}/fip/rsa/${PROJECT}/rootrsa-${DEVICE_ROOTRSA_INDEX}"
|
||||
BASEDIR_FIP_AESKEY_ROOT="${BASEDIR_ROOT}/fip/aes/${PROJECT}/protkey"
|
||||
BASEDIR_FIP_TEMPLATE_ROOT="${BASEDIR_ROOT}/fip/template/${PROJECT}/rootrsa-${DEVICE_ROOTRSA_INDEX}"
|
||||
fi
|
||||
|
||||
BASEDIR_DEVICE_TEMPLATE="${BASEDIR_FIP_TEMPLATE_ROOT}"
|
||||
|
||||
#
|
||||
# Arguments
|
||||
#
|
||||
|
||||
BLOB_NAME=$1
|
||||
|
||||
EXEC_ARGS="${EXEC_ARGS}"
|
||||
|
||||
### Input: template ###
|
||||
EXEC_ARGS="${EXEC_ARGS} --infile-template-device-fip-header=${BASEDIR_DEVICE_TEMPLATE}/device-fip-header.bin"
|
||||
|
||||
### Input: payload ###
|
||||
EXEC_ARGS="${EXEC_ARGS} --infile-bl30-payload=${BASEDIR_PAYLOAD}/bl30-payload.bin"
|
||||
EXEC_ARGS="${EXEC_ARGS} --infile-bl33-payload=${BASEDIR_PAYLOAD}/bl33-payload.bin"
|
||||
|
||||
### Input: Device Level-3 private RSA keys and EPKs ###
|
||||
|
||||
|
||||
# Device Vendor binaries
|
||||
EXEC_ARGS="${EXEC_ARGS} --infile-signkey-bl30-device-lvl3=${BASEDIR_FIP_RSAKEY_ROOT}/key/bl30-level-3-rsa-priv.pem"
|
||||
if [ "y" != "${DEVICE_NO_CRYPTO_AES}" ]; then
|
||||
EXEC_ARGS="${EXEC_ARGS} --infile-aes256-bl30-payload=${BASEDIR_FIP_AESKEY_ROOT}/genkey-prot-bl30.bin"
|
||||
fi
|
||||
|
||||
EXEC_ARGS="${EXEC_ARGS} --infile-signkey-bl33-device-lvl3=${BASEDIR_FIP_RSAKEY_ROOT}/key/bl33-level-3-rsa-priv.pem"
|
||||
if [ "y" != "${DEVICE_NO_CRYPTO_AES}" ]; then
|
||||
EXEC_ARGS="${EXEC_ARGS} --infile-aes256-bl33-payload=${BASEDIR_FIP_AESKEY_ROOT}/genkey-prot-bl33.bin"
|
||||
fi
|
||||
|
||||
# Chipset Manufacturer binaries
|
||||
EXEC_ARGS="${EXEC_ARGS} --infile-signkey-bl40-device-lvl3=${BASEDIR_FIP_RSAKEY_ROOT}/key/bl40-level-3-rsa-priv.pem"
|
||||
EXEC_ARGS="${EXEC_ARGS} --infile-signkey-bl31-device-lvl3=${BASEDIR_FIP_RSAKEY_ROOT}/key/bl31-level-3-rsa-priv.pem"
|
||||
EXEC_ARGS="${EXEC_ARGS} --infile-signkey-bl32-device-lvl3=${BASEDIR_FIP_RSAKEY_ROOT}/key/bl32-level-3-rsa-priv.pem"
|
||||
|
||||
### Input: chipset blobs ###
|
||||
EXEC_ARGS="${EXEC_ARGS} --infile-blob-bl40=${BASEDIR_CHIPSET_TEMPLATE}/blob-bl40.bin${input_postfix}"
|
||||
EXEC_ARGS="${EXEC_ARGS} --infile-blob-bl31=${BASEDIR_CHIPSET_TEMPLATE}/blob-bl31.bin${input_postfix}"
|
||||
EXEC_ARGS="${EXEC_ARGS} --infile-blob-bl32=${BASEDIR_CHIPSET_TEMPLATE}/blob-bl32.bin${input_postfix}"
|
||||
|
||||
### Features, flags and switches ###
|
||||
|
||||
# arb info
|
||||
EXEC_ARGS="${EXEC_ARGS} --val-device-vendor-segid=${DEVICE_VENDOR_SEGID}"
|
||||
EXEC_ARGS="${EXEC_ARGS} --val-device-tee-vers=${DEVICE_TEE_VERS}"
|
||||
EXEC_ARGS="${EXEC_ARGS} --val-device-ree-vers=${DEVICE_REE_VERS}"
|
||||
|
||||
### Output: Device FIP ###
|
||||
EXEC_ARGS="${EXEC_ARGS} --outfile-device-fip=${BASEDIR_OUTPUT}/device-fip.bin${output_postfix}"
|
||||
|
||||
### compact Device FIP Header
|
||||
EXEC_ARGS="${EXEC_ARGS} --header-layout=compact"
|
||||
|
||||
#echo ${EXEC_ARGS}
|
||||
|
||||
#
|
||||
# Main
|
||||
#
|
||||
|
||||
set -x
|
||||
|
||||
${ACPU_IMAGETOOL} \
|
||||
create-device-fip \
|
||||
${EXEC_ARGS}
|
||||
|
||||
# vim: set tabstop=2 expandtab shiftwidth=2:
|
||||
Reference in New Issue
Block a user