diff options
author | Tim Lee <timlee660101@gmail.com> | 2023-11-08 12:29:00 +0300 |
---|---|---|
committer | Patrick Williams <patrick@stwcx.xyz> | 2023-11-28 04:43:12 +0300 |
commit | 0e2dc68c59455d08ed20955e5b701f812256f0db (patch) | |
tree | a1d3c5f67303e7634f21926639f2f7de360d6c34 | |
parent | 92778ef997eb109db051811610c884f7cb90dfc0 (diff) | |
download | openbmc-0e2dc68c59455d08ed20955e5b701f812256f0db.tar.xz |
meta-phosphor: npcm8xx.bbclass: add SA FW support mimic NO TIP feature
SA (Stand Alone) is a special TIP_FW for mimic NO TIP feature on TIP
devices, i.e. concatenated file image_no_tip + SA FW for mimic NO TIP
For TIP device and no need TIP_FW that is using
"BootBlock_BL31_Tee_Uboot_no_tip_SA.bin" for booting up.
For real NO TIP device that is using
"BootBlock_BL31_Tee_Uboot_no_tip.bin" for booting up.
Tested:
Set TIP_IMAGE = False and SA_TIP_IMAGE = True,
TIP device and can boot up.
Set TIP_IMAGE = False and SA_TIP_IMAGE = False,
NO_TIP device and can boot up.
Signed-off-by: Tim Lee <timlee660101@gmail.com>
Change-Id: I395504c67e054f1e1f08e674e7dbb1f3c8a85d8c
-rw-r--r-- | meta-phosphor/classes/image_types_phosphor_nuvoton_npcm8xx.bbclass | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/meta-phosphor/classes/image_types_phosphor_nuvoton_npcm8xx.bbclass b/meta-phosphor/classes/image_types_phosphor_nuvoton_npcm8xx.bbclass index 9b6db798d0..03500faa14 100644 --- a/meta-phosphor/classes/image_types_phosphor_nuvoton_npcm8xx.bbclass +++ b/meta-phosphor/classes/image_types_phosphor_nuvoton_npcm8xx.bbclass @@ -7,10 +7,12 @@ KMT_TIPFW_BB_BINARY = "Kmt_TipFw_BootBlock.bin" KMT_TIPFW_BB_BL31_BINARY = "Kmt_TipFw_BootBlock_BL31.bin" KMT_TIPFW_BB_BL31_TEE_BINARY = "Kmt_TipFw_BootBlock_BL31_Tee.bin" KMT_TIPFW_BB_UBOOT_BINARY = "u-boot.bin.merged" +SA_KMT_TIPFW_BINARY := "SA_Kmt_TipFwL0.bin" BB_BL31_BINARY = "BootBlock_BL31_no_tip.bin" BB_BL31_TEE_BINARY = "BootBlock_BL31_Tee_no_tip.bin" -BB_BL31_TEE_UBOOT_BINARY = "u-boot.bin.merged" +BB_BL31_TEE_UBOOT_BINARY = "BootBlock_BL31_Tee_Uboot_no_tip.bin" +BB_BL31_TEE_UBOOT_SA_BINARY = "BootBlock_BL31_Tee_Uboot_no_tip_SA.bin" FULL_SUFFIX = "full" MERGED_SUFFIX = "merged" @@ -157,6 +159,7 @@ do_sign_binary() { python do_merge_bootloaders() { TIP_IMAGE = d.getVar('TIP_IMAGE', True) + SA_TIP_IMAGE = d.getVar('SA_TIP_IMAGE', True) def Merge_bin_files_and_pad(inF1, inF2, outF, align, align_end): padding_size = 0 padding_size_end = 0 @@ -217,10 +220,22 @@ python do_merge_bootloaders() { os.path.join(d.getVar('DEPLOY_DIR_IMAGE', True), '%s' % d.getVar('UBOOT_HEADER_BINARY',True)), os.path.join(d.getVar('DEPLOY_DIR_IMAGE', True), '%s' % d.getVar('BB_BL31_TEE_UBOOT_BINARY',True)), int(d.getVar('UBOOT_ALIGN', True)), int(d.getVar('ALIGN_END', True))) + + if SA_TIP_IMAGE == "True": + Merge_bin_files_and_pad(os.path.join(d.getVar('DEPLOY_DIR_IMAGE', True), '%s' % d.getVar('BB_BL31_TEE_UBOOT_BINARY',True)), + os.path.join(d.getVar('DEPLOY_DIR_IMAGE', True), '%s' % d.getVar('SA_KMT_TIPFW_BINARY',True)), + os.path.join(d.getVar('DEPLOY_DIR_IMAGE', True), '%s' % d.getVar('BB_BL31_TEE_UBOOT_SA_BINARY',True)), + int(d.getVar('SA_ALIGN', True)), int(d.getVar('ALIGN_END', True))) + + os.rename(os.path.join(d.getVar('DEPLOY_DIR_IMAGE', True), '%s' % d.getVar('BB_BL31_TEE_UBOOT_SA_BINARY',True)), + os.path.join(d.getVar('DEPLOY_DIR_IMAGE', True), '%s' % d.getVar('KMT_TIPFW_BB_UBOOT_BINARY',True))) + else: + os.rename(os.path.join(d.getVar('DEPLOY_DIR_IMAGE', True), '%s' % d.getVar('BB_BL31_TEE_UBOOT_BINARY',True)), + os.path.join(d.getVar('DEPLOY_DIR_IMAGE', True), '%s' % d.getVar('KMT_TIPFW_BB_UBOOT_BINARY',True))) } do_pad_binary[depends] += " \ - ${@'npcm8xx-tip-fw:do_deploy' if d.getVar('TIP_IMAGE', True) == 'True' else ''} \ + ${@'npcm8xx-tip-fw:do_deploy' if d.getVar('TIP_IMAGE', True) == 'True' or d.getVar('SA_TIP_IMAGE', True) == 'True' else ''} \ npcm8xx-bootblock:do_deploy \ u-boot-nuvoton:do_deploy \ trusted-firmware-a:do_deploy \ |