需要在上电USB枚举过程中通过fxload下载固件到USB Cable,然后重新枚举加载驱动。系统需要安装fxload工具,在Xilinx Vivado/ISE安装目录下找到固件文件xusb*.hex复制到/usr/share下,然后创建如下udev rules文件。
?
# Xilinx USB Cable
ATTRS{idVendor}=="03fd",ATTRS{idProduct}=="0008",MODE="666"
SUBSYSTEMS=="usb",ACTION=="add",ATTRS{idVendor}=="03fd",ATTRS{idProduct}=="0007",RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusbdfwu.hex -D $tempnode"
SUBSYSTEMS=="usb",ATTRS{idProduct}=="0009",RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xup.hex -D $tempnode"
SUBSYSTEMS=="usb",ATTRS{idProduct}=="000d",RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_emb.hex -D $tempnode"
SUBSYSTEMS=="usb",ATTRS{idProduct}=="000f",RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xlp.hex -D $tempnode"
SUBSYSTEMS=="usb",ATTRS{idProduct}=="0013",RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xp2.hex -D $tempnode"
SUBSYSTEMS=="usb",ATTRS{idProduct}=="0015",RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xse.hex -D $tempnode"