Does anyone have Vivado and his SDK fully working on archlinux?

hi everyone, its my first time coming here but i've been using archlinux for the past 8 months. i have been solving all the issues i encountered but this one is getting difficult.

So my problem is that i can't seem to use SDK terminal to connect to the usb port so i can communicate with the board.

I've already tried some of the solutions i've found for other linux installations, like updating libraries specific to the program but that didn't solve it.

Thanks for your time reading this, and if you know any solution to the problem please help me.

Posted May 28, 2017, 4:04 PM UTC

56
notagoodscientist•

Vivado no, I had xilinx ISE and altera quartus II both working fine on arch though (still got quartus installed, dumped ISE as I found the ISE tools particularly 90s-like and awful to work with) but I was fully able to compile and program modules from both (some fake altera USB blaster and a legit xilinx platform cable 2).

Have you put the udev rules in? I don't have them on this system but the ones for altera look something like

SUBSYSTEM=="usb", ATTR{idVendor}=="09fb", ATTR{idProduct}=="6001", MODE="0666"

Edit: OK I booted the old system, rechecked it and confirmed everything works fine. Bear in mind it's an old system (3.x kernel, v5 ncurses) using ISE not vivado. My udev rules for the USB platform cable 2 are:

# version 0003
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", ACTION=="add", ATTRS{idVendor}=="03fd", ATTRS{idProduct}=="0009", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xup.hex -D $tempnode"
SUBSYSTEMS=="usb", ACTION=="add", ATTRS{idVendor}=="03fd", ATTRS{idProduct}=="000d", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_emb.hex -D $tempnode"
SUBSYSTEMS=="usb", ACTION=="add", ATTRS{idVendor}=="03fd", ATTRS{idProduct}=="000f", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xlp.hex -D $tempnode"
SUBSYSTEMS=="usb", ACTION=="add", ATTRS{idVendor}=="03fd", ATTRS{idProduct}=="0013", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xp2.hex -D $tempnode"
SUBSYSTEMS=="usb", ACTION=="add", ATTRS{idVendor}=="03fd", ATTRS{idProduct}=="0015", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xse.hex -D $tempnode"

How I run ISE:

cd /opt/Xilinx/14.7/ISE_DS/ISE/bin/lin64
LD_LIBRARY_PATH=/opt/Xilinx/14.7/ISE_DS/ISE/lib/lin64/ ./ise
2
MFallenAngelOP•

thank you for the answer, i will try changing the rules as soon as i get home from classes today.

1
Beegee7730•

If you're referring to the JTAG pod, last time I did an install on Debian I had to do big tweaks on the driver scripts so that it would load upon insertion of the USB. Sadly I've since lost these settings, but the should be info from similar people on the Xilinx community forum.

1
MFallenAngelOP•

yes it with JTAG. i can program the board with no problems, but after i export the hardware and want to test some programs in the board i can't connect the terminal from the SDK it just doesn't recognise the board.

1
PAPPP•

I fairly regularly work with an Artyx7 (Basys3) from Arch testing things for a class I teach. I'm still on 2016.2 installed this way.

Which programmer/programming cable are you using? They all seem to be different in their annoyances, the ftdi-based ones are no trouble but most of the fancier ones are a pain.

1
MFallenAngelOP•

i can program the board using JTAG with no problems, but the SDK terminal doesn't recognise that the board is connected to a usb port. i always need to run an external terminal i.e minicom, to exchange data for debugging and input data to the board. i really don't like this solution but its what i've been doing so far.

2