diff options
Diffstat (limited to 'Documentation')
-rw-r--r-- | Documentation/pci.txt | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/Documentation/pci.txt b/Documentation/pci.txt index 66bbbf1d1ef6..3242e5c1ee9c 100644 --- a/Documentation/pci.txt +++ b/Documentation/pci.txt | |||
@@ -213,9 +213,17 @@ have been remapped by the kernel. | |||
213 | 213 | ||
214 | See Documentation/IO-mapping.txt for how to access device memory. | 214 | See Documentation/IO-mapping.txt for how to access device memory. |
215 | 215 | ||
216 | You still need to call request_region() for I/O regions and | 216 | The device driver needs to call pci_request_region() to make sure |
217 | request_mem_region() for memory regions to make sure nobody else is using the | 217 | no other device is already using the same resource. The driver is expected |
218 | same device. | 218 | to determine MMIO and IO Port resource availability _before_ calling |
219 | pci_enable_device(). Conversely, drivers should call pci_release_region() | ||
220 | _after_ calling pci_disable_device(). The idea is to prevent two devices | ||
221 | colliding on the same address range. | ||
222 | |||
223 | Generic flavors of pci_request_region() are request_mem_region() | ||
224 | (for MMIO ranges) and request_region() (for IO Port ranges). | ||
225 | Use these for address resources that are not described by "normal" PCI | ||
226 | interfaces (e.g. BAR). | ||
219 | 227 | ||
220 | All interrupt handlers should be registered with SA_SHIRQ and use the devid | 228 | All interrupt handlers should be registered with SA_SHIRQ and use the devid |
221 | to map IRQs to devices (remember that all PCI interrupts are shared). | 229 | to map IRQs to devices (remember that all PCI interrupts are shared). |