[U-Boot] [PATCH 0/7] SMP support for RISC-V

Auer, Lukas lukas.auer at aisec.fraunhofer.de
Mon Feb 11 22:44:50 UTC 2019


On Mon, 2019-02-11 at 23:16 +0100, Philipp Tomsich wrote:
> On 11.02.2019, at 23:13, Lukas Auer <lukas.auer at aisec.fraunhofer.de>
> wrote:
> > This patch series adds SMP support for RISC-V to U-Boot. It allows
> > U-Boot to run on multi-hart systems and will boot images passed to
> > bootm
> > on all harts. The bootm command is currently the only one that will
> > boot
> > images on all harts, bootefi is not yet supported.
> 
> You might want to clarify somewhere that a ‘hart’ is RISC-V
> terminology
> for a hardware thread.
> 

Good point, I will add a note in the next version. Thanks!

Lukas

> > The patches have been successfully tested on both QEMU (machine and
> > supervisor mode) and the HiFive Unleashed board [1] (supervisor
> > mode),
> > using BBL and OpenSBI.
> > Mainline QEMU requires two patches [2, 3] to run in this
> > configuration.
> > I will send a follow-up patch to enable SMP support on the HiFive
> > Unleashed board.
> > 
> > [1]: https://patchwork.ozlabs.org/project/uboot/list/?series=91125
> > [2]: https://patchwork.ozlabs.org/patch/1039493/
> > [3]: https://patchwork.ozlabs.org/patch/1039082/
> > 
> > 
> > Lukas Auer (7):
> >  riscv: add infrastructure for calling functions on other harts
> >  riscv: import the supervisor binary interface header file
> >  riscv: implement IPI platform functions using SBI
> >  riscv: delay initialization of caches and debug UART
> >  riscv: add support for multi-hart systems
> >  riscv: boot images passed to bootm on all harts
> >  riscv: qemu: enable SMP
> > 
> > arch/riscv/Kconfig                   |  36 +++++++++
> > arch/riscv/cpu/start.S               | 116
> > +++++++++++++++++++++++++--
> > arch/riscv/include/asm/csr.h         |   1 +
> > arch/riscv/include/asm/global_data.h |   5 ++
> > arch/riscv/include/asm/sbi.h         |  94 ++++++++++++++++++++++
> > arch/riscv/include/asm/smp.h         |  53 ++++++++++++
> > arch/riscv/lib/Makefile              |   2 +
> > arch/riscv/lib/bootm.c               |  13 ++-
> > arch/riscv/lib/sbi_ipi.c             |  25 ++++++
> > arch/riscv/lib/smp.c                 | 110
> > +++++++++++++++++++++++++
> > board/emulation/qemu-riscv/Kconfig   |   1 +
> > 11 files changed, 447 insertions(+), 9 deletions(-)
> > create mode 100644 arch/riscv/include/asm/sbi.h
> > create mode 100644 arch/riscv/include/asm/smp.h
> > create mode 100644 arch/riscv/lib/sbi_ipi.c
> > create mode 100644 arch/riscv/lib/smp.c
> > 
> > -- 
> > 2.20.1
> > 
> > _______________________________________________
> > U-Boot mailing list
> > U-Boot at lists.denx.de
> > https://lists.denx.de/listinfo/u-boot


More information about the U-Boot mailing list