Re: [RFC PATCH] PCI: remove access to pci_[enable|disable]_msi() for drivers

From: Greg KH
Date: Tue Jun 07 2005 - 11:12:27 EST


On Tue, Jun 07, 2005 at 09:31:39AM +0200, Arjan van de Ven wrote:
>
> > > * What if the driver writer does not want MSI enabled for their
> > > hardware (even though there is an MSI capabilities entry)? Reasons
> > > include: overhead involved in initiating the MSI; no support in some
> > > versions of firmware (QLogic hardware).
> >
> > Yes, a very good point. I guess I should keep the pci_enable_msi() and
> > pci_disable_msi() functions exported for this reason.
> >
>
> well... only pci_disable_msi() is needed for this ;)

I thought so too, until I looked at the IB driver :(

The issue is, if pci_enable_msix() fails, we want to fall back to MSI,
so you need to call pci_enable_msi() for that (after calling
pci_disable_msi() before calling pci_enable_msix(), what a mess...)

So we still need both functions, and for MSI-X, the logic involved in
enabling it is horrible. Let me see if this can be made saner...

thanks,

greg k-h
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/