[U-Boot] [RESEND PATCH v2 14/15] riscv: Add QEMU virt board support

Auer, Lukas lukas.auer at aisec.fraunhofer.de
Mon Sep 17 21:54:53 UTC 2018


Hi Bin,

On Mon, 2018-09-17 at 13:18 +0800, Bin Meng wrote:
> Hi Lukas,
> 
> On Mon, Sep 17, 2018 at 5:02 AM Auer, Lukas
> <lukas.auer at aisec.fraunhofer.de> wrote:
> > 
> > Hi Bin,
> > 
> > On Mon, 2018-09-10 at 21:54 -0700, Bin Meng wrote:
> > > This adds QEMU RISC-V 'virt' board target support, with the hope
> > > of
> > > helping people easily test U-Boot on RISC-V.
> > > 
> > > The QEMU virt machine models a generic RISC-V virtual machine
> > > with
> > > support for the VirtIO standard networking and block storage
> > > devices.
> > > It has CLINT, PLIC, 16550A UART devices in addition to VirtIO and
> > > it also uses device-tree to pass configuration information to
> > > guest
> > > software. It implements RISC-V privileged architecture spec
> > > v1.10.
> > > 
> > > Both 32-bit and 64-bit builds are supported. Support is pretty
> > > much
> > > preliminary, only booting to U-Boot shell with the UART driver on
> > > a single core. Booting Linux is not supported yet.
> > > 
> > > Signed-off-by: Bin Meng <bmeng.cn at gmail.com>
> > > 
> > > ---
> > 
> > Reviewed-by: Lukas Auer <lukas.auer at aisec.fraunhofer.de>
> > 
> > [snip]
> > 
> > > 
> > > diff --git a/board/emulation/qemu-riscv/Kconfig
> > > b/board/emulation/qemu-riscv/Kconfig
> > > new file mode 100644
> > > index 0000000..029f5efb
> > > --- /dev/null
> > > +++ b/board/emulation/qemu-riscv/Kconfig
> > > @@ -0,0 +1,21 @@
> > > +if TARGET_QEMU_VIRT
> > > +
> > > +config SYS_BOARD
> > > +     default "qemu-riscv"
> > > +
> > > +config SYS_VENDOR
> > > +     default "emulation"
> > > +
> > > +config SYS_CPU
> > > +     default "qemu"
> > > +
> > > +config SYS_CONFIG_NAME
> > > +     default "qemu-riscv"
> > > +
> > > +config SYS_TEXT_BASE
> > > +     default 0x80000000
> > > +
> > > +config BOARD_SPECIFIC_OPTIONS # dummy
> > > +     def_bool y
> > > +
> > 
> > Out of curiosity, what is BOARD_SPECIFIC_OPTIONS used for? I see
> > that
> > other boards have included it as well, but I don't see it actually
> > used
> > anywhere.
> 
> This option is used to select or imply some board-specific options,
> mostly drivers, so that we can avoid specifying them in the board
> defconfig files. I think I should have at least moved the
> CONFIG_SYS_NS16550 here. I am also working on virtio drivers, and
> once
> they are done, these drivers can be implied here too.
> 
> Regards,
> Bin

That makes sense and is a nice way of implementing this. Thanks for the
description!

Thanks,
Lukas


More information about the U-Boot mailing list