On 2020.09.30 00:10:38 +0800, Fred Gao wrote: > Bypass the IGD initialization for Intel's dgfx devices with own expansion > ROM and the host/LPC bridge config space are no longer accessed. > > v2: simply test if discrete or integrated gfx device > with root bus. (Alex Williamson) > Patch title is somehow misleading that better change to what this one does that skip VFIO IGD setup for Intel discrete graphics card. With that, Reviewed-by: Zhenyu Wang <zhenyuw@xxxxxxxxxxxxxxx> > Cc: Zhenyu Wang <zhenyuw@xxxxxxxxxxxxxxx> > Cc: Xiong Zhang <xiong.y.zhang@xxxxxxxxx> > Cc: Hang Yuan <hang.yuan@xxxxxxxxxxxxxxx> > Cc: Stuart Summers <stuart.summers@xxxxxxxxx> > Signed-off-by: Lucas De Marchi <lucas.demarchi@xxxxxxxxx> > Signed-off-by: Fred Gao <fred.gao@xxxxxxxxx> > --- > drivers/vfio/pci/vfio_pci.c | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/drivers/vfio/pci/vfio_pci.c b/drivers/vfio/pci/vfio_pci.c > index f634c81998bb..9258ccfadb79 100644 > --- a/drivers/vfio/pci/vfio_pci.c > +++ b/drivers/vfio/pci/vfio_pci.c > @@ -336,10 +336,11 @@ static int vfio_pci_enable(struct vfio_pci_device *vdev) > if (!vfio_vga_disabled() && vfio_pci_is_vga(pdev)) > vdev->has_vga = true; > > - > + /* Intel's dgfx should not appear on root bus */ > if (vfio_pci_is_vga(pdev) && > pdev->vendor == PCI_VENDOR_ID_INTEL && > - IS_ENABLED(CONFIG_VFIO_PCI_IGD)) { > + IS_ENABLED(CONFIG_VFIO_PCI_IGD) && > + pci_is_root_bus(pdev->bus)) { > ret = vfio_pci_igd_init(vdev); > if (ret) { > pci_warn(pdev, "Failed to setup Intel IGD regions\n"); > -- > 2.24.1.1.gb6d4d82bd5 > -- $gpg --keyserver wwwkeys.pgp.net --recv-keys 4D781827
Attachment:
signature.asc
Description: PGP signature