Примечания к выпуску

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:

  • Библиотека 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 в будущих версиях.