[PATCH 07/15] drm/amdgpu: use PCI_IRQ_MSI_TYPES where appropriate

Andy Shevchenko andy.shevchenko at gmail.com
Tue Jun 2 14:00:20 UTC 2020


On Tue, Jun 2, 2020 at 4:38 PM Ruhl, Michael J <michael.j.ruhl at intel.com> wrote:
> >-----Original Message-----
> >From: dri-devel <dri-devel-bounces at lists.freedesktop.org> On Behalf Of
> >Piotr Stankiewicz
> >Sent: Tuesday, June 2, 2020 5:21 AM
> >To: Alex Deucher <alexander.deucher at amd.com>; Christian König
> ><christian.koenig at amd.com>; David Zhou <David1.Zhou at amd.com>; David
> >Airlie <airlied at linux.ie>; Daniel Vetter <daniel at ffwll.ch>
> >Cc: Stankiewicz, Piotr <piotr.stankiewicz at intel.com>; dri-
> >devel at lists.freedesktop.org; amd-gfx at lists.freedesktop.org; linux-
> >kernel at vger.kernel.org
> >Subject: [PATCH 07/15] drm/amdgpu: use PCI_IRQ_MSI_TYPES where
> >appropriate

...

> >               int nvec = pci_msix_vec_count(adev->pdev);
> >               unsigned int flags;
> >
> >-              if (nvec <= 0) {
> >+              if (nvec > 0)
> >+                      flags = PCI_IRQ_MSI_TYPES;
> >+              else
> >                       flags = PCI_IRQ_MSI;
> >-              } else {
> >-                      flags = PCI_IRQ_MSI | PCI_IRQ_MSIX;
> >-              }
>
> Minor nit:
>
> Is it really necessary to set do this check?  Can flags just
> be set?
>
> I.e.:
>         flags = PCI_IRQ_MSI_TYPES;
>
> pci_alloc_irq_vector() tries stuff in order.  If MSIX is not available,
> it will try MSI.

That's also what I proposed earlier. But I suggested as well to wait
for AMD people to confirm that neither pci_msix_vec_count() nor flags
is needed and we can directly supply MSI_TYPES to the below call.

> >               /* we only need one vector */
> >               nvec = pci_alloc_irq_vectors(adev->pdev, 1, 1, flags);

-- 
With Best Regards,
Andy Shevchenko


More information about the amd-gfx mailing list