From: "Cédric Le Goater" <clg@redhat.com>
To: Tomita Moeko <tomitamoeko@gmail.com>,
Alex Williamson <alex.williamson@redhat.com>
Cc: qemu-devel@nongnu.org, "Corvin Köhne" <c.koehne@beckhoff.com>
Subject: Re: [PATCH v4 00/10] vfio/igd: Enable legacy mode on more devices
Date: Fri, 6 Dec 2024 14:18:48 +0100 [thread overview]
Message-ID: <3d1b6446-46f8-479f-b777-0dd4072d3e57@redhat.com> (raw)
In-Reply-To: <20241206122749.9893-1-tomitamoeko@gmail.com>
On 12/6/24 13:27, Tomita Moeko wrote:
> This patchset extends the support of legacy mode igd passthrough to
> all Intel Gen 11 and 12 devices (including Ice Lake, Jasper Lake,
> Rocket Lake, Alder Lake and Raptor Lake), and emulates GGC register
> in MMIO BAR0 for better compatibiltiy (It is tested Windows and GOP
> driver will read this MMIO register).
>
> It also replaces magic numbers with macros to improve readability,
> and aligns behavior (BDSM registor mirroring and GGMS calculation for
> gen7) with i915 driver to avoid possible issues.
>
> The x-igd-gms option removed in 971ca22f041b ("vfio/igd: don't set
> stolen memory size to zero") is also added back so that data stolen
> memory size can be specified for guest. It is tested that GMS may
> related to framebuffer size, a small GMS value may cause display issues
> like blackscreen. It can be changed by DVMT Pre-allocated option in
> host BIOS, but not all BIOS comes with this option. Having it in QEMU
> helps resolves such issues.
>
> This patchset was verified on Intel i9-12900K CPU(UHD 770, 8086:4680)
> with custom OVMF firmware [1] and IntelGopDriver extracted from host
> bios. IGD device works well in both Windows and Linux guests, and
> scored 726 in 3DMark Time Spy Graphics on Windows guest.
>
> [1] https://github.com/tomitamoeko/edk2/commits/igd-pt-adl/
>
> Btw, IO BAR4 seems never be used by guest, and it the IO BAR itself
> is not working on Gen11+ devices in my experiments. There is no hints
> about that in old commit message and mailing list. It would be greatly
> appreciated if someone shares the background.
>
> Changelog:
> v4:
> * Move "vfio/igd: fix GTT stolen memory size calculation for gen 8+" to
> the first.
> Link: https://lore.kernel.org/qemu-devel/20241205105535.30498-1-tomitamoeko@gmail.com/
A v4 was not necessary for just this change. Anyhow, It seems the
series is ready and an overall 'Acked-by' from Alex or Corvin would
be appreciated before applying to vfio-next.
Thanks,
C.
>
> v3:
> * Added new patch to fix GTT stolen memory size calculation for gen 8+
> devicess.
> * Fixed quirk index in "vfio/igd: add macro for declaring mirrored
> registers"
> * Fixed condition in "vfio/igd: add x-igd-gms option back to set DSM
> region size for guest"
> * Updated comments and commit message.
> Link: https://lore.kernel.org/qemu-devel/20241203133548.38252-1-tomitamoeko@gmail.com/
>
> v2:
> * Droped "vfio/igd: fix GTT stolen memory size calculation for gen 7".
> * Fixed conditions when calculating GGMS size.
> * Added Gemini Lake and Comet Lake device ids.
> * Splited mirroring register declaration macro into a new patch.
> * Minor fixes.
> Link: https://lore.kernel.org/qemu-devel/20241201160938.44355-1-tomitamoeko@gmail.com/
>
> Tomita Moeko (10):
> vfio/igd: fix GTT stolen memory size calculation for gen 8+
> vfio/igd: remove unsupported device ids
> vfio/igd: align generation with i915 kernel driver
> vfio/igd: canonicalize memory size calculations
> vfio/igd: add Gemini Lake and Comet Lake device ids
> vfio/igd: add Alder/Raptor/Rocket/Ice/Jasper Lake device ids
> vfio/igd: add macro for declaring mirrored registers
> vfio/igd: emulate GGC register in mmio bar0
> vfio/igd: emulate BDSM in mmio bar0 for gen 6-10 devices
> vfio/igd: add x-igd-gms option back to set DSM region size for guest
>
> hw/vfio/igd.c | 262 +++++++++++++++++++++++++++++++-------------------
> 1 file changed, 165 insertions(+), 97 deletions(-)
>
next prev parent reply other threads:[~2024-12-06 13:19 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-12-06 12:27 [PATCH v4 00/10] vfio/igd: Enable legacy mode on more devices Tomita Moeko
2024-12-06 12:27 ` [PATCH v4 01/10] vfio/igd: fix GTT stolen memory size calculation for gen 8+ Tomita Moeko
2024-12-06 12:27 ` [PATCH v4 02/10] vfio/igd: remove unsupported device ids Tomita Moeko
2024-12-06 12:27 ` [PATCH v4 03/10] vfio/igd: align generation with i915 kernel driver Tomita Moeko
2024-12-06 12:27 ` [PATCH v4 04/10] vfio/igd: canonicalize memory size calculations Tomita Moeko
2024-12-06 12:27 ` [PATCH v4 05/10] vfio/igd: add Gemini Lake and Comet Lake device ids Tomita Moeko
2024-12-06 12:27 ` [PATCH v4 06/10] vfio/igd: add Alder/Raptor/Rocket/Ice/Jasper " Tomita Moeko
2024-12-06 12:27 ` [PATCH v4 07/10] vfio/igd: add macro for declaring mirrored registers Tomita Moeko
2024-12-06 12:27 ` [PATCH v4 08/10] vfio/igd: emulate GGC register in mmio bar0 Tomita Moeko
2024-12-06 12:27 ` [PATCH v4 09/10] vfio/igd: emulate BDSM in mmio bar0 for gen 6-10 devices Tomita Moeko
2024-12-06 12:27 ` [PATCH v4 10/10] vfio/igd: add x-igd-gms option back to set DSM region size for guest Tomita Moeko
2024-12-06 13:18 ` Cédric Le Goater [this message]
2024-12-06 16:07 ` [PATCH v4 00/10] vfio/igd: Enable legacy mode on more devices Alex Williamson
2024-12-06 16:25 ` Cédric Le Goater
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-all 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=3d1b6446-46f8-479f-b777-0dd4072d3e57@redhat.com \
--to=clg@redhat.com \
--cc=alex.williamson@redhat.com \
--cc=c.koehne@beckhoff.com \
--cc=qemu-devel@nongnu.org \
--cc=tomitamoeko@gmail.com \
/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;
as well as URLs for NNTP newsgroup(s).