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

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 в будущих версиях.