diff options
author | Alexander Gordeev <agordeev@redhat.com> | 2013-12-30 02:28:15 -0500 |
---|---|---|
committer | Bjorn Helgaas <bhelgaas@google.com> | 2014-01-03 19:17:55 -0500 |
commit | ff1aa430a2fa43189e89c7ddd559f0bee2298288 (patch) | |
tree | 731237d3f796f92aa31b41a8fda7f0e38c707fbb /Documentation/PCI | |
parent | 7b92b4f61ec49cb1a5813298f35258bd7ecd3667 (diff) |
PCI/MSI: Add pci_msix_vec_count()
This creates an MSI-X counterpart for pci_msi_vec_count(). Device drivers
can use this function to obtain maximum number of MSI-X interrupts the
device supports and use that number in a subsequent call to
pci_enable_msix().
pci_msix_vec_count() supersedes pci_msix_table_size() and returns a
negative errno if device does not support MSI-X interrupts. After this
update, callers must always check the returned value.
The only user of pci_msix_table_size() was the PCI-Express port driver,
which is also updated by this change.
Signed-off-by: Alexander Gordeev <agordeev@redhat.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'Documentation/PCI')
-rw-r--r-- | Documentation/PCI/MSI-HOWTO.txt | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/Documentation/PCI/MSI-HOWTO.txt b/Documentation/PCI/MSI-HOWTO.txt index aa4ad987510d..b58f4a4d14bb 100644 --- a/Documentation/PCI/MSI-HOWTO.txt +++ b/Documentation/PCI/MSI-HOWTO.txt | |||
@@ -243,6 +243,19 @@ MSI-X Table. This address is mapped by the PCI subsystem, and should not | |||
243 | be accessed directly by the device driver. If the driver wishes to | 243 | be accessed directly by the device driver. If the driver wishes to |
244 | mask or unmask an interrupt, it should call disable_irq() / enable_irq(). | 244 | mask or unmask an interrupt, it should call disable_irq() / enable_irq(). |
245 | 245 | ||
246 | 4.3.4 pci_msix_vec_count | ||
247 | |||
248 | int pci_msix_vec_count(struct pci_dev *dev) | ||
249 | |||
250 | This function could be used to retrieve number of entries in the device | ||
251 | MSI-X table. | ||
252 | |||
253 | If this function returns a negative number, it indicates the device is | ||
254 | not capable of sending MSI-Xs. | ||
255 | |||
256 | If this function returns a positive number, it indicates the maximum | ||
257 | number of MSI-X interrupt vectors that could be allocated. | ||
258 | |||
246 | 4.4 Handling devices implementing both MSI and MSI-X capabilities | 259 | 4.4 Handling devices implementing both MSI and MSI-X capabilities |
247 | 260 | ||
248 | If a device implements both MSI and MSI-X capabilities, it can | 261 | If a device implements both MSI and MSI-X capabilities, it can |