hc
2023-11-06 9df731a176aab8e03b984b681b1bea01ccff6644
u-boot/arch/arm/mach-rockchip/fit_nodes.sh
....@@ -27,6 +27,10 @@
2727 # nodes
2828 function gen_uboot_node()
2929 {
30
+ if [ -z ${UBOOT_LOAD_ADDR} ]; then
31
+ return
32
+ fi
33
+
3034 UBOOT="u-boot-nodtb.bin"
3135 echo " uboot {
3236 description = \"U-Boot\";
....@@ -53,10 +57,16 @@
5357 algo = \"sha256\";
5458 };
5559 };"
60
+
61
+ LOADABLE_UBOOT="\"uboot\", "
5662 }
5763
5864 function gen_fdt_node()
5965 {
66
+ if [ -z ${UBOOT_LOAD_ADDR} ]; then
67
+ return
68
+ fi
69
+
6070 echo " fdt {
6171 description = \"U-Boot dtb\";
6272 data = /incbin/(\"./u-boot.dtb\");
....@@ -67,12 +77,19 @@
6777 algo = \"sha256\";
6878 };
6979 };"
80
+
81
+ FDT_SIGN=", \"fdt\""
82
+ FDT="fdt = \"fdt\"${PROP_KERN_DTB};"
7083 };
7184
7285 function gen_kfdt_node()
7386 {
87
+ if [ -z ${UBOOT_LOAD_ADDR} ]; then
88
+ return
89
+ fi
90
+
7491 KERN_DTB=`sed -n "/CONFIG_EMBED_KERNEL_DTB_PATH=/s/CONFIG_EMBED_KERNEL_DTB_PATH=//p" .config | tr -d '"'`
75
- if [ -z "${KERN_DTB}" ]; then
92
+ if [ -z ${KERN_DTB} ]; then
7693 return;
7794 fi
7895
....@@ -96,7 +113,7 @@
96113 ${srctree}/arch/arm/mach-rockchip/decode_bl31.py
97114
98115 NUM=1
99
- for ATF in `ls -l bl31_0x*.bin | sort --key=5 -nr | awk '{ print $9 }'`
116
+ for ATF in `ls -1 -S bl31_0x*.bin`
100117 do
101118 ATF_LOAD_ADDR=`echo ${ATF} | awk -F "_" '{ printf $2 }' | awk -F "." '{ printf $1 }'`
102119 # only atf-1 support compress
....@@ -135,7 +152,9 @@
135152 };"
136153 fi
137154
138
- if [ ${NUM} -gt 1 ]; then
155
+ if [ ${NUM} -eq 2 ]; then
156
+ LOADABLE_ATF=${LOADABLE_ATF}"\"atf-${NUM}\""
157
+ elif [ ${NUM} -gt 2 ]; then
139158 LOADABLE_ATF=${LOADABLE_ATF}", \"atf-${NUM}\""
140159 fi
141160 NUM=`expr ${NUM} + 1`
....@@ -152,6 +171,12 @@
152171 # If not AArch32 mode
153172 if ! grep -q '^CONFIG_ARM64_BOOT_AARCH32=y' .config ; then
154173 ENTRY="entry = <"${TEE_LOAD_ADDR}">;"
174
+
175
+ # if disable packing tee.bin
176
+ if ! grep -q '^CONFIG_SPL_OPTEE=y' .config ; then
177
+ return
178
+ fi
179
+
155180 fi
156181 fi
157182
....@@ -179,7 +204,7 @@
179204 };"
180205 LOADABLE_OPTEE=", \"optee\""
181206 FIRMWARE_OPTEE="firmware = \"optee\";"
182
- FIRMWARE_SIGN=", \"firmware\""
207
+ FIRMWARE_SIGN="\"firmware\""
183208 }
184209
185210 function gen_mcu_node()
....@@ -314,8 +339,13 @@
314339 function gen_arm64_configurations()
315340 {
316341 PLATFORM=`sed -n "/CONFIG_DEFAULT_DEVICE_TREE/p" .config | awk -F "=" '{ print $2 }' | tr -d '"'`
317
-if grep -q '^CONFIG_FIT_ENABLE_RSASSA_PSS_SUPPORT=y' .config ; then
342
+if grep -q '^CONFIG_FIT_ENABLE_RSASSA_PSS_SUPPORT=y' .config ; then
318343 ALGO_PADDING=" padding = \"pss\";"
344
+fi
345
+if grep -q '^CONFIG_FIT_ENABLE_RSA4096_SUPPORT=y' .config ; then
346
+ ALGO_NAME=" algo = \"sha256,rsa4096\";"
347
+else
348
+ ALGO_NAME=" algo = \"sha256,rsa2048\";"
319349 fi
320350 echo " };
321351
....@@ -325,14 +355,14 @@
325355 description = \"${PLATFORM}\";
326356 rollback-index = <0x0>;
327357 firmware = \"atf-1\";
328
- loadables = \"uboot\"${LOADABLE_ATF}${LOADABLE_OPTEE}${LOADABLE_OTHER};
358
+ loadables = ${LOADABLE_UBOOT}${LOADABLE_ATF}${LOADABLE_OPTEE}${LOADABLE_OTHER};
329359 ${STANDALONE_MCU}
330
- fdt = \"fdt\"${PROP_KERN_DTB};
360
+ ${FDT}
331361 signature {
332
- algo = \"sha256,rsa2048\";
362
+ ${ALGO_NAME}
333363 ${ALGO_PADDING}
334364 key-name-hint = \"dev\";
335
- sign-images = \"fdt\", \"firmware\", \"loadables\"${STANDALONE_SIGN};
365
+ sign-images = \"firmware\", \"loadables\"${FDT_SIGN}${STANDALONE_SIGN};
336366 };
337367 };
338368 };
....@@ -343,9 +373,24 @@
343373 function gen_arm_configurations()
344374 {
345375 PLATFORM=`sed -n "/CONFIG_DEFAULT_DEVICE_TREE/p" .config | awk -F "=" '{ print $2 }' | tr -d '"'`
346
-if grep -q '^CONFIG_FIT_ENABLE_RSASSA_PSS_SUPPORT=y' .config ; then
376
+if grep -q '^CONFIG_FIT_ENABLE_RSASSA_PSS_SUPPORT=y' .config ; then
347377 ALGO_PADDING=" padding = \"pss\";"
348378 fi
379
+if grep -q '^CONFIG_FIT_ENABLE_RSA4096_SUPPORT=y' .config ; then
380
+ ALGO_NAME=" algo = \"sha256,rsa4096\";"
381
+else
382
+ ALGO_NAME=" algo = \"sha256,rsa2048\";"
383
+fi
384
+if [ ! -z "${LOADABLE_UBOOT}" ] || [ ! -z "${LOADABLE_OTHER}" ]; then
385
+ LOADABLE_UBOOT="\"uboot\""
386
+ LOADABLES="loadables = ${LOADABLE_UBOOT}${LOADABLE_OTHER};"
387
+ if [ -z ${FIRMWARE_SIGN} ]; then
388
+ LOADABLES_SIGN="\"loadables\""
389
+ else
390
+ LOADABLES_SIGN=", \"loadables\""
391
+ fi
392
+fi
393
+
349394 echo " };
350395
351396 configurations {
....@@ -354,14 +399,14 @@
354399 description = \"${PLATFORM}\";
355400 rollback-index = <0x0>;
356401 ${FIRMWARE_OPTEE}
357
- loadables = \"uboot\"${LOADABLE_OTHER};
402
+ ${LOADABLES}
358403 ${STANDALONE_MCU}
359
- fdt = \"fdt\"${PROP_KERN_DTB};
404
+ ${FDT}
360405 signature {
361
- algo = \"sha256,rsa2048\";
406
+ ${ALGO_NAME}
362407 ${ALGO_PADDING}
363408 key-name-hint = \"dev\";
364
- sign-images = \"fdt\", \"loadables\"${FIRMWARE_SIGN}${STANDALONE_SIGN};
409
+ sign-images = ${FIRMWARE_SIGN}${LOADABLES_SIGN}${FDT_SIGN}${STANDALONE_SIGN};
365410 };
366411 };
367412 };