Содержание
Репозиторий содержит тесты и демонстрации, запускаемые на DSP.
Перед запуском тестов и демонстраций на целевом устройстве необходимо выполнить:
# Выгрузить модуль драйвера avico modprobe -r avico # Отключить драйвер DMA echo 37220000.dma > /sys/bus/amba/drivers/dma-pl330/unbind # Перезагрузить модуль драйвера delcore30m modprobe -r delcore30m && modprobe delcore30m
Тест выполняет сложение двух чисел на DSP.
Формат запуска:
delcore30m-paralleltest <jobs> <cores>
Описание параметров:
jobs- количество одновременно запускаемых задач на DSP-ядре;cores- количество DSP-ядер, на которых запускается тест.
Перед запуском теста необходимо выполнить пункты, описанные в разделе Подготовка.
Тест выполняет расчет чисел Фибоначчи на двух ядрах DSP в параллель.
Формат запуска:
delcore30m-fibonacci [-h] [-v] [-i <iterations>] [-f <firmware_path>]
Описание параметров:
-h- вывод справки;-v- печать дополнительных сообщений;-i- количество запускаемых итераций. Значение по умолчанию: 5;-f- путь к прошивке для DSP. По умолчанию прошивка берется из файла/usr/share/delcore30m-tests/fibonacci.fw.bin.
Перед запуском теста необходимо выполнить пункты, описанные в разделе Подготовка.
Тест выполняет инверсию цветов для входного изображения на DSP-ядре.
Формат запуска:
delcore30m-inversiontest [-h] [-p <firmware_path>] -i <input_file> -o <output_file>
Описание параметров:
-h- вывод справки;-p- путь к прошивке для DSP. По умолчанию прошивка берется из файла/usr/share/delcore30m-tests/inversiontest.fw.bin;-i- путь до файла с входным изображением в форматах jpeg или png;-o- путь для сохранения выходного изображения в формате png.
Перед запуском теста необходимо выполнить пункты, описанные в разделе Подготовка.
Утилита delcore30m-test.py выполняет автоматический запуск тестов delcore30m-paralleltest, delcore30m-fibonacci и delcore30m-inversiontest с различными параметрами.
Формат запуска:
delcore30m-test.py
Note
Утилита delcore30m-test.py самостоятельно выполняет пункты, описанные в разделе Подготовка. При завершении утилита загружает обратно модуль драйвера avico и драйвер DMA.
В рамках демонстрации выполняется захват видео с видеомодуля с последующей инверсией цветов на DSP и выводом на HDMI-дисплей.
Формат запуска:
delcore30m-inversiondemo -i <iface> [-o <file>] [-w <width>] [-h <height>] [-v] [-c <id>]
Описание параметров:
-i- номер интерфейса видеомодуля. Доступные значения:- 0 - PInterface0;
- 1 - PInterface1;
- 2 - SInterface0(CSI0);
- 3 - SInterface1(CSI1).
-o- путь к файлу framebuffer. По умолчанию используется/dev/fb0;-w- ширина видеокадра. По умолчанию берется из framebuffer;-h- высота видеокадра. По умолчанию берется из framebuffer;-v- печать дополнительных сообщений;-c- идентификатор коннектора DRM. По умолчанию используется первый доступный.
Перед запуском демонстраций необходимо выполнить пункты, описанные в разделе Подготовка.
В случае успеха на HDMI-мониторе можно наблюдать инвертированные данные с видеомодуля, а также данные о производительности и загрузке CPU.
Завершение демонстрации осуществляется путем нажатия клавиш Ctrl+C.
В рамках демонстрации выполняется захват видео с видеомодуля с последующей детекцией движения и выводом на HDMI-дисплей.
Детекция движения выполняется на CPU и DSP для утилит delcore30m-cpudetector и
delcore30m-dspdetector соответственно.
Формат запуска:
delcore30m-cpudetector -i <iface> [-o <file>] [-w <width>] [-h <height>] [-v] [-c <id>] delcore30m-dspdetector -i <iface> [-o <file>] [-w <width>] [-h <height>] [-v] [-c <id>]
Описание параметров:
-i- номер интерфейса видеомодуля. Доступные значения:- 0 - PInterface0;
- 1 - PInterface1;
- 2 - SInterface0(CSI0);
- 3 - SInterface1(CSI1).
-o- путь к файлу framebuffer. По умолчанию используется/dev/fb0;-w- ширина видеокадра. По умолчанию берется из framebuffer;-h- высота видеокадра. По умолчанию берется из framebuffer;-v- печать дополнительных сообщений;-c- идентификатор коннектора DRM. По умолчанию используется первый доступный.
В демонстрации выполняется накопление сцены в течение первых тридцати кадров. Начиная с 31 кадра, выполняется детекция движения согласно алгоритму вычитания фона.
Перед запуском демонстраций необходимо выполнить пункты, описанные в разделе Подготовка.
В случае успеха на HDMI-мониторе можно наблюдать детекцию движения с данных видеомодуля, а также данные о производительности и загрузке CPU.
Для утилиты delcore30m-dspdetector возможен сброс сцены при нажатии клавиши u.
Завершение демонстрации осуществляется путем нажатия клавиш Ctrl+C.
Более детальное описание демонстраций находится в документе "Инструкция по захвату видео с последовательного сенсора на модулях на базе 1892ВМ14Я".