From: "Sunil V L" <sunilvl@ventanamicro.com>
To: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>,
Jiewen Yao <jiewen.yao@intel.com>,
Jordan Justen <jordan.l.justen@intel.com>,
Gerd Hoffmann <kraxel@redhat.com>,
Andrei Warkentin <andrei.warkentin@intel.com>,
Dann Frazier <dann.frazier@canonical.com>,
devel@edk2.groups.io
Subject: Re: [PATCH v2 4/4] OvmfPkg/RiscVVirt: Add a readme for build and test
Date: Fri, 16 Jun 2023 22:09:53 +0530 [thread overview]
Message-ID: <ZIyQWbihs4l005Oi@sunil-laptop> (raw)
In-Reply-To: <82875e92-7476-5665-4546-a0ac1f31b464@canonical.com>
Hi Heinrich,
Thank you very much for the review!
On Fri, Jun 16, 2023 at 03:06:49PM +0200, Heinrich Schuchardt wrote:
> On 6/16/23 12:16, Sunil V L wrote:
> > Add a readme file which provides information regarding how
> > to build and test EDK2 on RISC-V qemu virt platform.
> >
> > Signed-off-by: Sunil V L <sunilvl@...>
> > Cc: Ard Biesheuvel <ardb+tianocore@...>
> > Cc: Jiewen Yao <jiewen.yao@...>
> > Cc: Jordan Justen <jordan.l.justen@...>
> > Cc: Gerd Hoffmann <kraxel@...>
> > Cc: Andrei Warkentin <andrei.warkentin@...>
>
> Unfortunately you only sent me the cover letter. Copying from the mailing
> list may have led to some formatting being lost.
>
Ahh, I usually copy only what Maintainer.txt asks in individual patches and
copy others in the cover letter so that they are aware of the series.
Will add you in CC for v3.
> > ---
> > OvmfPkg/RiscVVirt/README.md | 46 +++++++++++++++++++++++++++++++++++++
> > 1 file changed, 46 insertions(+)
> > create mode 100644 OvmfPkg/RiscVVirt/README.md
> >
> > diff --git a/OvmfPkg/RiscVVirt/README.md b/OvmfPkg/RiscVVirt/README.md
> > new file mode 100644
> > index 000000000000..b07d5b6d3bf9
> > --- /dev/null
> > +++ b/OvmfPkg/RiscVVirt/README.md
> > @@ -0,0 +1,46 @@
> > +# Support for RISC-V qemu virt platform
> > +
> > +## Overview
> > +RISC-V qemu 'virt' is a generic platform which does not correspond to any real
>
> %s/qemu/QEMU/
>
OK.
> > +hardware.
> > +
> > +EDK2 for RISC-V virt platform is a payload (S-mode) for a previous stage M-mode
>
> %s/for/for the/
>
OK.
> > +firmware like opensbi. It follows PEI less design.
>
> %s/opensbi/OpenSBI/
>
OK.
> > +
> > +The minimum qemu version required is
>
> %s/qemu/QEMU/
>
OK.
> > +**[8.1](https://wiki.qemu.org/Planning/8.1)** or with commit
> > +[7efd65423a](https://github.com/qemu/qemu/commit/7efd65423ab22e6f5890ca08ae40c84d6660242f)
> > +which supports separate pflash devices for EDK2 code and variable storage.
> > +
> > +## Build
> > + export WORKSPACE=`pwd`
> > + export GCC5_RISCV64_PREFIX=riscv64-linux-gnu-
> > + export PACKAGES_PATH=$WORKSPACE/edk2
> > + export EDK_TOOLS_PATH=$WORKSPACE/edk2/BaseTools
> > + source edk2/edksetup.sh
> > + make -C edk2/BaseTools
> > + source edk2/edksetup.sh BaseTools
> > + build -a RISCV64 --buildtarget RELEASE -p OvmfPkg/RiscVVirt/RiscVVirtQemu.dsc -t GCC5
> > +
> > +## Test
> > +1) RISC-V qemu pflash devices should be of of size 32MiB.
> > +
> > + `truncate -s 32M Build/RiscVVirtQemu/RELEASE_GCC5/FV/RISCV_VIRT_CODE.fd`
> > +
> > + `truncate -s 32M Build/RiscVVirtQemu/RELEASE_GCC5/FV/RISCV_VIRT_VARS.fd`
> > +
> > +2) Run qemu
>
> %s/qemu/QEMU/
>
OK.
> > +
> > + qemu-system-riscv64 \
> > + -accel tcg -m 4096 -smp 2 \
> > + -serial mon:stdio \
> > + -device virtio-gpu-pci -full-screen \
> > + -device qemu-xhci \
> > + -device usb-kbd \
> > + -blockdev node-name=pflash0,driver=file,read-only=on,filename=RISCV_VIRT_CODE.fd \
> > + -blockdev node-name=pflash1,driver=file,filename=RISCV_VIRT_VARS.fd \
> > + -M virt,pflash0=pflash0,pflash1=pflash1,acpi=off \
> > + -kernel linux/arch/riscv/boot/Image \
> > + -initrd buildroot/output/images/rootfs.cpio \
>
> If you use -kernel and -initrd, why would you use EDK II? It is much easier
> to use the kernel and initrd that is on the drive that you will need anyway.
>
I thought it may be easier option for users without much dependencies on
the disk image. But I agree with you that it needs to be OS agnostic
example. openSUSE Tumbleweed disk image has everything required
pre-installed. Let me add that as the example use case.
Thanks!
Sunil
prev parent reply other threads:[~2023-06-16 16:40 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-06-16 10:16 [PATCH v2 0/4] OvmfPkg/RiscVVirt: Separate code and variable storage Sunil V L
2023-06-16 10:16 ` [PATCH v2 1/4] OvmfPkg/RiscVVirt: Fix couple of issues in VarStore Sunil V L
2023-06-16 10:16 ` [PATCH v2 2/4] OvmfPkg/RiscVVirt: Add VirtNorFlashDeviceTreeLib library Sunil V L
2023-06-16 10:16 ` [PATCH v2 3/4] OvmfPkg/RiscVVirt: Add support for separate code and variable store Sunil V L
2023-06-16 10:16 ` [PATCH v2 4/4] OvmfPkg/RiscVVirt: Add a readme for build and test Sunil V L
2023-06-16 13:06 ` Heinrich Schuchardt
2023-06-16 16:39 ` Sunil V L [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ZIyQWbihs4l005Oi@sunil-laptop \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox