3 Replies Latest reply on Nov 28, 2018 3:48 AM by yairi

    Loopback issue with Zynq FPGA running Linux 4.14

    l.subrahmanya
      Hi,

       

       

      we are using Connectx-5 card on Xilinx FPGA board Fidus-Sidewinder100, with Zynq Ultrascale+ device.

       

      Which is running linux version 4.14, and mellanox drivers from this repo:

      https://github.com/Xilinx/linux-xlnx/tree/master/drivers/net/ethernet/mellanox.

       

      And we are using Mobiveil's PCIe GPEX RC running following RC driver :

      https://github.com/torvalds/linux/blob/master/drivers/pci/controller/pcie-mobiveil.c

       

      please help us solving following queries.

       


       

      1. we tried connecting  a qsft cable on loop-back mode and ping with namespaces configured. Ping never succeeds. And ethtool stats shows multiple wqe_err incremented.

      commands :

       

      eth0=eth0

       

      eth1=eth1

       

      ip netns add ns1

      ip link set dev $eth0 netns ns1

      ip netns exec ns1 ip addr add 192.168.44.4/24 dev $eth0

      ip netns exec ns1 ifconfig $eth0 mtu 9600

      ip netns exec ns1 ifconfig $eth0 up

      sleep 5

      ifconfig $eth1 mtu 9600

      ifconfig $eth1 192.168.44.5

      sleep 5

      ping  192.168.44.4

       

      2. Next we ran ethtool selftest with external loopback test on eth0 we see one wqe_err set and with all other test passing loopback failed with flags set to 7.

      commands:

      ethtool -t  $eth0 external_lb

       

      3. After googling around we found this patch : https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1799393

      is this patch relevant to this issue? if yes is there any way we can backport this patch to 4.14 kernel's Mellanox driver ?

       

      4. Petalinux for Xilinx do not have Mellanox Firmware Tools, https://github.com/Mellanox doesn't seems to have MFT source either,

      can we get cross-compilable MFT source which is compatible with the following repo ?

      https://github.com/Xilinx/linux-xlnx/tree/master/drivers/net/ethernet/mellanox

       

      same test seems to be working fine on a standard ASUS motherboard, running the same version of Mellanox driver and Linux kernel.

       

       


       

       

      Thanks,