[v4 00/17] Enable ARM Trusted Firmware for U-Boot

Siew Chin Lim elly.siew.chin.lim at intel.com
Fri Dec 18 04:28:36 CET 2020


This is the 4th version of patchset to enable ARM Trusted Firmware
for U-Boot for Intel Stratix10 and Agilex platform.

New U-boot flow with ARM Trusted Firmware (ATF) support:
SPL (EL3) -> ATF-BL31 (EL3) -> U-Boot Proper (EL2) -> Linux (EL1)

SPL loads the u-boot.itb which consist of:
1) u-boot-nodtb.bin (U-Boot Proper image)
2) u-boot.dtb (U-Boot Proper DTB)
3) bl31.bin (ATF-BL31 image)


Patch status:
Have changes: Patch 7, 8, 9, 16
Other patches unchanged.

Detail changelog can find in commit message.

v3->v4:
--------
Patch 7:
-  Add secure register access helper functions for SoC 64bits
   These secure register access functions allow U-Boot proper running
   at EL2 (non-secure) to access System Manager's secure registers
   by calling the ATF's PSCI runtime services (EL3/secure).

Patch 8:
-  Call secure register access helper function to set
   SDMMC's DRVSEL and SMPLSEL.

Patch 9:
-  Call secure register access helper function to setup
   the PHY interface.

patch 16:
-  Adjust BINMAN sequence in code, sorted by alphabetical order.
   No change on functionality.


History:
--------
[v1]: https://patchwork.ozlabs.org/project/uboot/cover/20200817043431.28718-1-chee.hong.ang@intel.com/
[v2]: https://patchwork.ozlabs.org/project/uboot/cover/20201001091614.184612-1-elly.siew.chin.lim@intel.com/
[v3]: https://patchwork.ozlabs.org/project/uboot/cover/20201015122955.10259-1-elly.siew.chin.lim@intel.com/


These patchsets have dependency on:
arm: socfpga: soc64: Add timeout waiting for NOC idle ACK
https://lists.denx.de/pipermail/u-boot/2020-August/423029.html

Rename Stratix10 FPGA driver and support Agilex
https://lists.denx.de/pipermail/u-boot/2020-August/422798.html

SoCFPGA mailbox driver fixes and enhancements
https://lists.denx.de/pipermail/u-boot/2020-August/423140.html

arm: socfpga: soc64: Initialize timer in SPL only
https://lists.denx.de/pipermail/u-boot/2020-July/419692.html

arm: socfpga: soc64: Remove PHY interface setup from misc arch init
https://lists.denx.de/pipermail/u-boot/2020-July/419690.html

Enable sysreset support for SoCFPGA SoC64 platforms
https://lists.denx.de/pipermail/u-boot/2020-August/422509.html

arm: socfpga: soc64: Disable CONFIG_PSCI_RESET
https://lists.denx.de/pipermail/u-boot/2020-August/423373.html


Chee Hong Ang (14):
  arm: socfpga: Add function for checking description from FIT image
  arm: socfpga: soc64: Load FIT image with ATF support
  arm: socfpga: soc64: Override 'lowlevel_init' to support ATF
  arm: socfpga: Disable "spin-table" method for booting Linux
  arm: socfpga: soc64: Add SMC helper function for Intel SOCFPGA
    (64bits)
  arm: socfpga: soc64: Define SMC function identifiers for PSCI SiP
    services
  mmc: dwmmc: socfpga: Add ATF support for MMC driver
  net: designware: socfpga: Add ATF support for MAC driver
  arm: socfpga: soc64: Add ATF support for Reset Manager driver
  arm: socfpga: soc64: Add ATF support for FPGA reconfig driver
  arm: socfpga: mailbox: Add 'SYSTEM_RESET' PSCI support to
    mbox_reset_cold()
  arm: socfpga: soc64: SSBL shall not setup stack on OCRAM
  arm: socfpga: soc64: Skip handoff data access in SSBL
  configs: socfpga: Add defconfig for Agilex and Stratix 10 with ATF
    support

Siew Chin Lim (3):
  arm: socfpga: Add secure register access helper functions for SoC
    64bits
  arm: socfpga: dts: soc64: Add binman node of FIT image with ATF
    support
  arm: socfpga: soc64: Enable FIT image generation using binman

 Makefile                                           |   7 +
 arch/arm/dts/socfpga_agilex-u-boot.dtsi            |   4 +-
 arch/arm/dts/socfpga_soc64_fit-u-boot.dtsi         | 120 +++++
 arch/arm/dts/socfpga_stratix10-u-boot.dtsi         |   8 +
 arch/arm/dts/socfpga_stratix10_socdk-u-boot.dtsi   |   4 +-
 arch/arm/mach-socfpga/Kconfig                      |   4 +-
 arch/arm/mach-socfpga/Makefile                     |   5 +
 arch/arm/mach-socfpga/board.c                      |  12 +-
 .../mach-socfpga/include/mach/secure_reg_helper.h  |  19 +
 arch/arm/mach-socfpga/include/mach/smc_api.h       |  13 +
 arch/arm/mach-socfpga/lowlevel_init_soc64.S        |  76 +++
 arch/arm/mach-socfpga/mailbox_s10.c                |   5 +
 arch/arm/mach-socfpga/reset_manager_s10.c          |  13 +
 arch/arm/mach-socfpga/secure_reg_helper.c          |  73 +++
 arch/arm/mach-socfpga/smc_api.c                    |  56 ++
 arch/arm/mach-socfpga/wrap_pll_config_s10.c        |   3 +-
 configs/socfpga_agilex_atf_defconfig               |  72 +++
 configs/socfpga_stratix10_atf_defconfig            |  74 +++
 drivers/fpga/intel_sdm_mb.c                        | 139 +++++
 drivers/mmc/socfpga_dw_mmc.c                       |   8 +
 drivers/net/dwmac_socfpga.c                        |  34 +-
 include/configs/socfpga_soc64_common.h             |  24 +-
 include/linux/intel-smc.h                          | 573 +++++++++++++++++++++
 23 files changed, 1333 insertions(+), 13 deletions(-)
 create mode 100644 arch/arm/dts/socfpga_soc64_fit-u-boot.dtsi
 create mode 100644 arch/arm/dts/socfpga_stratix10-u-boot.dtsi
 create mode 100644 arch/arm/mach-socfpga/include/mach/secure_reg_helper.h
 create mode 100644 arch/arm/mach-socfpga/include/mach/smc_api.h
 create mode 100644 arch/arm/mach-socfpga/lowlevel_init_soc64.S
 create mode 100644 arch/arm/mach-socfpga/secure_reg_helper.c
 create mode 100644 arch/arm/mach-socfpga/smc_api.c
 create mode 100644 configs/socfpga_agilex_atf_defconfig
 create mode 100644 configs/socfpga_stratix10_atf_defconfig
 create mode 100644 include/linux/intel-smc.h

-- 
2.13.0



More information about the U-Boot mailing list