po 26. 4. 2021 v 13:08 odesÃlatel Michal Simek <michal.si...@xilinx.com> napsal: > > Enable EFI capsule update features to be enabled by default also with all > dfu valid options for ZynqMP. > > This feature was tested on Xilinx ZynqMP zcu104 board with defining > dfu_alt_info="mmc 0:1=boot.bin fat 0 1;u-boot.itb fat 0 1" > and > dfu_alt_info="sf 0:0=boot.bin raw 0 0x50000;u-boot.itb raw 0x80000 > 0x500000". > > There is a need to increase malloc size for getting dfu mmc to work. > > Signed-off-by: Michal Simek <michal.si...@xilinx.com> > CC: Sughosh Ganu <sughosh.g...@linaro.org> > CC: Ilias Apalodimas <ilias.apalodi...@linaro.org> > CC: Heinrich Schuchardt <xypron.g...@gmx.de> > --- > > I actually didn't try to boot out of qspi because qspi writing is likely > broken and should be fixed. But I have checked that images are written to > that previously erased locations. > > U-Boot SPL 2021.04-00978-g76a8101e4548 (Apr 26 2021 - 13:01:46 +0200) > PMUFW: v1.1 > Loading new PMUFW cfg obj (2024 bytes) > Silicon version: 3 > EL Level: EL3 > Chip ID: zu7e > Multiboot: 0 > Trying to boot from MMC2 > spl: could not initialize mmc. error: -19 > Trying to boot from MMC1 > spl_load_image_fat_os: error reading image u-boot.bin, err - -2 > NOTICE: ATF running on XCZU7EG/EV/silicon v4/RTL5.1 at 0xfffea000 > NOTICE: BL31: v2.2(release):xilinx-v2020.2.2-k26 > NOTICE: BL31: Built : 11:51:16, Apr 21 2021 > > U-Boot 2021.04-00978-g76a8101e4548 (Apr 26 2021 - 13:01:46 +0200) > > Model: ZynqMP ZCU104 RevC > Board: Xilinx ZynqMP > DRAM: 2 GiB > PMUFW: v1.1 > EL Level: EL2 > Chip ID: zu7e > WDT: Started with servicing (60s timeout) > NAND: 0 MiB > MMC: mmc@ff170000: 0 > Loading Environment from FAT... OK > In: serial > Out: serial > Err: serial > Net: > ZYNQ GEM: ff0e0000, mdio bus ff0e0000, phyaddr 12, interface rgmii-id > eth0: ethernet@ff0e0000 > Scanning disk m...@ff170000.blk... > Found 4 disks > ##Hit any key to stop autoboot: 0 > ZynqMP> reset > resetting ... > > U-Boot SPL 2021.04-00978-g01e9f0ec63e4 (Apr 26 2021 - 13:04:48 +0200) > PMUFW: v1.1 > Loading new PMUFW cfg obj (2024 bytes) > Silicon version: 3 > EL Level: EL3 > Chip ID: zu7e > Multiboot: 0 > Trying to boot from MMC2 > spl: could not initialize mmc. error: -19 > Trying to boot from MMC1 > spl_load_image_fat_os: error reading image u-boot.bin, err - -2 > NOTICE: ATF running on XCZU7EG/EV/silicon v4/RTL5.1 at 0xfffea000 > NOTICE: BL31: v2.2(release):xilinx-v2020.2.2-k26 > NOTICE: BL31: Built : 11:51:16, Apr 21 2021 > > U-Boot 2021.04-00978-g01e9f0ec63e4 (Apr 26 2021 - 13:04:48 +0200) > > Model: ZynqMP ZCU104 RevC > Board: Xilinx ZynqMP > DRAM: 2 GiB > PMUFW: v1.1 > EL Level: EL2 > Chip ID: zu7e > WDT: Started with servicing (60s timeout) > NAND: 0 MiB > MMC: mmc@ff170000: 0 > Loading Environment from FAT... OK > In: serial > Out: serial > Err: serial > Net: > ZYNQ GEM: ff0e0000, mdio bus ff0e0000, phyaddr 12, interface rgmii-id > eth0: ethernet@ff0e0000 > Scanning disk m...@ff170000.blk... > Found 4 disks > Hit any key to stop autoboot: 0 > ZynqMP> > > --- > configs/xilinx_zynqmp_virt_defconfig | 9 +++++++++ > include/configs/xilinx_zynqmp.h | 2 +- > 2 files changed, 10 insertions(+), 1 deletion(-) > > diff --git a/configs/xilinx_zynqmp_virt_defconfig > b/configs/xilinx_zynqmp_virt_defconfig > index 89c1dae2a1d9..9c496098584f 100644 > --- a/configs/xilinx_zynqmp_virt_defconfig > +++ b/configs/xilinx_zynqmp_virt_defconfig > @@ -86,7 +86,11 @@ CONFIG_SATA_CEVA=y > CONFIG_CLK_ZYNQMP=y > CONFIG_DFU_TFTP=y > CONFIG_DFU_TIMEOUT=y > +CONFIG_DFU_MMC=y > +CONFIG_DFU_NAND=y > CONFIG_DFU_RAM=y > +CONFIG_DFU_SF=y > +CONFIG_DFU_MTD=y > CONFIG_USB_FUNCTION_FASTBOOT=y > CONFIG_FASTBOOT_FLASH=y > CONFIG_FASTBOOT_FLASH_MMC_DEV=0 > @@ -178,3 +182,8 @@ CONFIG_TPM=y > CONFIG_SPL_GZIP=y > # CONFIG_SPL_HEXDUMP is not set > CONFIG_OF_LIBFDT_OVERLAY=y > +CONFIG_EFI_RUNTIME_UPDATE_CAPSULE=y > +CONFIG_EFI_CAPSULE_ON_DISK=y > +CONFIG_EFI_CAPSULE_ON_DISK_EARLY=y > +CONFIG_EFI_CAPSULE_FIRMWARE_FIT=y > +CONFIG_EFI_CAPSULE_FIRMWARE_RAW=y > diff --git a/include/configs/xilinx_zynqmp.h b/include/configs/xilinx_zynqmp.h > index 36f3d962e417..986af2be7819 100644 > --- a/include/configs/xilinx_zynqmp.h > +++ b/include/configs/xilinx_zynqmp.h > @@ -27,7 +27,7 @@ > #endif > > /* Size of malloc() pool */ > -#define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + 0x2000000) > +#define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + 0x4000000) > > /* Serial setup */ > #define CONFIG_CPU_ARMV8 > -- > 2.31.1 >
Applied. M -- Michal Simek, Ing. (M.Eng), OpenPGP -> KeyID: FE3D1F91 w: www.monstr.eu p: +42-0-721842854 Maintainer of Linux kernel - Xilinx Microblaze Maintainer of Linux kernel - Xilinx Zynq ARM and ZynqMP ARM64 SoCs U-Boot custodian - Xilinx Microblaze/Zynq/ZynqMP/Versal SoCs