This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

PCIe向C6678EVM传输数据的ioctl命令



大家好:

        ioctl这个函数中有个参数cmd,当PCIe向C6678传输数据时,cmd为C6678_PCI_TRANS_DATA,该宏定义在PCIe.h中:#define C6678_PCI_TRANS_DATA _IOR(PCIDEV_IOC_MAGIC, 2, int);当PCIe向C6678取回数据时,cmd为C6678_PCI_GET_DATA,该宏同样定义在PCIe.h中:#define C6678_PCI_GET_DATA _IOR(PCIDEV_IOC_MAGIC, 4, int)。

        那么我的问题是:为何这两个cmd宏都定义的是_IOR而没有定义为_IOW?如果是PCIe传输数据不应该是_IOW吗?另外,如果我想让PCIe同时双向传输是否应该使用_IOWR?我尝试过在PCIe.h中将C6678_PCI_TRANS_DATA的_IOR改为_IOW,就显示调用cmd错误,一直不知道是什么原因。

        希望得到各位的指教,谢谢。