···278278on systems where System RAM exists above 4G _physical_ address.279279280280Drivers for all PCI-X and PCIe compliant devices must call281281-pci_set_dma_mask() as they are 64-bit DMA devices.281281+set_dma_mask() as they are 64-bit DMA devices.282282283283Similarly, drivers must also "register" this capability if the device284284-can directly address "consistent memory" in System RAM above 4G physical285285-address by calling pci_set_consistent_dma_mask().284284+can directly address "coherent memory" in System RAM above 4G physical285285+address by calling dma_set_coherent_mask().286286Again, this includes drivers for all PCI-X and PCIe compliant devices.287287Many 64-bit "PCI" devices (before PCI-X) and some PCI-X devices are28828864-bit DMA capable for payload ("streaming") data but not control289289-("consistent") data.289289+("coherent") data.290290291291292292Setup shared control data293293-------------------------294294-Once the DMA masks are set, the driver can allocate "consistent" (a.k.a. shared)294294+Once the DMA masks are set, the driver can allocate "coherent" (a.k.a. shared)295295memory. See Documentation/core-api/dma-api.rst for a full description of296296the DMA APIs. This section is just a reminder that it needs to be done297297before enabling DMA on the device.···367367 - Disable the device from generating IRQs368368 - Release the IRQ (free_irq())369369 - Stop all DMA activity370370- - Release DMA buffers (both streaming and consistent)370370+ - Release DMA buffers (both streaming and coherent)371371 - Unregister from other subsystems (e.g. scsi or netdev)372372 - Disable device from responding to MMIO/IO Port addresses373373 - Release MMIO/IO Port resource(s)···420420I.e. unmap data buffers and return buffers to "upstream"421421owners if there is one.422422423423-Then clean up "consistent" buffers which contain the control data.423423+Then clean up "coherent" buffers which contain the control data.424424425425See Documentation/core-api/dma-api.rst for details on unmapping interfaces.426426