I have a question regarding the XMDA PCIe Linux Kernel Module driver.
We have an implementation that requires two disparate applications to access the PCI bus. One application will utilize the xdma_h2c_0 device (producer) and the other will utilize the xdma_c2h_0 device (consumer).
My question is will the XDMA Kernel Module driver manage PCI bus contention between the two processes or do we have to manage contention between the two applications in userspace?
You can use them side by side as far as i could read from there source there shouldn't be a problem if one application uses H2C and the other one uses C2H as those two are completely seperate as far as the DMA Acess goes. The thing that could make problems is if you use the same engine in two programms but as it blocks anyways any access to the device as long as the transfer is not finished that should also not be a problem. (Note here error cases are not really handled in a nice way in there driver.)