|
@@ -798,6 +798,31 @@ pci_clear_mwi(struct pci_dev *dev)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+/**
|
|
|
+ * pci_intx - enables/disables PCI INTx for device dev
|
|
|
+ * @dev: the PCI device to operate on
|
|
|
+ * @enable: boolean
|
|
|
+ *
|
|
|
+ * Enables/disables PCI INTx for device dev
|
|
|
+ */
|
|
|
+void
|
|
|
+pci_intx(struct pci_dev *pdev, int enable)
|
|
|
+{
|
|
|
+ u16 pci_command, new;
|
|
|
+
|
|
|
+ pci_read_config_word(pdev, PCI_COMMAND, &pci_command);
|
|
|
+
|
|
|
+ if (enable) {
|
|
|
+ new = pci_command & ~PCI_COMMAND_INTX_DISABLE;
|
|
|
+ } else {
|
|
|
+ new = pci_command | PCI_COMMAND_INTX_DISABLE;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (new != pci_command) {
|
|
|
+ pci_write_config_word(pdev, PCI_COMMAND, pci_command);
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
#ifndef HAVE_ARCH_PCI_SET_DMA_MASK
|
|
|
/*
|
|
|
* These can be overridden by arch-specific implementations
|
|
@@ -875,6 +900,7 @@ EXPORT_SYMBOL(pci_request_region);
|
|
|
EXPORT_SYMBOL(pci_set_master);
|
|
|
EXPORT_SYMBOL(pci_set_mwi);
|
|
|
EXPORT_SYMBOL(pci_clear_mwi);
|
|
|
+EXPORT_SYMBOL_GPL(pci_intx);
|
|
|
EXPORT_SYMBOL(pci_set_dma_mask);
|
|
|
EXPORT_SYMBOL(pci_set_consistent_dma_mask);
|
|
|
EXPORT_SYMBOL(pci_assign_resource);
|