Hi Lukas > > From: Lukas Auer [mailto:lukas.a...@aisec.fraunhofer.de] > > Sent: Thursday, August 08, 2019 5:12 AM > > To: u-boot@lists.denx.de > > Cc: Atish Patra; Rick Jian-Zhi Chen(陳建志); Bin Meng; Sagar Kadam; Alistair > > Francis; Anup Patel; Troy Benjegerdes; Lukas Auer; Abel Vesa; Alex Kiernan; > > Alex Marginean; Alexander Graf; Andreas Dannenberg; Andrew F. Davis; Anup > > Patel; Anup Patel; Atish Patra; Bartosz Golaszewski; Chris Packham; Eugeniu > > Rosca; Fabio Estevam; Heiko Schocher; Heinrich Schuchardt; Jagan Teki; > > Jean-Jacques Hiblot; Jens Wiklander; Julius Werner; Kever Yang; Lokesh > > Vutla; > > Lukasz Majewski; Marek Vasut; Marek Vasut; Markus Klotzbuecher; Michal > > Simek; Miquel Raynal; Paul Burton; Peng Fan; Philipp Tomsich; Philippe > > Reynes; Ryder Lee; Shawn Guo; Simon Glass; Simon Goldschmidt; Stefan > > Roese; Stefano Babic; Tien Fong Chee; Vignesh R; Ye Li > > Subject: [PATCH v3 00/11] SPL support for RISC-V > > > > This series adds support for SPL to RISC-V U-Boot. Images can be booted via > > OpenSBI (FW_DYNAMIC firmware) or by directly jumping to them. In the > > former case, OpenSBI and U-Boot proper are bundled as a FIT image and made > > available to U-Boot SPL. Currently, only the QEMU board enables U-Boot SPL > > with a dedicated configuration. It uses RAM as SPL boot device. > > > > On many RISC-V CPUs, the device tree is provided to U-Boot by the first > > stage > > bootloader. This requires changes to U-Boot SPL (patches 1, > > 2 and 3), which modify the behavior on other boards as well. > > > > To test this series, OpenSBI has to be compiled first. The fw_dynamic.bin > > binary must be copied into the U-Boot root directory. > > Alternatively, the location of the binary can be specified with the OPENSBI > > environment variable. U-Boot can then be build as normal using the > > configuration qemu-riscv64_spl_defconfig for 64-bit builds or > > qemu-riscv32_spl_defconfig for 32-bit builds. The outputs from the build > > process are the U-Boot SPL binary (spl/u-boot-spl.bin) and the U-Boot FIT > > image (u-boot.itb) containing U-Boot proper and OpenSBI. > > > > U-Boot can be run in QEMU with the following command. > > > > qemu-system-riscv64 -nographic -machine virt -kernel spl/u-boot-spl \ > > -device loader,file=u-boot.itb,addr=0x80200000 > > > > Changes in v3: > > - Rebase on u-boot-riscv/master > > - Update commit message to include minimum version of OpenSBI > > - Rebase on u-boot/master > > - Add note on minimum version of OpenSBI > >
I have applied the patchsets to u-boot-riscv/master, thanks! Regards, Rick > > Changes in v2: > > - Rebase on master and format documentation as reStructuredText > > > > Lukas Auer (11): > > fdtdec: make CONFIG_OF_PRIOR_STAGE available in SPL > > Makefile: support building SPL FIT images without device trees > > spl: fit: use U-Boot device tree when FIT image has no device tree > > riscv: add run mode configuration for SPL > > spl: support booting via RISC-V OpenSBI > > riscv: add SPL support > > riscv: support SPL stack and global data relocation > > riscv: add a generic FIT generator script > > riscv: set default FIT generator script and build target for SPL > > builds > > riscv: qemu: add SPL configuration > > doc: update QEMU RISC-V documentation > > > > Kconfig | 4 +- > > Makefile | 8 +- > > arch/Kconfig | 6 ++ > > arch/riscv/Kconfig | 36 +++++++-- > > arch/riscv/cpu/ax25/Kconfig | 6 +- > > arch/riscv/cpu/cpu.c | 6 +- > > arch/riscv/cpu/generic/Kconfig | 5 +- > > arch/riscv/cpu/start.S | 62 ++++++++++++++- > > arch/riscv/cpu/u-boot-spl.lds | 82 +++++++++++++++++++ > > arch/riscv/include/asm/encoding.h | 2 +- > > arch/riscv/include/asm/spl.h | 31 ++++++++ > > arch/riscv/lib/Makefile | 8 +- > > arch/riscv/lib/mkimage_fit_opensbi.sh | 100 > > ++++++++++++++++++++++++ > > arch/riscv/lib/spl.c | 48 ++++++++++++ > > board/emulation/qemu-riscv/Kconfig | 10 +++ > > board/emulation/qemu-riscv/MAINTAINERS | 2 + > > board/emulation/qemu-riscv/qemu-riscv.c | 17 ++++ > > common/image.c | 1 + > > common/spl/Kconfig | 17 ++++ > > common/spl/Makefile | 1 + > > common/spl/spl.c | 8 +- > > common/spl/spl_fit.c | 37 ++++++--- > > common/spl/spl_opensbi.c | 85 > > ++++++++++++++++++++ > > configs/qemu-riscv32_spl_defconfig | 11 +++ > > configs/qemu-riscv64_spl_defconfig | 12 +++ > > doc/board/emulation/qemu-riscv.rst | 60 +++++++++++++- > > include/configs/qemu-riscv.h | 14 ++++ > > include/fdtdec.h | 2 +- > > include/image.h | 1 + > > include/opensbi.h | 40 ++++++++++ > > include/spl.h | 5 ++ > > lib/fdtdec.c | 6 +- > > 32 files changed, 691 insertions(+), 42 deletions(-) create mode 100644 > > arch/riscv/cpu/u-boot-spl.lds create mode 100644 > > arch/riscv/include/asm/spl.h create mode 100755 > > arch/riscv/lib/mkimage_fit_opensbi.sh > > create mode 100644 arch/riscv/lib/spl.c create mode 100644 > > common/spl/spl_opensbi.c create mode 100644 > > configs/qemu-riscv32_spl_defconfig > > create mode 100644 configs/qemu-riscv64_spl_defconfig > > create mode 100644 include/opensbi.h > > > > -- > > 2.21.0 > > CONFIDENTIALITY NOTICE: > > This e-mail (and its attachments) may contain confidential and legally > privileged information or information protected from disclosure. If you are > not the intended recipient, you are hereby notified that any disclosure, > copying, distribution, or use of the information contained herein is strictly > prohibited. In this case, please immediately notify the sender by return > e-mail, delete the message (and any accompanying documents) and destroy all > printed hard copies. Thank you for your cooperation. > > Copyright ANDES TECHNOLOGY CORPORATION - All Rights Reserved. _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot