Search code examples
linuxlinux-device-driverdmapci

Linux pci_map_single working


My question is regarding the use of the pci_map_single function. I know that a DMA address is generated which the device can use for data transfer but does any change happen to the memory(virtual address pointer) that is passed as an argument to this function?


Solution

  • No, virtual address is not going to change. Virtual address is passed by value not passed be reference.

    On successful completion, DMA address is retured.