From mboxrd@z Thu Jan 1 00:00:00 1970 From: Auer, Lukas Date: Mon, 17 Sep 2018 21:54:53 +0000 Subject: [U-Boot] [RESEND PATCH v2 14/15] riscv: Add QEMU virt board support In-Reply-To: References: <1536641694-4200-1-git-send-email-bmeng.cn@gmail.com> <1536641694-4200-15-git-send-email-bmeng.cn@gmail.com> Message-ID: List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de 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 > 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 > > > > > > --- > > > > Reviewed-by: Lukas Auer > > > > [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