blob: 2585ff25bfedb7f086ea69259d9b5760d91b38d6 [file] [log] [blame]
Patrick Williamsac13d5f2023-11-24 18:59:46 -06001# Corstone1000 specific U-boot support
2
Patrick Williams73bd93f2024-02-20 08:07:48 -06003DEPENDS:append = " openssl-native efitools-native"
Patrick Williamsac13d5f2023-11-24 18:59:46 -06004CORSTONE1000_DEVICE_TREE:corstone1000-mps3 = "corstone1000-mps3"
5CORSTONE1000_DEVICE_TREE:corstone1000-fvp = "corstone1000-fvp"
6EXTRA_OEMAKE:append = ' DEVICE_TREE=${CORSTONE1000_DEVICE_TREE}'
7
Patrick Williams73bd93f2024-02-20 08:07:48 -06008UBOOT_CONFIG ??= "EFI"
9UBOOT_CONFIG[EFI] = "corstone1000_defconfig"
10UBOOT_ENTRYPOINT = "0x80000000"
11UBOOT_LOADADDRESS = "0x80000000"
12UBOOT_BOOTARGS = "${LINUX_KERNEL_ARGS} loglevel=9"
13UBOOT_ARCH = "arm"
14UBOOT_EXTLINUX = "0"
15
Patrick Williamsac13d5f2023-11-24 18:59:46 -060016SYSROOT_DIRS:append = " /boot"
17
18SRC_URI:append = " \
19 file://0001-FF-A-v15-arm64-smccc-add-support-for-SMCCCv1.2-x0-x1.patch \
20 file://0002-FF-A-v15-lib-uuid-introduce-uuid_str_to_le_bin-funct.patch \
21 file://0003-FF-A-v15-lib-uuid-introduce-testcase-for-uuid_str_to.patch \
22 file://0004-FF-A-v15-arm_ffa-introduce-Arm-FF-A-support.patch \
23 file://0005-FF-A-v15-arm_ffa-introduce-armffa-command.patch \
24 file://0006-FF-A-v15-arm_ffa-introduce-sandbox-FF-A-support.patch \
25 file://0007-FF-A-v15-arm_ffa-introduce-sandbox-test-cases-for-UC.patch \
26 file://0008-FF-A-v15-arm_ffa-introduce-armffa-command-Sandbox-te.patch \
27 file://0009-FF-A-v15-arm_ffa-efi-introduce-FF-A-MM-communication.patch \
28 file://0010-FF-A-v15-arm_ffa-efi-corstone1000-enable-MM-communic.patch \
29 file://0011-efi-corstone1000-fwu-introduce-EFI-capsule-update.patch \
30 file://0012-arm-corstone1000-fix-unrecognized-filesystem-type.patch \
31 file://0013-efi_loader-corstone1000-remove-guid-check-from-corst.patch \
32 file://0014-efi_loader-populate-ESRT-table-if-EFI_ESRT-config-op.patch \
33 file://0015-efi_firmware-add-get_image_info-for-corstone1000.patch \
34 file://0016-efi_loader-fix-null-pointer-exception-with-get_image.patch \
35 file://0017-arm-corstone1000-add-mmc-for-fvp.patch \
36 file://0018-corstone1000-add-compressed-kernel-support.patch \
37 file://0019-arm-corstone1000-esrt-support.patch \
38 file://0020-corstone1000-enable-distro-booting-command.patch \
39 file://0021-corstone1000-add-fwu-metadata-store-info.patch \
40 file://0022-fwu_metadata-make-sure-structures-are-packed.patch \
41 file://0023-corstone1000-add-boot-index.patch \
42 file://0024-corstone1000-adjust-boot-bank-and-kernel-location.patch \
43 file://0025-corstone1000-add-nvmxip-fwu-mdata-and-gpt-options.patch \
44 file://0026-nvmxip-move-header-to-include.patch \
45 file://0027-corstone1000-set-kernel_addr-based-on-boot_idx.patch \
46 file://0028-corstone1000-boot-index-from-active.patch \
47 file://0029-corstone1000-enable-PSCI-reset.patch \
48 file://0030-Enable-EFI-set-get-time-services.patch \
49 file://0031-corstone1000-detect-inflated-kernel-size.patch \
50 file://0032-corstone1000-ESRT-add-unique-firmware-GUID.patch \
51 file://0033-dt-Provide-a-way-to-remove-non-compliant-nodes-and-p.patch \
52 file://0034-bootefi-Call-the-EVT_FT_FIXUP-event-handler.patch \
53 file://0035-corstone1000-purge-U-Boot-specific-DT-nodes.patch \
54 file://0036-corstone1000-add-signature-device-tree-overlay.patch \
55 file://0037-corstone1000-enable-authenticated-capsule-config.patch \
56 file://0038-corstone1000-introduce-EFI-authenticated-capsule-upd.patch \
57 file://0039-enables-ondisk-capsule-update-feature.patch \
58 file://0040-fix-runtime-capsule-update-flags-checks.patch \
59 file://0041-scatter-gather-flag-workaround.patch \
60 file://0042-corstone1000-enable-virtio-net-support.patch \
61 "
62
Patrick Williams73bd93f2024-02-20 08:07:48 -060063do_configure:append() {
Patrick Williamsac13d5f2023-11-24 18:59:46 -060064 openssl req -x509 -sha256 -newkey rsa:2048 -subj /CN=CRT/ -keyout ${B}/CRT.key -out ${B}/CRT.crt -nodes -days 365
65 cert-to-efi-sig-list ${B}/CRT.crt ${B}/corstone1000_defconfig/CRT.esl
66}
67
Patrick Williams73bd93f2024-02-20 08:07:48 -060068FILES:${PN} += "/corstone1000_capsule_*"
Patrick Williamsac13d5f2023-11-24 18:59:46 -060069do_install:append() {
Patrick Williams73bd93f2024-02-20 08:07:48 -060070 install -D -p -m 0644 ${B}/CRT.crt ${D}/corstone1000_capsule_cert.crt
71 install -D -p -m 0644 ${B}/CRT.key ${D}/corstone1000_capsule_key.key
Patrick Williamsac13d5f2023-11-24 18:59:46 -060072}
Patrick Williams73bd93f2024-02-20 08:07:48 -060073
74do_deploy:append(){
75 cp -Rf ${D}/corstone1000_capsule* ${DEPLOYDIR}/
76}
77
78addtask deploy after do_install