Имеется плата на Virtex-5 с прошивкой XAPP1052 - Bus Master. Плата опознается в системе, и дальше хотелось бы начать с ней работать - погонять данные, посмотреть скорость. ОС Ubuntu 12.04 x64 (есть также Windows 7, но конечной целью все же стоит работа с PCIe под линуксом).
С xapp1052 идут примеры драйвера и тестовой проги, однако пока при попытке запуска скрипта по инструкции выдает ошибки:
Код
root@user-PH67A-D3-B3:~/xbmd# ./run_bmd.csh
gtk-builder-convert xbmd_app.glade xbmd_app.xml
WARNING: duplicate id "menuitem"
WARNING: duplicate id "new_menu_item"
Wrote xbmd_app.xml
make -C /lib/modules/3.2.0-23-generic/build M=/root/xbmd modules
make[1]: Entering directory `/usr/src/linux-headers-3.2.0-23-generic'
CC [M] /root/xbmd/xbmd.o
/root/xbmd/xbmd.c: In function ‘XPCIe_Write’:
/root/xbmd/xbmd.c:208:3: warning: format ‘%d’ expects argument of type ‘int’, but argument 3 has type ‘size_t’ [-Wformat]
/root/xbmd/xbmd.c:210:3: warning: format ‘%d’ expects argument of type ‘int’, but argument 3 has type ‘size_t’ [-Wformat]
/root/xbmd/xbmd.c: In function ‘XPCIe_Read’:
/root/xbmd/xbmd.c:237:3: warning: format ‘%d’ expects argument of type ‘int’, but argument 3 has type ‘size_t’ [-Wformat]
/root/xbmd/xbmd.c: At top level:
/root/xbmd/xbmd.c:430:5: error: unknown field ‘ioctl’ specified in initializer
/root/xbmd/xbmd.c:430:5: warning: initialization from incompatible pointer type [enabled by default]
/root/xbmd/xbmd.c:430:5: warning: (near initialization for ‘XPCIe_Intf.aio_read’) [enabled by default]
/root/xbmd/xbmd.c: In function ‘XPCIe_init’:
/root/xbmd/xbmd.c:441:3: error: implicit declaration of function ‘pci_find_device’ [-Werror=implicit-function-declaration]
/root/xbmd/xbmd.c:441:8: warning: assignment makes pointer from integer without a cast [enabled by default]
/root/xbmd/xbmd.c:479:64: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
/root/xbmd/xbmd.c:507:3: warning: passing argument 2 of ‘request_irq’ from incompatible pointer type [enabled by default]
include/linux/interrupt.h:134:1: note: expected ‘irq_handler_t’ but argument is of type ‘void (*)(int, void *, struct pt_regs *)’
/root/xbmd/xbmd.c:531:70: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
/root/xbmd/xbmd.c:540:71: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
/root/xbmd/xbmd.c: In function ‘XPCIe_ReadMem’:
/root/xbmd/xbmd.c:715:24: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
/root/xbmd/xbmd.c:729:7: warning: return makes pointer from integer without a cast [enabled by default]
/root/xbmd/xbmd.c: In function ‘XPCIe_WriteMem’:
/root/xbmd/xbmd.c:769:23: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
cc1: some warnings being treated as errors
make[2]: *** [/root/xbmd/xbmd.o] Error 1
make[1]: *** [_module_/root/xbmd] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-3.2.0-23-generic'
make: *** [all] Error 2
crw-r--r-- 1 root root 241, 1 Dec 22 12:27 /dev/xbmd
+ /sbin/insmod xbmd.ko
insmod: can't read 'xbmd.ko': No such file or directory
были ли у кого-нибудь успешные попытки запуска программ из данного аппноута? Есть ли какие-нибудь еще варианты примеров, с которых можно было бы начать изучение PC-части интерфейса по линуксом? Или проще самому почитать и пробовать писать с нуля свои драйвер и прогу?