-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi Greg.
>>>>* 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...
Why not make pci_switch_to_msix() (yeah, horrible name) instead?
pci_switch_to_msix(dev)
{
pci_disable_msi(dev);
if (!psi_enable_msix(dev))
pci_enable_msi(dev);
}
And it can naturally inform the caller if it failed or not.
// Stefan
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (MingW32)
iD8DBQFCp8uHBrn2kJu9P78RAid6AKCqYFJM0+kg0JYIgOYQiHSHv5Cw0gCfQw8w
A+z+BYzzvfi4oaBl6isuaEM=
=qL+F
-----END PGP SIGNATURE-----
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]