[v5,13/13] configs: synquacer: Enable EFI capsule update support

Message ID 162279993154.518877.15450042409453998202.stgit@localhost
State Accepted
Commit 3a37386f18c82f7270e892dbd51e3f00cf5d8a19
Headers show
Series
  • arm64: synquacer: Add SynQuacer/DeveloperBox support
Related show

Commit Message

Masami Hiramatsu June 4, 2021, 9:45 a.m.
Enable EFI capsule update support. With the EFI capsule update,
you can update U-Boot, TF-A and OP-TEE. TF-A and OP-TEE are
usually combined as a FIP binary, but if the binary is bigger
than 480KB, you have to modify FIP header, split the OP-TEE
and stores the OP-TEE binary in the different place. This
configuration supports both cases.

Signed-off-by: Masami Hiramatsu <masami.hiramatsu@linaro.org>

---
 Changes in v4:
   - Add some config options for EBBR.
 Changes in v3:
   - Fix a typo in dfu_alt_info.
---
 configs/synquacer_developerbox_defconfig |   17 +++++++++++++++++
 include/configs/synquacer.h              |    6 ++++++
 2 files changed, 23 insertions(+)

Patch

diff --git a/configs/synquacer_developerbox_defconfig b/configs/synquacer_developerbox_defconfig
index cbc09d3225..d42db9a1d6 100644
--- a/configs/synquacer_developerbox_defconfig
+++ b/configs/synquacer_developerbox_defconfig
@@ -110,3 +110,20 @@  CONFIG_DM_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_PCI=y
 CONFIG_USB_STORAGE=y
+CONFIG_EFI_RUNTIME_UPDATE_CAPSULE=y
+CONFIG_EFI_CAPSULE_ON_DISK=y
+CONFIG_EFI_CAPSULE_FIRMWARE_MANAGEMENT=y
+CONFIG_EFI_CAPSULE_FIRMWARE=y
+CONFIG_EFI_CAPSULE_FIRMWARE_RAW=y
+CONFIG_EFI_CAPSULE_FIRMWARE_FIT=y
+CONFIG_EFI_CAPSULE_FMP_HEADER=y
+CONFIG_FLASH_CFI_MTD=y
+CONFIG_CMD_DFU=y
+CONFIG_DFU_TFTP=y
+CONFIG_DFU_MTD=y
+CONFIG_DFU_RAM=y
+CONFIG_DFU_SF=y
+CONFIG_DFU_SF_PART=y
+CONFIG_FIT=y
+CONFIG_OF_LIBFDT=y
+CONFIG_CMD_ERASEENV=y
diff --git a/include/configs/synquacer.h b/include/configs/synquacer.h
index 0dab4de1f1..8fe10d7485 100644
--- a/include/configs/synquacer.h
+++ b/include/configs/synquacer.h
@@ -61,6 +61,11 @@ 
 /* Since U-Boot 64bit PCIe support is limited, disable 64bit MMIO support */
 /* #define CONFIG_SYS_PCI_64BIT		1 */
 
+#define DEFAULT_DFU_ALT_INFO "dfu_alt_info="				\
+			"mtd nor1=u-boot.bin raw 200000 100000;"	\
+			"fip.bin raw 180000 78000;"			\
+			"optee.bin raw 500000 100000\0"
+
 /* Distro boot settings */
 #ifndef CONFIG_SPL_BUILD
 #ifdef CONFIG_CMD_USB
@@ -104,6 +109,7 @@ 
 	"ramdisk_addr_r=0xa0000000\0"		\
 	"scriptaddr=0x88000000\0"		\
 	"pxefile_addr_r=0x88100000\0"		\
+	DEFAULT_DFU_ALT_INFO			\
 	BOOTENV
 
 #endif /* __CONFIG_H */