реклама на сайте
подробности

 
 
> Petalinux. AXI DMA.
doom13
сообщение Oct 12 2016, 13:56
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Приветствую.
Имеется плата 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.
Вопрос - как использовать драйвер Xilinx для управления работой AXI DMA (управлять GPIO через sysfs получилось)? Может оно мне и не нужно - убираем драйвер Xilinx из системы, делаем свой char module и всё работает?
Спасибо.






Прикрепленные файлы
Прикрепленный файл  xilinx_dma.rar ( 12.59 килобайт ) Кол-во скачиваний: 14
 
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
doom13
сообщение Oct 13 2016, 06:22
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Этот модуль должен быть встроен в ядро, задаётся при конфигурации ядра. Драйвер xilinx_dma с которым пытаюсь разобраться стартует при загрузке системы. axidmatest - это пример использования этого драйвера (наверное) и должен присутствовать в скомпилированном ядре, тут не знаю должен ли запустится автоматом или необходима ручная загрузка.
После компиляции в папке драйвера DMA (../build/linux/kernel/xlnx-4.0/drivers/dma/xilinx) файлы с расширением .ko отсутствуют, есть только .o
В папке проекта build вообще отсутствуют файлы xilinx_dma.ko и axidmatest.ko.
Go to the top of the page
 
+Quote Post
Jury093
сообщение Oct 13 2016, 08:56
Сообщение #3


Знающий
****

Группа: Участник
Сообщений: 959
Регистрация: 11-01-06
Из: Санкт-Петербург
Пользователь №: 13 050



Цитата(doom13 @ Oct 13 2016, 09:22) *
Этот модуль должен быть встроен в ядро, задаётся при конфигурации ядра. Драйвер xilinx_dma с которым пытаюсь разобраться стартует при загрузке системы. axidmatest - это пример использования этого драйвера (наверное) и должен присутствовать в скомпилированном ядре, тут не знаю должен ли запустится автоматом или необходима ручная загрузка.
После компиляции в папке драйвера DMA (../build/linux/kernel/xlnx-4.0/drivers/dma/xilinx) файлы с расширением .ko отсутствуют, есть только .o
В папке проекта build вообще отсутствуют файлы xilinx_dma.ko и axidmatest.ko.

давайте по порядку:
1. раз в dma/xilinx лежит "*.o", значит поддержку DMA вы включили в ядро (в менюконфиге: "*" - встроено в ядро "M" - собирать модулем)
2. как вы в ядро встраивали сборку "axidmatest"? обычный путь - положить в дерево драйверов сишник и прописать его в паре файлов
для контроля в корне исходников ядра выполните
Код
cat .config | grep DMA

и смотрите, что у вас там включено..
3. в скрипте сборки ядра есть ли опция modules (возможно у вас отключена сборка *.ko - всякое бывает)

ps у меня нет xilinx, поэтому советы общего плана..

Сообщение отредактировал Jury093 - Oct 13 2016, 08:58
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 12th August 2025 - 03:25
Рейтинг@Mail.ru


Страница сгенерированна за 0.01458 секунд с 7
ELECTRONIX ©2004-2016