1、先将pcie的驱动安装好,然后查看每个pcie对应的文件描述路径 一般在/dev/里面有xdma1_c2h_0 xdma0_user,这个是fpga确定用哪个。
2、初始化文件并打开
int pcie_init(int device)
{
if (device == 0) {
c2h_dma_fd0 = open("/dev/xdma0_c2h_0",O_RDWR );
if(c2h_dma_fd0 < 0)
return -1;
control_fd0 = open_control("/dev/xdma0_user");
if(control_fd0 < 0)
return -5;
control_base0 = mmap_control(control_fd0,MAP_SIZE);
if (control_base0 == NULL)
return -6;
}
else if(device == 1){
c2h_dma_fd1 = open("/dev/xdma1_c2h_0",O_RDWR );
if(c2h_dma_fd1 < 0)
return -1;
control_fd1 = open_control("/dev/xdma1_user");
if(control_fd1 < 0)
return -5;
control_base1 = mmap_control(control_fd1,MAP_SIZE);
if (control_base1 == NULL)
return -6;
}
else{
c2h_dma_fd2 = open("/dev/xdma2_c2h_0",O_RDWR );
if(c2h_dma_fd2 < 0)
return -1;
control_fd2 = open_control("/dev/xdma2_user");
if(control_fd2 < 0)
return -5;
control_base2 = mmap_control(control_fd2,MAP_SIZE);
if (control_base2 == NULL)
return -6;
}
return 1;
}
3、再进行写入和读取