FTDI双UART / FIFO:与ftdi_sio冲突

时间:2017-12-28 20:08:03

标签: linux usb uart ftdi

我有一块FPGA板,通过一个USB连接进行两次串行连接。

问题: 如果加载ftdi_sio,则闪存FPGA程序所需的程序不起作用。 该程序使用第一个连接。

另一个需要ttyUSB1直接与FPGA通信(例如使用Putty)

但是这只有在加载了ftdi_sio并且ttyUSB *可用时才有效,如果我用这个udev规则禁用了ftdi_so,那就不行了:

SUBSYSTEMS=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6010", RUN+="/bin/sh -c 'echo $kernel > /sys/bus/usb/drivers/ftdi_sio/unbind'"

所以: 没有这个规则

  • 我有ttyUSB0和ttyUSB1
  • 编程(莱迪思程序员)没有工作
  • 与ttyUSB1串行连接到FPGA工作

使用此规则

  • 我没有ttyUSB *
  • 使用程序员编程
  • 与FPGA的串行连接无效(无tty)

有没有办法只为一个连接禁用ftdi_sio? 或者有没有办法在不重新连接USB电缆的情况下使用命令禁用/启用它?

目前我使用Windows VM对FPGA进行编程,但这非常烦人

如果您需要有关该设备的更多信息,请告诉我。

鳄鱼沉重

1 个答案:

答案 0 :(得分:1)

您可以使用modprobe手动加载和卸载内核模块,即加载modprobe ftdi_sio并使用modprobe -r ftdi_sio

卸载

问题可能是你需要加载依赖模块

检查ftdi_sio运行lsmod

的依赖关系

http://xmodulo.com/how-to-check-kernel-module-dependencies-on-linux.html