Примечания к выпуску
2023.03
Уведомление по обновлению
Ядро Linux данной сборки несовместимо с прошивкой QSPI0 (sbl, ddrinit, TF-A, U-Boot) предыдущих версий. Для корректной работы требуется перепрошивка QSPI-флеш и eMMC/SD-карты модуля.
Для корректной работы требуется очистка секции переменных окружения QSPI0. Команды очистки секции см. Переменные окружения.
Основные изменения
Добавлена поддержка контроллеров CAN, MFBSP0 I2S, PWM, QSPI1.
Добавлена поддержка CPUFreq для CPU и devfreq для DSP.
Добавлена поддержка линейного выхода аудио и микрофона на ROCK Pi N10 и SMARC-CB.
Добавлена поддержка HDMI-аудио на ROCK Pi N10 и SMARC-CB.
U-Boot обновлён до версии 2022.10.
Добавлена поддержка сборки в Ubuntu 2022.04 (файл
Dockerfile.ubuntujammy
).Выпускаемые исходные коды переведены на сборку в среде
Dockerfile.centos8stream
.Важно
Dockerfile.centos7
оставлен для совместимости, будет удалён в будущих выпусках.Добавлен фрагмент
external-mcom03/fragments/linux510.fragment
с начальной поддержкой ядра 5.10. В ядре поддержаны интерфейсы модулей ELV-MC03-SMARC, ROCK Pi N10, ELV-SMARC-CB поддержанные в 4.19 за исключением компонентов поддержки ввода видео GStreamer Felix ISP.Важно
Данные примечания к выпуску описывают изменения в Buildroot c ядром 4.19. Следующие выпуски Buildroot будут базироваться на ядре 5.10. Поддержка ядра 4.19 в будущих выпусках будет прекращена.
U-Boot
U-Boot обновлён до версии 2022.10.
Изменено смещение переменных окружения c 0x100000 на 0xFE0000.
Добавлен скрипт
tools/mcom03-fw-update.sh
для обновления прошивки SPI из Linux устройства.Добавлен и включен драйвер mcom03-wdt с реализацией сброса WDT0 через SiP-вызовы TF-A.
Добавлена поддержка USB 3.0 (ранее поддерживался только USB 2.0).
TF-A
Добавлен SiP-сервис (Silicon Provider) для обработки запросов по управлению WDT0.
Linux
Добавлена поддержка контроллеров CAN0, CAN1 (драйвер mfbsp-can).
Добавлена поддержка контроллеров MFBSP0 I2S.
Исправлена поддержка контроллера UART3.
Добавлена поддержка контроллера PWM (драйвер pwm-mcom).
Ограничен размер буфера контроллера SPI0 для обхода ошибки переполнения буфера.
Добавлен и включен драйвер mcom03-wdt с реализацией сброса WDT0 через SiP-вызовы TF-A.
Добавлено описание пинов MFBSP0, MFBSP1 в режиме GPIO.
Добавлена поддержка выбора источника частоты USB Phy с внутренней PLL.
Добавлен драйвер CPUFreq (по умолчанию включен Ondemand governor).
Добавлена поддержка полудуплексного режима Ethernet.
Драйверы pinctrl:
Добавлена поддержка управления падами NAND, QSPI1.
Добавлено отключение падов параллельного порта DP при выводе на DSI.
Поддержка DSP:
Понижена частота DSP с 459 МГЦ до 432 МГц для повышения стабильности работы стресс-тестов.
Добавлена поддержка управления частотой DSP devfreq (по умолчанию включен performance governor).
Buildroot
external-mcom03
:Включена сборка пакетов поддержки CAN, ethtool, утилиты mcom03-fw-update.sh.
В overlay добавлен файл конфигурации ALSA для ROCK Pi N10.
В
/etc/os-release
добавлен UUID CI-сборки.Исправлена ошибка компиляции Qt5.
Файл
images/output/sbl.bin
перенесён вimages/output/sbl/sbl.bin
.
Поддержка VPU ARM Mali V61
В GStreamer-плагине
gst-omx
исправлены ошибки.
Поддержка Elcore-50 DSP
ElcoreCL SDK обновлён до версии 1.1, см. «Примечания к выпуску» в документации https://dist.elvees.com/elcorecl/docs/1.1/html.
ElcoreNN SDK обновлён до версии 1.4.0, см. «Примечания к выпуску» в документации https://dist.elvees.com/elcorenn/docs/1.4.0/html.
В Buildroot переименованы пакеты поддержки DSP:
external-elcore50/package/velcore3-driver
вexternal-elcore50/package/elcore50-km
.
см. также «Поддержка DSP» в главе с описанием изменений в ядре Linux.
Поддержка Felix ISP
Добавлена поддержка IMX219 на ROCK Pi N10.
Обновлены команды примеров запуска приёма видео.
Поддержка ROCK Pi N10
Включен режим High Speed для SD-карты (частота шины ~31 МГц).
Добавлена поддержка аудио на HDMI.
Добавлена поддержка линейного выхода аудио и микрофона.
Поддержка ELV-SMARC-CB
Добавлена поддержка аудио на HDMI.
Добавлена поддержка линейных входа, выхода аудио и микрофона.
Добавлена поддержка CAN0, CAN1.
Добавлено управление вентилятором (контроллер EMC2303) в зависимости от температуры MCom-03.
Добавлена поддержка DSI-дисплея RPi.
Документация
В описании U-Boot добавлены инструкции по сбросу и очистке переменных окружения.
Обновлены поддерживаемые интерфейсы в описании ядра Linux.
Добавлена инструкция по сборке Buildroot с ядром 5.10.
Добавлена глава с описанием тулчейнов Buildroot.
2022.09
Важно
Ядро Linux данной сборки несовместимо с загрузчиком U-Boot предыдущих версий. Для корректной работы требуется перепрошивка QSPI-флеш и eMMC/SD-карты модуля.
Основные изменения
Добавлена поддержка DDR High — увеличен объем доступной памяти ОЗУ в Linux (до 7.5 ГБ на модулях ELV-MC03-SMARC):
Обновлены компоненты sbl, ddrinit, TF-A, U-Boot, Linux.
Тулчейн
toolchain-mipsel-elvees-elf32
MIPS RISC0 обновлен до версии r184962_6.2022-05-17 (GCC 11.2.0).Обновлен скрипт
external-mcom03/contrib/mcom03-boot.mdb
для загрузки образов TF-A и U-Boot в DDR High.Пример распределения памяти ОЗУ ELV-MC03-SMARC (установлено 8 ГБ DDR):
0.5 ГБ для DDR Low RISC0 (например, ПО доверенной загрузки, по 0.25 ГБ на DDR-контроллер).
1 ГБ зарезервирован для корректной работы драйверов выполняющих atomic allocation. Резервирование выполнено в файле
/etc/sysctl.d/vm-min-free-kbytes.conf
rootfs.Объём памяти для пользовательских приложений ~6 ГБ (поле
available
командыfree
).
Добавлена поддержка программной перезагрузки в Linux (команда
reboot
). Подробнее см. Поддержка Watchdog.GStreamer-плагины в бинарном виде Felix ISP добавлены в основную сборку Buildroot.
Добавлен пакет ElcoreNN SDK — набор средств разработки для запуска нейросетей на DSP.
Добавлена поддержка переменных окружения QSPI0 U-Boot в ОС Linux.
Добавлена поддержка модулей:
ELV-SMARC-CB r1.0 с установленным модулем ELV-MC03-SMARC r1.1.
ELV-MC03-CB r1.1.0 с установленным модулем ELV-MC03 r2.0.
Обновлена документация:
Дистрибутив Buildroot — добавлены главы по прошивке eMMC, обзору загрузки ОС, запуску ОС на ROCK Pi N10.
Ядро Linux — добавлены главы с описанием поддерживаемых интерфейсов модулей.
ddrinit
Добавлена поддержка VMMU RISC0.
Добавлена поддержка DDR High.
Добавлена начальная поддержка загрузки в режиме BootROM.
U-Boot
Добавлена поддержка режима Quad в драйвере Silvaco QSPI.
Добавлена установка переменных окружения при первичной загрузке модуля (если область переменных в QSPI0 была пустая).
Исправлено зависание при чтении с QSPI.
Добавлена поддержка I2C в U-Boot (по умолчанию I2C включен для модуля MCom-03 BuB).
TF-A
Добавлена поддержка BL32.
Добавлена поддержка отключения CPU в PSCI.
Linux
Добавлена поддержка загрузки Linux с использованием DDR High-диапазона (обновлены драйверы PCIe, Ethernet, SDMMC, USB).
Добавлена поддержка Ethernet multicast.
Добавлена поддержка Ethernet 10 Mbit/s.
Добавлена поддержка DSI-дисплеев B101UAN01.7, U101FP05.
Добавлена поддержка DesignWare SPI0.
Добавлен драйвер Silvaco QSPI в Linux (QSPI0).
Исправлен неправильный clk_rate для VPU в драйвере частот.
Отключен вывод видео на параллельный порт при выводе на DSI-дисплей.
Buildroot
Добавлены утилиты чтения/установки переменных окружения U-Boot в Linux
fw_printenv
,fw_setenv
(Buildroot пакетuboot-tools
).Пакет
wget
заменён с версии BusyBox на стандартный (доступен расширенный набор опций утилиты).Добавлен бенчмарк
f3
(Fight Flash Fraud) — набор утилит для тестирования Flash-накопителей.Включена сборка пакета
collectd
(сервис сбора статистики о системе). systemd-сервис выключен по умолчанию.Включена сборка пакетов поддержки SATA, IIO, NFC, NMEA —
smartmontools
,libiio
,libnfc
,gpsd
.
Поддержка VPU ARM Mali V61
В GStreamer-плагине
gst-omx
реализована поддержка поворота изображения на 90°, 180°, 270° при кодировании.В GStreamer-плагине
gst-omx
добавлена поддержка отражения входных кадров при кодировании.Добавлена поддержка параметра
qfactor
для элементаomxmjpegenc
GStreamer-плагинаgst-omx
.Обновлена документация плагинов (см. Поддержка аппаратных блоков в GStreamer).
Поддержка Elcore-50 DSP
Обновлен тулчейн DSP Elcore-50 до версии r1613_806_2022.07.19.
В Buildroot интегрирован ElcoreNN SDK 1.3.1 — набор средств разработки для запуска нейросетей на DSP:
Включены Buildroot-пакеты
elcorenn
,elcorenn-examples
.Опубликована документация ElcoreNN SDK.
Библиотека ElcoreCL и драйверы Elcore-50 обновлены до версии 1.0:
Опубликована документация Elcore-50 SDK:
Разработаны инструкции по запуску hello-world на DSP в Buildroot (Buildroot-пакет
elcorecl-examples
), профилированию, управления задачами DSP. Добавлено описание утилит elcorectl, elcorecl-run.Включены Buildroot-пакет профилирования драйвера elcore50 (
python-elcorecl
).Добавлена поддержка профилирования gprof DSP-приложений.
Обновлен механизм сборки DSP-приложений в ElcoreCL:
cmake-модуль ElcoreProject был удален из субмодуля lib/cmake и перенесен в пакет библиотеки ElcoreCL.
cmake-макрос
elcoreproject_add()
теперь доступен после подключения библиотеки ElcoreCL черезfind_package()
.
Исправлены исключения по чтению и записи на вершине стека при использовании «круглых» адресов.
Исправлены утечки памяти в драйвере DSP при запуске приложений с использованием elcorecl-run.
Оптимизиован драйвер QLIC — уменьшено количество обращений к регистрам QLIC в обработчике прерывания.
Поддержка Felix ISP
Компоненты поддержки Felix ISP перенесены в основную сборку Buildroot.
Добавлена поддержка библиотеки
gpiod
для управления питанием и сбросами сенсоров.Добавлено автоопределение конфигурации сенсоров OV2718 в зависимости от ревизии сенсоров.
Поддержка ELV-SMARC-CB
Добавлена поддержка сборки Buildroot для ELV-MC03-SMARC r1.0 в составе ELV-SMARC-CB r1.0 (фрагмент
elvsmarccb.fragment
). Подробнее см. Ядро Linux.
Поддержка ELV-MC03-CB
Добавлена поддержка сборки Buildroot для ELV-MC03 r2.0 в составе ELV-MC03-CB r1.1.0 (фрагмент
elvmc03cb.fragment
).
Поддержка NGFW-CB
Добавлена поддержка GPIO-расширителя TCA6416ARTWR.
Добавлена поддержка интерфейса 1-Wire на DS2482.
В Buildroot включен пакет с прошивками для работы Wi-Fi модулей на основе Atheros QCA6174.
В Linux-драйвере
lan743x
исправлена автозагрузка при работе с устройствами на основе Microchip LAN743x PCI Express Gigabit Ethernet.Исправлены ошибки при работе uSD-карты (SDMMC1).
Поддержка EGW-CB
Добавлена поддержка сборки Buildroot для EGW-PM r1.0 в составе EGW-CB r1.1 (фрагмент
egwcb.fragment
).Добавлена поддержка GPIO-расширителя MCP23017.
Добавлена поддержка модуля Lora RAK2287.
Добавлена поддержка модуля Wi-Fi SparkLAN WNFQ-261ACNI(BT).
Поддержка сенсоров температуры LM73.
Добавлена поддержка Micro Crystal RV-8803 RTC.
2022.06
Важно
Ядро Linux данной сборки несовместимо с загрузчиком U-Boot предыдущих версий. Для корректной работы требуется перепрошивка QSPI-флеш и eMMC/SD-карты модуля.
Исправлена настройка частот в SBL, ddrinit. Некорректная настройка приводила к зависаниям при параллельной работе нескольких ведущих на шине AXI.
Тулчейн Codescape MIPS заменён на тулчейн MIPS от АО НПЦ ЭЛВИС (рецепт сборки для тулчейна см. директории
external-mcom03
). Тулчейн от ЭЛВИС реализует обходы аппаратных ошибок RISC0. ОбновлёнDockefile.ubuntufocal
для поддержки тулчейна.Добавлен архив с тулчейнами (aka Buidroot SDK), см. файл
images/aarch64-buildroot-linux-gnu_sdk-buildroot.tar.gz
.ddrinit портирован с ARM CPU на MIPS RISC0. Время инициализации DDR увеличилось до 1 с. ddrinit может быть оптимизирован в будущих версиях.
TF-A обновлён до версии 2.6.
В GStreamer-плагинах добавлена поддержка кодирования и декодирования H.265, кодирования MJPEG.
В U-Boot в драйвере NAND-контроллера отключена поддержка подстраниц (subpage) — контроллер не поддерживает подстраницы.
Поддержка Felix ISP:
Добавлена сборка с GStreamer-компонентами gst-felix для поддержки Felix ISP. Примеры запуска видеосенсора OV5647 на ROCK Pi N10 с установленным модулем ELV-MC03-SMARC r1.1 см. ISP Felix v2505.
В драйвере ISP поддержано отключение частот при отключенном приёме видео.
Компоненты поддержки Felix ISP доступны в сборке rockpi-private и будут перенесены в основную сборку rockpi в будущих версиях.