IoT Yocto Overview
Based on the Yocto project, IoT Yocto provides board support packages(BSP) for Genio evaluation kits and development boards.
Derived from open source projects, IoT Yocto aims to conform to upstream interfaces and designs when applicable, including:
Most components in the BSP, including bootloader and Linux kernel, are forked from corresponding open source upstream projects and closely tracked to keep updated with the upstream.
Some supporting packages, based on the collection of Yocto project, are patched for compatibility.
Certain hardware drivers and supporting software are provided as proprietary packages that allow redistribution to be used with MediaTek Genio chipsets. Please read the license terms before using these components.
The following diagram shows software components used in IoT Yocto. Please note that the support status of each software component depends on SoC and board capabilities.
Key Features
As of 2022 Q3, the v22.1 release includes the following components and features:
Boot Loader and Kernel
For versions of each component in each release, please refer to the release notes.
Components
Based on Yocto project recipes, IoT Yocto provides BSP support with following software components:
Display: libDRM/DRI support with Wayland display backend
Graphics: GPU driver with OpenGL ES support
AI: Tensorflow-lite integration and also proprietary runtime inference libraries
Audio: supported through ALSA framework
Video: hardware video codec with V4L2 interface and GStreamer integration, supported by proprietary user-space driver and services.
Camera: external OnSemi AP1302 ISP with V4L2 interface, GStreamer integration, and libcamera integration
Security: OP-TEE integration
Wi-Fi:
External MT7663 connectivity module support with proprietary Wi-Fi driver and network manager integration.
External MT7921 connectivity module support with open source Wi-Fi driver and network manager integration.
- Bluetooth:
External MT7921 connectivity module support with open source Bluetooth driver and BlueZ integration.
Tools
Flash programming tool supporting Genio evaluation kits such as Genio 350-EVK and Genio 1200-Demo Board.
Getting Access to IoT Yocto
IoT Yocto is currently hosted on http://www.gitlab.com/mediatek/aiot.
Most packages and Yocto recipes in IoT Yocto are available for access without registration. For example, the Linux kernel fork for IoT Yocto is hosted in https://gitlab.com/mediatek/aiot/bsp/linux. You can access it without a GitLab account.
However, certain proprietary packages are permission controlled, and require different license agreements. These packages are currently located under https://gitlab.com/mediatek/aiot/nda namespace. You can enable these proprietary packages during the build process using a configuration flag NDA_BUILD.
For more details, please refer to the chapter here GitLab Account Setup.