Mention the regular DMA API calls instead of the now removed PCI DMA API.
Unified · Split
| @@ -278,20 +278,20 @@ appropriate parameters. In general this allows more efficient DMA · 277 unmodified lines | |||
| 278 | on systems where System RAM exists above 4G _physical_ address. | 278 | on systems where System RAM exists above 4G _physical_ address. |
| 279 | 279 | ||
| 280 | Drivers for all PCI-X and PCIe compliant devices must call | 280 | Drivers for all PCI-X and PCIe compliant devices must call |
| 281 | pci_set_dma_mask() as they are 64-bit DMA devices. | 281 | set_dma_mask() as they are 64-bit DMA devices. |
| 282 | 282 | ||
| 283 | Similarly, drivers must also "register" this capability if the device | 283 | Similarly, drivers must also "register" this capability if the device |
| 284 | can directly address "consistent memory" in System RAM above 4G physical | 284 | can directly address "coherent memory" in System RAM above 4G physical |
| 285 | address by calling pci_set_consistent_dma_mask(). | 285 | address by calling dma_set_coherent_mask(). |
| 286 | Again, this includes drivers for all PCI-X and PCIe compliant devices. | 286 | Again, this includes drivers for all PCI-X and PCIe compliant devices. |
| 287 | Many 64-bit "PCI" devices (before PCI-X) and some PCI-X devices are | 287 | Many 64-bit "PCI" devices (before PCI-X) and some PCI-X devices are |
| 288 | 64-bit DMA capable for payload ("streaming") data but not control | 288 | 64-bit DMA capable for payload ("streaming") data but not control |
| 289 | ("consistent") data. | 289 | ("coherent") data. |
| 290 | 290 | ||
| 291 | 291 | ||
| 292 | Setup shared control data | 292 | Setup shared control data |
| 293 | ------------------------- | 293 | ------------------------- |
| 294 | Once the DMA masks are set, the driver can allocate "consistent" (a.k.a. shared) | 294 | Once the DMA masks are set, the driver can allocate "coherent" (a.k.a. shared) |
| 295 | memory. See Documentation/core-api/dma-api.rst for a full description of | 295 | memory. See Documentation/core-api/dma-api.rst for a full description of |
| 296 | the DMA APIs. This section is just a reminder that it needs to be done | 296 | the DMA APIs. This section is just a reminder that it needs to be done |
| 297 | before enabling DMA on the device. | 297 | before enabling DMA on the device. |
| @@ -367,7 +367,7 @@ steps need to be performed: · 69 unmodified lines | |||
| 367 | - Disable the device from generating IRQs | 367 | - Disable the device from generating IRQs |
| 368 | - Release the IRQ (free_irq()) | 368 | - Release the IRQ (free_irq()) |
| 369 | - Stop all DMA activity | 369 | - Stop all DMA activity |
| 370 | - Release DMA buffers (both streaming and consistent) | 370 | - Release DMA buffers (both streaming and coherent) |
| 371 | - Unregister from other subsystems (e.g. scsi or netdev) | 371 | - Unregister from other subsystems (e.g. scsi or netdev) |
| 372 | - Disable device from responding to MMIO/IO Port addresses | 372 | - Disable device from responding to MMIO/IO Port addresses |
| 373 | - Release MMIO/IO Port resource(s) | 373 | - Release MMIO/IO Port resource(s) |
| @@ -420,7 +420,7 @@ Once DMA is stopped, clean up streaming DMA first. · 46 unmodified lines | |||
| 420 | I.e. unmap data buffers and return buffers to "upstream" | 420 | I.e. unmap data buffers and return buffers to "upstream" |
| 421 | owners if there is one. | 421 | owners if there is one. |
| 422 | 422 | ||
| 423 | Then clean up "consistent" buffers which contain the control data. | 423 | Then clean up "coherent" buffers which contain the control data. |
| 424 | 424 | ||
| 425 | See Documentation/core-api/dma-api.rst for details on unmapping interfaces. | 425 | See Documentation/core-api/dma-api.rst for details on unmapping interfaces. |
| 426 | 426 | ||