diff options
author | Yau Wai Gan <yau.wai.gan@intel.com> | 2022-03-01 18:05:39 +0800 |
---|---|---|
committer | Yau Wai Gan <yau.wai.gan@intel.com> | 2022-03-01 18:05:39 +0800 |
commit | 24e26ba4a0d8fe816e32e760537a3f356823ba7b (patch) | |
tree | 93b6c013365cbf26d17c79122bb0e34360433364 | |
parent | ee63370553cd01f7237174fe1971991271b7648b (diff) | |
download | u-boot-socfpga-socfpga_v2021.07.tar.gz |
doc: README.socfpga: Update for U-boot 2021.07rel_socfpga_v2021.07_22.08.02_prrel_socfpga_v2021.07_22.08.01_prrel_socfpga_v2021.07_22.07.02_prrel_socfpga_v2021.07_22.07.01_prrel_socfpga_v2021.07_22.06.02_prrel_socfpga_v2021.07_22.06.01_prrel_socfpga_v2021.07_22.05.02_prrel_socfpga_v2021.07_22.05.01_prrel_socfpga_v2021.07_22.04.02_prrel_socfpga_v2021.07_22.04.01_prrel_socfpga_v2021.07_22.03.02_prrel_socfpga_v2021.07_22.03.01_prsocfpga_v2021.07
Update the tested Intel Quartus software versions and
the major changes in this u-boot version.
Signed-off-by: Yau Wai Gan <yau.wai.gan@intel.com>
-rw-r--r-- | doc/README.socfpga | 75 |
1 files changed, 54 insertions, 21 deletions
diff --git a/doc/README.socfpga b/doc/README.socfpga index 48ce9f7e0b..970af6c946 100644 --- a/doc/README.socfpga +++ b/doc/README.socfpga @@ -22,15 +22,14 @@ Table of Contents 1. Device Family Support vs Tested Intel Quartus --------------------------------------------------------------------- - Processor SOCFPGA Device Family Intel Quartus Prime Pro Edition Intel Quartus Prime Standard Edition - -------------------------------------------------------------------------------------------------------------------------------------------- - Dual-core ARM Cortex-A9 Cyclone V N/A 20.1 - Arria V N/A 20.1 - Arria 10 21.1 20.1 + Processor SOCFPGA Device Family Intel Quartus Prime Pro Edition Intel Quartus Prime Standard Edition + ------------------------------------------------------------------------------------------------------------------------------------------------------------ + Dual-core ARM Cortex-A9 Cyclone V N/A 21.1 + Arria 10 21.4 N/A - Quad-core ARM Cortex-A53 Stratix 10 21.1 N/A - Agilex 21.1 N/A - eASIC N5X Early access N/A + Quad-core ARM Cortex-A53 Stratix 10 20.1, 20.2, 20.3, 20.4, 21.1, 21.2, 21.3, 21.4 N/A + Agilex 20.1, 20.2, 20.3, 20.4, 21.1, 21.2, 21.3, 21.4 N/A + eASIC N5X 21.3 N/A 2. Feature Support @@ -71,27 +70,61 @@ Table of Contents 3. Major Changes and Known Issues --------------------------------------------------------------------- - 3.1 Upgraded U-boot to version v2021.04 + 3.1 Upgraded U-boot to version v2021.07 - 3.2 Switched to use 'binman' tool to generate FIT image (*.itb) + 3.2 U-boot SPL supports spl-boot-order which is defined in device tree: + socfpga_<device family>_socdk-u-boot.dtsi for Stratix 10, Agilex and N5X - Please refer to section '8. binman for U-boot ATF flow' for more information. + The default boot sequence is defined as following and can be updated to suit your need. + chosen { + u-boot,spl-boot-order = &mmc,&flash0,&nand; + }; - 3.3 Updated *_atf_defconfig files to load Linux via FIT image + 3.3 Updated socfpga defconfig files - Standardized all ATF boot flow to load Linux via FIT image for all SOC64 devices - (Stratix 10, Agilex, eASIC N5X). + The default defconfig for Stratix 10, Agilex and N5X are named following this convention: + socfpga_<device family>_defconfig - Boot flow before U-boot version v2021.04: - SPL --(U-boot.itb)--> U-boot --(booti: Image, dtb)--> Linux + This config uses ATF in the boot flow. This config support booting from SD card, + QSPI NOR flash, and NAND flash. - Boot flow started in U-boot version v2021.04: - SPL --(U-boot.itb)--> U-boot --(bootm: kernel.itb)--> Linux + For legacy boot flow (without ATF), the configs are named following this convention: + socfpga_<device family>_<boot flash>_legacy_defconfig - 3.4 Add support to get JTAG usercode via SMC call + 3.4 Enable distro_boot for Stratix 10 and Agilex - Add SMC Function ID "INTEL_SIP_SMC_GET_USERCODE" to get device JTAG usercode for all - SOC64 devices (Stratix 10, Agilex, eASIC N5X). + The distro_boot is enabled by default for booting Linux. The boot process search for + U-boot script (boot.scr.uimg) which is in FIT image format. See [1] for reference. + + Use the following command to generate the script FIT image: + mkimage -f uboot_script.its boot.scr.uimg + + 3.5 Enable UBIFS support for booting from NAND flash + + 3.6 Enable FPGA core configuration using bootm command + + If the FPGA core raw binary file (RBF) is added in the kernel boot FIT image (kernel.itb), + the bootm operation will auto configure the FPGA during Linux boot-up. + + Example of kernel FIT image with FPGA RBF: + fpga-0 { + description = "FPGA bitstream for GHRD"; + data = /incbin/("./ghrd.core.rbf"); + type = "fpga"; + arch = "arm64"; + compression = "none"; + load = <0xA000000>; + hash { + algo = "crc32"; + }; + }; + + See [2] for complete file. Removing the FPGA section from FIT image will skip the FPGA configuration + during boot-up. + + References: + [1] https://releases.rocketboards.org/release/2021.11/uboot-script/ + [2] https://releases.rocketboards.org/release/2021.11/gsrd/agilex_gsrd/fit_kernel_agilex.its 4. Cyclone V / Arria V generating the handoff header files for U-Boot SPL --------------------------------------------------------------------- |