[PATCH v10 00/13] fpga: zynqmp: Adding support of loading authenticated images

Adrian Fiergolski adrian.fiergolski at fastree3d.com
Fri Jun 17 16:36:56 CEST 2022


Hi Oleksandr,

Thank you for the follow-up.

I took the chance to test this patchset in the actual hardware. I 
focused on the encrypted bitfiles (not authenticated) and I confirm it 
works.

Regads,
Adrian

On 12.06.2022 00:06, Oleksandr Suvorov wrote:
> 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 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: add fpga_compatible2flag
>    fpga: xilinx: pass compatible flags to xilinx_load()
>    fpga: pass compatible flags to fpga_load()
>    spl: fit: pass real compatible flags to fpga_load()
>    fpga: xilinx: pass compatible flags to load() callback
>    fpga: zynqmp: optimize 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                  | 16 +++--
>   doc/uImage.FIT/source_file_format.txt |  7 +-
>   drivers/fpga/Kconfig                  | 14 ++++
>   drivers/fpga/fpga.c                   | 31 ++++++++-
>   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               | 96 ++++++++++++++++++++++-----
>   drivers/fpga/zynqpl.c                 |  2 +-
>   include/fpga.h                        |  4 +-
>   include/versalpl.h                    |  3 -
>   include/xilinx.h                      | 19 ++++--
>   include/zynqmppl.h                    |  9 ++-
>   22 files changed, 191 insertions(+), 56 deletions(-)
>


More information about the U-Boot mailing list