Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 31 Jan 2025 13:15:08 -0400
From:      Mitchell Horne <mhorne@freebsd.org>
To:        Robert Clausecker <fuz@freebsd.org>
Cc:        ports-committers@freebsd.org, dev-commits-ports-all@freebsd.org, dev-commits-ports-main@freebsd.org, uboot@freebsd.org
Subject:   Re: git: 5912458941af - main - emulators/rvvm: RISC-V Virtual Machine
Message-ID:  <d4c306ed-c716-4efa-a01c-e897040914e8@freebsd.org>
In-Reply-To: <Z5Gd0GrzIShXwprF@fuz.su>
References:  <202501230107.50N17LLp083244@gitrepo.freebsd.org> <Z5Gd0GrzIShXwprF@fuz.su>

next in thread | previous in thread | raw e-mail | index | archive | help


On 1/22/25 21:39, Robert Clausecker wrote:
> Am Thu, Jan 23, 2025 at 01:07:21AM +0000 schrieb Robert Clausecker:
>> The branch main has been updated by fuz:
>>
>> URL: https://cgit.FreeBSD.org/ports/commit/?id=5912458941af2189b7fa940dd20a21fd168e67fd
>>
>> commit 5912458941af2189b7fa940dd20a21fd168e67fd
>> Author:     Robert Clausecker <fuz@FreeBSD.org>
>> AuthorDate: 2025-01-22 23:29:49 +0000
>> Commit:     Robert Clausecker <fuz@FreeBSD.org>
>> CommitDate: 2025-01-23 01:06:22 +0000
>>
>>      emulators/rvvm: RISC-V Virtual Machine
>>      
>>      RVVM is a virtual machine / emulator for RISC-V guests, which emphasizes
>>      on performance, security, lean code and portability. It already runs a
>>      lot of guest operating systems, including Linux, Haiku, FreeBSD,
>>      OpenBSD, etc. It also aims to run RISC-V applications on a foreign-arch
>>      host without full OS guest & isolation (Userland emulation).
>>      
>>      WWW: https://github.com/LekKit/RVVM

Cool, thanks for creating the port!

>> ---
>>   emulators/Makefile                  |  1 +
>>   emulators/rvvm/Makefile             | 79 +++++++++++++++++++++++++++++++++++++
>>   emulators/rvvm/distinfo             |  9 +++++
>>   emulators/rvvm/files/patch-Makefile | 75 +++++++++++++++++++++++++++++++++++
>>   emulators/rvvm/files/pkg-message.in | 11 ++++++
>>   emulators/rvvm/pkg-descr            |  5 +++
>>   emulators/rvvm/pkg-plist            | 30 ++++++++++++++
>>   7 files changed, 210 insertions(+)
> 
>> +MASTER_SITES=	https://github.com/LekKit/patches-misc/releases/download/rvvm-uboot-2024.7/:fw \
>> +		https://github.com/LekKit/riscv-tests/releases/download/rvvm-tests/:tests
>> +DISTFILES=	${FWFILES:.bin=.bin:fw} riscv-tests.tar.gz:tests
> 
> It would be great if we could build these firmware images from source.
> Upstream provides a patch set for U-Boot in the repository given
> in MASTER_SITES, but I don't know enough about U-Boot to generate
> the right images from that.  Maybe someone from uboot@ could help?
> 

The link you shared above is inaccessible to me, but browsing the repo I was able to find the patch against v2024.07 [1].

It basically enables a couple key things in the qemu-riscv config:
  - Simple framebuffer
  - NVMe as a default boot target

These changes have since been applied upstream, meaning the next upgrade to our u-boot ports should make the u-boot-qemu-riscv64 firmware totally usable for RVVM.

The current version (2024.07) seems to be usable, if you provide -nogui to rvvm and type 'run nvme_boot' at the u-boot command prompt.

This does not answer the question about applying patches. I don't exactly know how it works with these ports, and it is overall discouraged.

I hope this helps regardless.

Mitchell

[1] https://github.com/LekKit/patches-misc/blob/master/uboot/uboot2024.7_rvvm_support.patch

> Yours,
> Robert Clausecker
> 




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?d4c306ed-c716-4efa-a01c-e897040914e8>