Re: vmm (bhyve) on GICv2

From: Doug Rabson <dfr_at_rabson.org>
Date: Wed, 22 May 2024 15:48:34 UTC
I have some unfinished patches, currently stuck trying to figure out how
MSI works on the platform. Sadly, this part is not documented publicly and
I have no access to NDA documentation. The Linux driver is my only
reference which is far from optimal. Mike Karels is also interested in
getting this working.

Doug.


On Wed, 22 May 2024 at 16:43, Ronald Klop <ronald-lists@klop.ws> wrote:

>
> *Van:* Mark Millard <marklmi@yahoo.com>
> *Datum:* woensdag, 22 mei 2024 17:34
> *Aan:* Lexi Winter <lexi@le-fay.org>
> *CC:* Mario Marietto <marietto2008@gmail.com>, arm@freebsd.org
> *Onderwerp:* Re: vmm (bhyve) on GICv2
>
> On May 22, 2024, at 00:25, Lexi Winter <lexi@le-fay.org> wrote:
>
> > Mario Marietto:
> >> On Wed, May 22, 2024 at 9:03AM Lexi Winter <lexi@le-fay.org> wrote:
> >>> i was pleased to see ARM64 vmm has been merged to main recently.
> >>>
> >>> i have several use-cases to run bhyve on RPi4, but unfortunately this
> >>> hardware only supports GICv2 while vmm requires GICv3.
> >>>
> >>> does anyone have an idea if GICv2 is likely to be supported in the
> >>> future?
> >>
> >> Does RPi5 support GICv3 ? I would like to know which kind of relatively
> >> cheap arm hardware can run bhyve.
> >
> > i don't know off hand, but i do know FreeBSD doesn't support RPi5 at
> > all right now, so this is not an immediate solution :-)
>
> I boot and run a RPi5 via EDK2 in the microsd card slot and a USB3
> UFS system media (that has lots of different swap partition sizes
> for use on various machines with widely varying amounts of RAM):
>
> # gpart show -pl
> =>       40  249737136    mmcsd0  GPT  (119G)
>          40       2008            - free -  (1.0M)
>        2048  249733120  mmcsd0p1  RPi5-edk2  (119G)
>   249735168       2008            - free -  (1.0M)
>
> =>        34  1875384941     da0  GPT  (894G)
>           34       32734          - free -  (16M)
>        32768      501760   da0p1  PkgBaseEFI  (245M)
>       534528    20971520   da0p2  PkgBaseSwp10  (10G)
>     21506048    29360128   da0p3  PkgBaseSwp14  (14G)
>     50866176    33554432   da0p4  PkgBaseSwp16  (16G)
>     84420608    67108864   da0p5  PkgBaseSwp32  (32G)
>    151529472    96468992   da0p6  PkgBaseSwp46  (46G)
>    247998464   268435456   da0p7  PkgBaseSwp128  (128G)
>    516433920     7340032   da0p8  PkgBaseSwp3p5  (3.5G)
>    523773952    13631488  da0p10  PkgBaseSwp6p5  (6.5G)
>    537405440  1337979528   da0p9  PkgBaseUFS  (638G)
>   1875384968           7          - free -  (3.5K)
>
> See: https://github.com/worproject/rpi5-uefi
>
> # uname -apKU
> FreeBSD aarch64-main-pkgs 15.0-CURRENT FreeBSD 15.0-CURRENT #5
> main-n269589-9dcf39575efb-dirty: Sun Apr 21 01:42:00 PDT 2024
>     root@aarch64-main-pbase:/usr/obj/BUILDs/main-CA76-nodbg-clang/usr/main-src/arm64.aarch64/sys/GENERIC-NODBG-CA76
> arm64 aarch64 1500018 1500018
>
> That kernel is at: /boot/kernel.CA76-NODBG/kernel in my context.
>
> But I also have kernels that I got from:
>
> https://pkg.freebsd.org/FreeBSD:15:aarch64/base_latest/
>
> that boot it as well:
>
> # strings /boot/kernel.GENERIC-NODEBUG/kernel | grep 15.0-
> @(#)FreeBSD 15.0-CURRENT main-n269581-dfa39133b333 GENERIC-NODEBUG
> FreeBSD 15.0-CURRENT main-n269581-dfa39133b333 GENERIC-NODEBUG
> 15.0-CURRENT
>
> And the debug version (witness and such):
>
> # strings /boot/kernel/kernel | grep 15.0-
> @(#)FreeBSD 15.0-CURRENT main-n269581-dfa39133b333 GENERIC
> FreeBSD 15.0-CURRENT main-n269581-dfa39133b333 GENERIC
> 15.0-CURRENT
>
> (It has beem a while since I updated.)
>
> All these kernels boot a world that I got from the same:
>
> https://pkg.freebsd.org/FreeBSD:15:aarch64/base_latest/
>
> I do have another world in a directory tree that I built that I
> can chroot to.
>
> ===
> Mark Millard
> marklmi at yahoo.com
>
>
> ------------------------------
>
>
>
> Hi,
>
> This looks nice. Are there any FreeBSD patches needed to boot a RPI5? Or
> only an up-to-date EDK2?
>
> And if it works well can we collaborate in documenting the RPI5 on
> https://wiki.freebsd.org/arm/Raspberry%20Pi?
>
> Regards,
> Ronald.
>
>