Имеется плата zc706 Xilinx SoC ZYNQ-7000 с 2-хядерным ARM Cortex-A9. Пытаюсь разобраться, как работать с AXI DMA если системой управляет Linux (Petalinux). Драйвер AXI DMA изначально присутствует в системе (код драйвера Xilinx из исходников Petalinux и тестовый модуль в архиве), при старте система сообщает:
Цитата
xilinx-dma 40400000.dma: Xilinx AXI DMA Engine driver Probed!!
Содержимое директории /sys/class/dma следующее:
Цитата
root@zynq:/lib/modules/4.0.0-xilinx/extra# cd /sys/class/dma/
root@zynq:/sys/class/dma#
root@zynq:/sys/class/dma#
root@zynq:/sys/class/dma# ls
dma0chan0 dma0chan1 dma0chan2 dma0chan3 dma0chan4 dma0chan5 dma0chan6 dma0chan7 dma1chan0
root@zynq:/sys/class/dma#
, как понял, dma1chan0 соответствует AXI DMA.root@zynq:/sys/class/dma#
root@zynq:/sys/class/dma#
root@zynq:/sys/class/dma# ls
dma0chan0 dma0chan1 dma0chan2 dma0chan3 dma0chan4 dma0chan5 dma0chan6 dma0chan7 dma1chan0
root@zynq:/sys/class/dma#
Вопрос - как использовать драйвер Xilinx для управления работой AXI DMA (управлять GPIO через sysfs получилось)? Может оно мне и не нужно - убираем драйвер Xilinx из системы, делаем свой char module и всё работает?
Спасибо.