fip: s6: run device sign boot flow [1/1]
PD#SWPL-170220
Problem:
run signature boot flow
Solution:
fix it
Verify:
s6
Change-Id: I9ecff7abc4ae35e968f7cde22c903a7c9b2c5a08
Signed-off-by: Bo Lv <bo.lv@amlogic.com>
diff --git a/s6/Makefile b/s6/Makefile
index 3492b05..056b837 100644
--- a/s6/Makefile
+++ b/s6/Makefile
@@ -5,8 +5,8 @@
DEVICE_SCS_KEY_TOP ?= $(CURDIR)/keys/dev-keys/s7d/device/
DEVICE_ROOTRSA_INDEX ?= 0
-PROJECT ?= a113l2
-SOC_FAMILY ?= s5
+PROJECT ?= s905x5meng
+SOC_FAMILY ?= s7d
DEVICE_SCS_SEGID ?= 0x0
DEVICE_VENDOR_SEGID ?= 0x0
DEVICE_SCS_VERS ?= 0x0
diff --git a/s6/bin/device-vendor-scs-signing.sh b/s6/bin/device-vendor-scs-signing.sh
index 2da5937..468012c 100755
--- a/s6/bin/device-vendor-scs-signing.sh
+++ b/s6/bin/device-vendor-scs-signing.sh
@@ -131,7 +131,7 @@
rm -f ${file_info_cfg}
mv -f ${file_info_cfg}.sha256 ${file_info_cfg}
- dd if=${file_info_cfg} of=${bootloader} bs=512 seek=404 conv=notrunc status=none
+ dd if=${file_info_cfg} of=${bootloader} bs=512 seek=540 conv=notrunc status=none
if [ ${storage_type_suffix} == ".sto" ]; then
total_size=$[total_size+512]
@@ -320,4 +320,4 @@
if [ -d ${temp_dir} ]; then
rm -rf ${temp_dir}
-fi
\ No newline at end of file
+fi
diff --git a/s6/bin/gen-boot-blob-bl2-final.sh b/s6/bin/gen-boot-blob-bl2-final.sh
index 24e0484..776df4f 100755
--- a/s6/bin/gen-boot-blob-bl2-final.sh
+++ b/s6/bin/gen-boot-blob-bl2-final.sh
@@ -67,7 +67,7 @@
### Features, flags and switches ###
BB1ST_ARGS="${BB1ST_ARGS} --switch-chipset-sign-bl2=0"
-BB1ST_ARGS="${BB1ST_ARGS} --scs-family=s5"
+BB1ST_ARGS="${BB1ST_ARGS} --scs-family=s7d"
### Output: blobs ###
BB1ST_ARGS="${BB1ST_ARGS} --outfile-bb1st=${BASEDIR_OUTPUT_BLOB}/bb1st${FEAT_BL2_TEMPLATE_TYPE}${CHIPSET_VARIANT_SUFFIX}.bin${postfix}"
diff --git a/s6/build.sh b/s6/build.sh
index 7aa44d4..655198b 100755
--- a/s6/build.sh
+++ b/s6/build.sh
@@ -426,9 +426,6 @@
exit -1
fi
- mv ${bb1st} ${input_payloads}/bb1st${storage_type_suffix}.payload
- source ${FIP_FOLDER}${CUR_SOC}/attach_sbh.sh ${input_payloads}/bb1st${storage_type_suffix}.payload ${bb1st}
-
file_info_cfg="${output_images}/aml-payload.cfg"
file_info_cfg_temp=${temp_cfg}.temp
@@ -442,6 +439,12 @@
dd if=/dev/zero of=${ddr_fip} bs=1024 count=256 status=none
fi
+ #align bb1st 266k and append header
+ dd if=/dev/zero of=${bb1st}.payload bs=1024 count=266 &> /dev/null
+ dd if=${bb1st} of=${bb1st}.payload conv=notrunc &> /dev/null
+ ${FIP_FOLDER}${CUR_SOC}/attach_sbh.sh ${bb1st}.payload ${bb1st}.hdr
+ bb1st=${bb1st}.hdr
+
#cat those together with 4K upper aligned for sdcard
align_base=4096
total_size=0
@@ -504,7 +507,7 @@
rm -f ${file_info_cfg}
mv -f ${file_info_cfg}.sha256 ${file_info_cfg}
- dd if=${file_info_cfg} of=${bootloader} bs=512 seek=446 conv=notrunc status=none
+ dd if=${file_info_cfg} of=${bootloader} bs=512 seek=540 conv=notrunc status=none
if [ ${storage_type_suffix} == ".sto" ]; then
echo "Image SDCARD"
@@ -614,16 +617,6 @@
fi
fi
fi
- if [ "NULL" != "${BLX_BIN_SIZE[$loop]}" ] && \
- [ "NULL" != "${BLX_BIN_NAME[$loop]}" ] && \
- [ -n "${BLX_BIN_NAME[$loop]}" ] && \
- [ -f ${BUILD_PATH}/${BLX_BIN_NAME[$loop]} ]; then
- blx_size=`stat -c %s ${BUILD_PATH}/${BLX_BIN_NAME[$loop]}`
- if [ $blx_size -ne ${BLX_BIN_SIZE[$loop]} ]; then
- echo "Error: ${BUILD_PATH}/${BLX_BIN_NAME[$loop]} size not match"
- exit -1
- fi
- fi
done
if [ ! -f ${BUILD_PATH}/device_acs.bin ]; then
diff --git a/s6/generate-binaries/bin/gen-device-fip.sh b/s6/generate-binaries/bin/gen-device-fip.sh
index 6bac99a..9d71807 100755
--- a/s6/generate-binaries/bin/gen-device-fip.sh
+++ b/s6/generate-binaries/bin/gen-device-fip.sh
@@ -101,6 +101,9 @@
### Output: Device FIP ###
EXEC_ARGS="${EXEC_ARGS} --outfile-device-fip=${BASEDIR_OUTPUT}/device-fip.bin${output_postfix}"
+### full Device FIP Header
+EXEC_ARGS="${EXEC_ARGS} --header-layout=full"
+
#echo ${EXEC_ARGS}
#
diff --git a/s6/generate-device-keys/export_signing_keys_and_sign_template.sh b/s6/generate-device-keys/export_signing_keys_and_sign_template.sh
index 2b17c0d..58ed683 100755
--- a/s6/generate-device-keys/export_signing_keys_and_sign_template.sh
+++ b/s6/generate-device-keys/export_signing_keys_and_sign_template.sh
@@ -57,7 +57,7 @@
output_dir=""
boot_blobs_arb_args=
device_fip_arb_args=
-device_soc="s5"
+device_soc="s7d"
parse_main() {
local i=0
diff --git a/s6/generate-device-keys/gen_all_device_key.sh b/s6/generate-device-keys/gen_all_device_key.sh
index 531360c..dcaf963 100755
--- a/s6/generate-device-keys/gen_all_device_key.sh
+++ b/s6/generate-device-keys/gen_all_device_key.sh
@@ -55,7 +55,7 @@
template_dir=""
rootkey_index=0
output_dir=""
-device_soc="s5"
+device_soc="s7d"
parse_main() {
local i=0