08-12-2010 11:57 AM
I am trying to get XAP1052 working on the Avnet V5 LX110t development board. I have made all necessary modifications to the xst, scr, and UCF files to implement the BMD along with the PCIE endpoint plus core on this Avnet card. I was able to generate a bit stream using the included perl script and all timing requirements were met. However, when the bit stream is loaded to the FPGA using JTAG, the card is not identified after a warm-reset. I am wondering if there is something that I am missing here. By the way, I am using Fedora 10, on which the XAPP1052 has apparently been tested.
Also, I am trying to compile the linux driver supplied with XAPP1052, but the compilation does not go through when I execute ./run_bmd.csh. I am not a device driver guy, so would like to know if there is something that I am not doing right. Here is the message returned when I run the driver compile script. I am using kernel 2.6.23.14-107.fc10
./run_bmd.csh
gtk-builder-convert xbmd_app.glade xbmd_app.xml
Wrote xbmd_app.xml
make -C /lib/modules/2.6.23.14-107.fc8/build M=/root/xbmd modules
make[1]: Entering directory `/usr/src/kernels/2.6.23.14-107.fc8-i686'
CC [M] /root/xbmd/xbmd.o
/root/xbmd/xbmd.c:117: error: expected declaration specifiers or ‘...’ before numeric constant
/root/xbmd/xbmd.c:117: warning: function declaration isn’t a prototype
/root/xbmd/xbmd.c:117: error: function ‘deprecated_irq_flag’ is initialized like a variable
/root/xbmd/xbmd.c:117: error: invalid initializer
/root/xbmd/xbmd.c:118: error: expected declaration specifiers or ‘...’ before numeric constant
/root/xbmd/xbmd.c:118: warning: function declaration isn’t a prototype
/root/xbmd/xbmd.c:118: error: function ‘deprecated_irq_flag’ is initialized like a variable
/root/xbmd/xbmd.c:118: error: invalid initializer
/root/xbmd/xbmd.c: In function ‘XPCIe_init’:
/root/xbmd/xbmd.c:441: warning: ‘pci_find_device’ is deprecated (declared at include/linux/pci.h:480)
/root/xbmd/xbmd.c:507: warning: passing argument 2 of ‘request_irq’ from incompatible pointer type
/root/xbmd/xbmd.c: In function ‘XPCIe_ReadMem’:
/root/xbmd/xbmd.c:729: warning: return makes pointer from integer without a cast
make[2]: *** [/root/xbmd/xbmd.o] Error 1
make[1]: *** [_module_/root/xbmd] Error 2
make[1]: Leaving directory `/usr/src/kernels/2.6.23.14-107.fc8-i686'
make: *** [all] Error 2
crw-r--r-- 1 root root 241, 1 2010-08-12 14:04 /dev/xbmd
+ /sbin/insmod xbmd.ko
insmod: can't read 'xbmd.ko': No such file or directory
Your help is much appreciated! The xst,scr, and UCF files that were used to generate the bit stream are attached.
Thanks,
Chethan
08-13-2010 02:40 PM
So finally I get all of it to work. The kernel was doing something that I could not figure out. I updated the kernel to 2.6.27 and now the driver installs with no problem. I am also able to run the performance tests as detailed in XAPP1052. Thanks for your help!
Chethan
08-13-2010 10:32 AM
Got past the first part. This was an issue with the system clock in the PCIE core. The core required a 100 MHz system clock where as the design had a 250 MHz system clock. I regenerated the PCIE core with the 250 MHz clock and the design comes up on an LSPCI.
However, I am unable to get past the driver issue I am faced with. Any suggestions on that please?
Chethan
08-13-2010 02:40 PM
So finally I get all of it to work. The kernel was doing something that I could not figure out. I updated the kernel to 2.6.27 and now the driver installs with no problem. I am also able to run the performance tests as detailed in XAPP1052. Thanks for your help!
Chethan
09-19-2010 07:41 PM - edited 09-19-2010 07:42 PM
Hi Chethan,
I would like to know , how you are measuring the throughput !!We are having the same card , and we are testing in a different way.
I am plugging the PCIe card in a PCIe slot of PC, is then connecting an Ethernet cable to the first Ethernet ports of the PC and doing a loop back via PCIe kit to the second Ethernet port of the PC. To the both Ethernet port we are connecting an Spirent Ethernet Test Analyzer and measuring the Ethernet throughput .The throughput its showing is only 8Mbps, which is very very less compared to 1 Gbps minimum what the ethernet ports should give. We are suspecting that the Avnet PCIe card is the culprit is reducing the overall throughput.
Can you kindly help me in explaining why it’s happening like this ?? I am also attaching my design block diagram for your reference..
Thanks ,
Soumitra