From: "Laszlo Ersek" <lersek@redhat.com>
To: Sunil V L <sunilvl@ventanamicro.com>
Cc: edk2-devel-groups-io <devel@edk2.groups.io>,
Andrei Warkentin <andrei.warkentin@intel.com>,
Ard Biesheuvel <ardb+tianocore@kernel.org>,
Gerd Hoffmann <kraxel@redhat.com>,
Jiewen Yao <jiewen.yao@intel.com>,
Jordan Justen <jordan.l.justen@intel.com>
Subject: Re: [edk2-devel] [PATCH 1/1] OvmfPkg/RiscVVirt/README.md: bring your own OpenSBI
Date: Mon, 11 Sep 2023 15:16:28 +0200 [thread overview]
Message-ID: <cd35de8d-e0ba-c4fc-c0ae-63e84c550796@redhat.com> (raw)
In-Reply-To: <ZP7oqU5+lhrncekg@sunil-laptop>
On 9/11/23 12:15, Sunil V L wrote:
> On Mon, Sep 11, 2023 at 09:07:46AM +0200, Laszlo Ersek wrote:
>> On 9/11/23 08:22, Sunil V L wrote:
>>> On Mon, Sep 11, 2023 at 08:15:26AM +0200, Laszlo Ersek wrote:
>>>> On 9/11/23 07:32, Laszlo Ersek wrote:
>>>>> On 9/8/23 08:13, Sunil V L wrote:
>>>>>> Hi Laszlo,
>>>>>>
>>>>>> On Thu, Sep 07, 2023 at 04:58:25PM +0200, Laszlo Ersek wrote:
>>>>>>> Explain how users can compose their pre-OS environment purely from
>>>>>>> binaries they've built themselves.
>>>>>>>
>>>>>>> Cc: Andrei Warkentin <andrei.warkentin@intel.com>
>>>>>>> Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>
>>>>>>> Cc: Gerd Hoffmann <kraxel@redhat.com>
>>>>>>> Cc: Jiewen Yao <jiewen.yao@intel.com>
>>>>>>> Cc: Jordan Justen <jordan.l.justen@intel.com>
>>>>>>> Cc: Sunil V L <sunilvl@ventanamicro.com>
>>>>>>> Signed-off-by: Laszlo Ersek <lersek@redhat.com>
>>>>>>> ---
>>>>>>>
>>>>>>> Notes:
>>>>>>> rendered version:
>>>>>>>
>>>>>>> https://github.com/lersek/edk2/tree/bring-your-own-opensbi/OvmfPkg/RiscVVirt#test-with-your-own-opensbi-binary
>>>>>>>
>>>>>>> OvmfPkg/RiscVVirt/README.md | 17 +++++++++++++++++
>>>>>>> 1 file changed, 17 insertions(+)
>>>>>>>
>>>>>>> diff --git a/OvmfPkg/RiscVVirt/README.md b/OvmfPkg/RiscVVirt/README.md
>>>>>>> index 8c3ac37b802a..dbb40bbe89b0 100644
>>>>>>> --- a/OvmfPkg/RiscVVirt/README.md
>>>>>>> +++ b/OvmfPkg/RiscVVirt/README.md
>>>>>>> @@ -69,3 +69,20 @@ Below example shows how to boot openSUSE Tumbleweed E20.
>>>>>>> -device virtio-net-pci,netdev=net0 \
>>>>>>> -device virtio-blk-device,drive=hd0 \
>>>>>>> -drive file=openSUSE-Tumbleweed-RISC-V-E20-efi.riscv64.raw,format=raw,id=hd0
>>>>>>> +
>>>>>>> +## Test with your own OpenSBI binary
>>>>>>> +Using the above QEMU command line, **RISCV_VIRT_CODE.fd** is launched by the
>>>>>>> +OpenSBI binary that is bundled with QEMU. You can build your own OpenSBI binary
>>>>>>> +as well:
>>>>>>> +
>>>>>>> + OPENSBI_DIR=...
>>>>>>> + git clone https://github.com/riscv/opensbi.git $OPENSBI_DIR
>>>>>>> + make -C $OPENSBI_DIR \
>>>>>>> + -j $(getconf _NPROCESSORS_ONLN) \
>>>>>>> + CROSS_COMPILE=riscv64-linux-gnu- \
>>>>>>> + PLATFORM=generic
>>>>>>> +
>>>>>> Do we need to duplicate these OpenSBI build instructions in EDK2? IMO,
>>>>>> we should just document how to use -bios to use custom OpenSBI image.
>>>>>> The build instructions for other software repos can change at any
>>>>>> time.
>>>>>
>>>>> Can we include the opensbi project URL at least?
>>>>
>>>> BTW, I disagree with your larger message (as I perceive it).
>>>>
>>>> While it's true that build instructions may change at any time, that's
>>>> just a generic statement about any software and any documentation in
>>>> existence. All documentation goes stale at some point.
>>>>
>>> Agreed. But my point is, this documentation which provides build
>>> instructions of opensbi doesn't belong to edk2 but opensbi. If something
>>> is missing in the opensbi build instructions like you mentioned, it
>>> should be submitted as a patch to opensbi repo rather edk2, right?
>>
>> I don't know.
>>
>> If two projects are used in conjunction, which project's documentation
>> should cover the combined use?
>>
> Okay, fair enough. Let's add it. It appears to be very useful for any
> one new to RISC-V+edk2 and OpenSBI. Do you want to update the -kernel
> option also in v2 or will it be separate patch?
I think I'd like -kernel etc to be an incremental (= separate) patch,
because first I need to test it.
Thanks!
Laszlo
>
> Thanks,
> Sunil
>> Laszlo
>>
>>>
>>> -Sunil
>>>
>>>> And in this particular case, I needed to fish out the build commands,
>>>> and the resultant "fw_dynamic.bin" filename, from the QEMU tree, not the
>>>> OpenSBI tree. I'm not aware of any documentation that makes a dedicated
>>>> statement about building OpenSBI *for* running edk2.
>>>>
>>>> The OpenSBI root "README.md" @ b20bd479eff1 only says "For example, to
>>>> compile the platform library and the firmware examples for the QEMU
>>>> RISC-V *virt* machine, *<platform_subdir>* should be *generic*". It does
>>>> not mention the build output pathname
>>>> "build/platform/generic/firmware/fw_dynamic.bin".
>>>>
>>>> Laszlo
>>>>
>>>
>>
>
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#108487): https://edk2.groups.io/g/devel/message/108487
Mute This Topic: https://groups.io/mt/101216052/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/leave/12367111/7686176/1913456212/xyzzy [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-
next prev parent reply other threads:[~2023-09-11 13:16 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-09-07 14:58 [edk2-devel] [PATCH 1/1] OvmfPkg/RiscVVirt/README.md: bring your own OpenSBI Laszlo Ersek
2023-09-07 15:13 ` Laszlo Ersek
2023-09-07 19:02 ` Andrei Warkentin
2023-09-08 6:13 ` Sunil V L
2023-09-11 5:32 ` Laszlo Ersek
2023-09-11 5:45 ` Sunil V L
2023-09-11 6:15 ` Laszlo Ersek
2023-09-11 6:22 ` Sunil V L
2023-09-11 7:07 ` Laszlo Ersek
2023-09-11 10:15 ` Sunil V L
2023-09-11 13:16 ` Laszlo Ersek [this message]
2023-09-11 13:40 ` Sunil V L
2023-09-12 6:23 ` Sunil V L
2023-09-12 6:56 ` Ard Biesheuvel
2023-09-12 8:07 ` Sunil V L
2023-09-12 8:20 ` Laszlo Ersek
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=cd35de8d-e0ba-c4fc-c0ae-63e84c550796@redhat.com \
--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