Re: [-next 4/5] drm/virgpu: Switch to pci_is_vga()

From: Bjorn Helgaas
Date: Thu Oct 05 2023 - 18:10:55 EST


On Thu, Oct 05, 2023 at 04:57:14PM -0500, Bjorn Helgaas wrote:
> In subject: "drm/virtio" to match previous history.
>
> On Wed, Aug 30, 2023 at 07:15:31PM +0800, Sui Jingfeng wrote:
> > From: Sui Jingfeng <suijingfeng@xxxxxxxxxxx>
> >
> > Should be no functional change, just for cleanup purpose.
> >
> > Cc: David Airlie <airlied@xxxxxxxxxx>
> > Cc: Gerd Hoffmann <kraxel@xxxxxxxxxx>
> > Cc: Gurchetan Singh <gurchetansingh@xxxxxxxxxxxx>
> > Cc: Chia-I Wu <olvaffe@xxxxxxxxx>
> > Cc: Daniel Vetter <daniel@xxxxxxxx>
> > Signed-off-by: Sui Jingfeng <suijingfeng@xxxxxxxxxxx>
> > ---
> > drivers/gpu/drm/virtio/virtgpu_drv.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/gpu/drm/virtio/virtgpu_drv.c b/drivers/gpu/drm/virtio/virtgpu_drv.c
> > index add075681e18..3a368304475a 100644
> > --- a/drivers/gpu/drm/virtio/virtgpu_drv.c
> > +++ b/drivers/gpu/drm/virtio/virtgpu_drv.c
> > @@ -51,7 +51,7 @@ static int virtio_gpu_pci_quirk(struct drm_device *dev)
> > {
> > struct pci_dev *pdev = to_pci_dev(dev->dev);
> > const char *pname = dev_name(&pdev->dev);
> > - bool vga = (pdev->class >> 8) == PCI_CLASS_DISPLAY_VGA;
> > + bool vga = pci_is_vga(pdev);
>
> This *is* a functional change: Previously "vga" was only true for
> PCI_CLASS_DISPLAY_VGA (0x0300). Now it will be true for both
> PCI_CLASS_DISPLAY_VGA (0x0300) and PCI_CLASS_DISPLAY_OTHER (0x0380).

Oops, sorry, my mistake here. I meant PCI_CLASS_NOT_DEFINED_VGA, not
PCI_CLASS_DISPLAY_OTHER. pci_is_vga() is true for either of:

PCI_CLASS_DISPLAY_VGA 0x0300
PCI_CLASS_NOT_DEFINED_VGA 0x0001

(PCI_CLASS_NOT_DEFINED_VGA is defined in the PCI Code and Assignment
spec r1.15, sec 1.1; PCI_CLASS_DISPLAY_VGA is sec 1.4.)

> Is that desirable? I can't tell. Maybe the GPU folks will chime in.
>
> > int ret;
> >
> > DRM_INFO("pci: %s detected at %s\n",
> > --
> > 2.34.1
> >