[PATCH v12 00/13] fpga: zynqmp: Adding support of loading authenticated images
Michal Simek
michal.simek at amd.com
Tue Jul 26 09:32:55 CEST 2022
On 7/22/22 16:16, Oleksandr Suvorov wrote:
> CAUTION: This message has originated from an External Source. Please use proper judgment and caution when opening attachments, clicking links, or responding to this email.
>
>
> This patchset introduces support for the authenticated and encrypted
> FPGA images on ZynqMP boards, besides that introducing common way to
> pass the compatible property to any fpga driver.
>
> It bases on the initial work by Jorge Ramirez-Ortiz <jorge at foundries.io>
> https://patchwork.ozlabs.org/project/uboot/patch/20211015091506.2602-1-jorge@foundries.io/
> https://patchwork.ozlabs.org/project/uboot/patch/20211005111324.19749-3-jorge@foundries.io/
>
> Changes in v12:
> - define the function only if FPGA_LOAD_SECURE enabled;
> - convert "compatible" to flags only if FPGA_LOAD_SECURE enabled;
> - fix a commit message
> - remove obsolete debug() message
> - exclude all secure-related code if FPGA_LOAD_SECURE is disabled
> - reduce the size of SPL if FPGA_LOAD_SECURE disabled.
>
> Changes in v11:
> - Fix treating an incoming FPGA image with empty flags parameter as
> legacy.
> - add Tested-by records.
>
> Changes in v10:
> - move FPGA flags to macros;
> - initialize xilinx_desc structs directly, removing *_DESC macros;
> - initialize flags for mach-zynq;
> - fix mixed types of return value;
> - made the message about ignoring legacy compatibe option as debug;
> - fix grammar
> - Support DDR images only if FPGA_LOAD_SECURE enabled.
> - Support ENC images only if FPGA_LOAD_SECURE enabled.
>
> Changes in v9:
> - remove an alien commit from a patchset :)
>
> Changes in v8:
> - Michal Simek's suggestions addressed:
> -- introduce the compatible flags in xilinx_desc;
> -- pass a binary compatible flag instead of "compatible" property to
> an FPGA driver.
> - Optimize a zynqmp_load() function.
>
> Changes in v7:
> - apply Michal Simek's suggestions
> As I applied changes on Oleksandr's patches, I indicated it by
> specifying myself as co-author in the commits logs. I am not sure
> if that is the convention of marking it.
>
> Changes in v6:
> - add support for the encrypted bitfiles.
>
> Changes in v5:
> - replace ifdef with if() where it's possible.
>
> Changes in v4:
> - change interface to xilinx_desc->operations->open() callback.
> - fix a bug from previous version of the patchset in dereferencing
> of a parent fpga_desc structure.
>
> Changes in v3:
> - remove the patch which introduced CMD_SPL_FPGA_LOAD_SECURE.
> - fix mixing definitions/declarations.
> - replace strcmp() calls with more secure strncmp().
> - document the "u-boot,zynqmp-fpga-ddrauth" compatible string.
> - fix code style by check-patch recommendations.
>
> Changes in v2:
> - add function fit_fpga_load() to simplify calls of fpga_load()
> from contexts without a compatible attribute.
> - move all ZynqMP-specific logic to drivers/fpga/zynqmppl.c
> - prepare for passing a "compatible" FDT property to any fpga driver.
>
> Adrian Fiergolski (1):
> fpga: zynqmp: support loading encrypted bitfiles
>
> Oleksandr Suvorov (12):
> fpga: add option for loading FPGA secure bitstreams
> fpga: xilinx: add missed identifier names
> fpga: xilinx: add bitstream flags to driver desc
> fpga: zynqmp: add str2flags call
> fpga: xilinx: pass compatible flags to xilinx_load()
> fpga: pass compatible flags to fpga_load()
> fpga: add fpga_compatible2flag
> spl: fit: pass real compatible flags to fpga_load()
> fpga: xilinx: pass compatible flags to load() callback
> fpga: zynqmp: reduce zynqmppl_load() code
> fpga: zynqmp: add bitstream compatible checking
> fpga: zynqmp: support loading authenticated images
>
> arch/arm/mach-zynq/cpu.c | 1 +
> board/xilinx/versal/board.c | 5 +-
> board/xilinx/zynqmp/zynqmp.c | 5 +-
> boot/Kconfig | 4 +-
> boot/image-board.c | 4 +-
> cmd/Kconfig | 3 +-
> cmd/fpga.c | 8 +--
> common/spl/spl_fit.c | 17 +++--
> doc/uImage.FIT/source_file_format.txt | 7 +-
> drivers/fpga/Kconfig | 14 ++++
> drivers/fpga/fpga.c | 33 ++++++++-
> drivers/fpga/spartan2.c | 2 +-
> drivers/fpga/spartan3.c | 2 +-
> drivers/fpga/versalpl.c | 2 +-
> drivers/fpga/virtex2.c | 2 +-
> drivers/fpga/xilinx.c | 8 +--
> drivers/fpga/zynqmppl.c | 99 ++++++++++++++++++++++-----
> drivers/fpga/zynqpl.c | 2 +-
> include/fpga.h | 4 +-
> include/versalpl.h | 3 -
> include/xilinx.h | 21 ++++--
> include/zynqmppl.h | 9 ++-
> 22 files changed, 199 insertions(+), 56 deletions(-)
>
> --
> 2.36.1
>
Applied with adding one macro in 12/13.
Thanks,
Michal
More information about the U-Boot
mailing list