IoT Yocto v24.0 - 2024 July 1

IoT Yocto v24.0 release supports Genio SoC families based on Yocto Kirkstone and Linux 5.15. This page provides an overview of the major changes and new features in v24.0.

Supported Boards

This release supports following boards based on MT8365(Genio 350/G350), MT8370(Genio 510/G510), MT8390(Genio 700/G700), and MT8395(Genio 1200/G1200) MediaTek SoC families:

Board Name

MACHINE name for bitbake

Genio 350-EVK(P1V3)

  • genio-350-evk

Genio 510-EVK(P1V2)

  • genio-510-evk

Genio 700-EVK(P1V3)

  • genio-700-evk

Genio 1200-EVK(P1V2)

  • genio-1200-evk (EMMC boot)

  • genio-1200-evk-ufs (UFS boot)

Important

The Genio 700-EVK has two hardware versions, P1V3 and P1V4. The major difference between them is the DSI display module. - Genio 700-EVK(P1V3) uses startek-kd070fhfid015 - Genio 700-EVK(P1V4) uses startek-kd070fhfid078, which shares the same DSI module as the Genio 510-EVK(P1V2) and Genio 1200-EVK(P1V2)

Supported Software Features & Specs

Please go to IoT Yocto Feature Table (v24.0) to check the software support status for the IoT Yocto v24.0 release.

../../../_images/sw_yocto_release-notes_feature-table.png

A Segment of IoT Yocto Feature Table (v24.0)

Prebuilt Images Download

Board

Prebuilt Image

MD5 Checksum

G350-EVK(P1V3)

download private image

bfd6674dba0e671c74f0ed5fc04366f8

G350-EVK(P1V3)

download public image

1f4a1cab0c6d97ac2e4c3a641276e719

G510-EVK(P1V2)

download private image

ddba3534edeee0e5083b0dc0f6abdc31

G510-EVK(P1V2)

download public image

08ab894c2cdec53d180194dd403e4413

G700-EVK(P1V3)

download private image

d93ce1945ed4e4db143ee4d1029f7073

G700-EVK(P1V3)

download public image

4fbe1779382a213894045bd8f0edab69

G700-EVK(P1V4)

download private image

1c0f28a77148221203e4ebec386c8ff5

G700-EVK(P1V4)

download public image

f687588cc2dfb6d64165cb07e1a2f6e2

G1200-EVK(P1V2)

download private image

cdeec960babc1058cf5d9b1ef6f857d1

G1200-EVK(P1V2)

download public image

bf82284682ebbf2783153eaa04915f36


IoT Yocto v24.0 is available in two different packages groups:

  • You don’t need a GitLab account to download both private and public prebuilt images, but you need to agree to the Software License Agreement.

  • You don’t need a GitLab account to build the public image configurations.

  • You need a GitLab account and contracts to MediaTek to access and build the private image.

Public images are built with packages that are available without explicit access permissions to the GitLab group. Some proprietary features are excluded, and some proprietary components are provided in binary-only format. You may find the binary modules and its licensing in the last page of the IoT Yocto Feature Table (v24.0).

Private images, on the other hand, require access to private repositories in the GitLab group. In v24.0 release, the private image provides these additional features on top of the public configuration:

  • Security features on all Genio platforms, including:

    • eFuse writer and custom data field access

    • RPMB access API

  • ISP for RAW sensors and YUV sensors support on Genio 510, Genio 700 and Genio 1200

  • Xtensa-ANN support on Genio 350

  • MT7663 proprietary Wi-Fi driver on Genio 350

  • MT7663 BlueDroid support and proprietary Bluetooth driver on Genio 350

Source Code Download

Important

Please read and agree the Software License Agreement before accessing or using IoT Yocto software. If you do not agree to the terms and conditions of the Software License Agreement, you must not access or use the software.

To download and build IoT Yocto recipes, please use the critical-fixes/rity-kirkstone-v24.0 branch for repo manifest file:

Warning

The release tag rity-kirkstone-v24.0 leads to fetch errors in opengl-es-cts and vulkan-cts packages because the source repository has deleted the referece to master branch. The critical-fixes/rity-kirkstone-v24.0 branch includes recipe patches to update the branch name for these packages.

repo init -u https://gitlab.com/mediatek/aiot/bsp/manifest.git -b critical-fixes/rity-kirkstone-v24.0

To fetch source code and build images using these Yocto recipes, please refer to steps in Build from Source Code

Tools

genio-tools is released to load built images to the development boards. Please refer to Get Started with IoT Yocto and Genio Tools for detailed usage.

Major Software Package Versions

  • Yocto LTS Kirkstone updated to 4.0.17

  • Linux Kernel updated from 5.15.42 to 5.15.47

  • ATF version kept in v2.6

  • U-Boot version kept in v2022.10

  • OPTEE version kept in 3.19

  • Mali GPU driver version in DDK updated from r43 to r48

Major Changes

  • Secure Boot now supports RSA3072 as the default configuration (Genio 350, Genio 510, Genio 700, Genio 1200).

  • Introduced several new camera features and improvements. Please check Camera for detailed camera support combinations.
    • MediaTek Imgsensor Architecture now supports ISP+RAW sensors (Genio 510, Genio 700).

    • MediaTek Imgsensor Architecture now supports ISP+RAW/YUV multi-sensor capabilities (Genio 510, Genio 700, Genio 1200).

    • V4L2 Sensor Architecture now supports virtual channel to receive SerDes(YUV) sensors (Genio 510, Genio 700, Genio 1200).

  • HDMI-TX now supports CEC and HDCP (Genio 510, Genio 700, Genio 1200).

  • LT6911 (HDMI to CSI bridge IC) is supported as a POC feature (Genio 510, Genio 700, Genio 1200).

  • SOF (Sound Open Firmware) is supported on Tensilica HiFi DSP (Genio 510, Genio 700, Genio 1200).

  • NeuroPilot now supports TensorFlow Lite online inference path, using the Stable Delegate architecture (Genio 510, Genio 700, Genio 1200).

  • Removed individual platform pages from this release note. For detailed features, please refer to IoT Yocto Feature Table (v24.0).

New Features

TFTP POC (Genio 1200)

The Genio 1200 now offer Ethernet support with U-Boot for tftpboot, a method for booting a device over an Ethernet network.

  • Support booting from a remote server as a boot source through the Ethernet port or transfer files for updates with U-Boot

  • This is a POC feature. The reference implementation is integrated, and the basic functionalities have been verified.

  • Users are required to develop their configurations and other software modules based on their user scenarios.

For details, please refer to Boot from Other Storage (POC).

Secure Boot RSA3072 (Genio 350, Genio 510, Genio 700, Genio 1200)

The secure boot (chain of trust) cryptography algorithm has been upgraded from RSA2048 to RSA3072 by default.

  • Genio 350: BL1 (BROM) to BL2 (TFA) uses RSA3072 for signing with SHA256.

  • Genio 510: BL1 (BROM) to BL2 (TFA) uses RSA3072 for signing with SHA384.

  • Genio 700: BL1 (BROM) to BL2 (TFA) uses RSA3072 for signing with SHA384.

  • Genio 1200: BL1 (BROM) to BL2 (TFA) uses RSA3072 for signing with SHA256.

  • All of the RSA3072 demo keys (stored as plain text files) for image signing are provided in the IoT Yocto public release. Please be aware these keys are for demo purposes only and should not be used for other purposes.

  • The BL2 signing tool requires an NDA and may be acquired from MediaTek direct support channels or MediaTek ecosystem partners.

  • The BL3 and OS image signing tools are provided in the IoT Yocto public release.

For details, please refer to Secure Boot: BL1 to BL2.

RAW Sensor for MediaTek Imgsensor Architecture (Genio 510, Genio 700)

The Genio 510, Genio 700 now support ISP+RAW with the MediaTek Imgsensor Architecture.

  • The RAW sensor feature was developed and verified with the Camera D2 board (IMX214).

For details, please refer to RAW Sensor (MediaTek Imgsensor).

Multi-Sensor for MediaTek Imgsensor Architecture (Genio 510, Genio 700, Genio 1200)

The Genio 510, Genio 700, Genio 1200 now support Multi-Sensor with the MediaTek Imgsensor Architecture.

  • RAW+YUV, RAW+RAW, and YUV+YUV combinations are verified on Genio 510-EVK and Genio 700-EVK.

  • Unable to verify the multi-sensor combination on Genio 1200-EVK due to the shared reset and control pin design among different CSI ports.

  • The CSI port design for Genio 510-EVK and Genio 700-EVK supports multi-sensor.

  • The CSI port design for Genio 1200-EVK does not support multi-sensor due to the shared reset and control pin design among different CSI ports.

For details, please refer to Camera.

Virtual Channel for V4L2 Sensor Architecture (Genio 510, Genio 700, Genio 1200)

The Genio 510, Genio 700, and Genio 1200 now support virtual channels with the Standard V4L2 Sensor Architecture.

  • The virtual channel feature was developed and verified with SerDes MAX9286 + MAX96705 combinations.

  • Genio 510 and Genio 700 support up to 8 virtual channels.

  • Genio 1200 supports up to 6 virtual channels.

For details, please refer to Virtual Channel (V4L2 Sensor).

HDMI-TX CEC & HDCP (Genio 510, Genio 700, Genio 1200)

The Genio 510, Genio 700, and Genio 1200 HDMI-TX now support CEC & HDCP.

  • Customers are required to have an HDCP license to apply for the HDCP patch from MediaTek direct support channels or MediaTek ecosystem partners.

For CEC details, please refer to HDMI CEC. For HDCP details, please refer to HDMI HDCP.

LT6911 POC (Genio 510, Genio 700, Genio 1200)

The Genio 510, Genio 700, and Genio 1200 now offer basic support for the LT6911, an HDMI to CSI/I2S bridge IC.

  • It allows these platforms to support multiple HDMI inputs as video input sources to the CSI port.

  • This is a POC feature. The reference driver is integrated, and the basic functionalities have been verified.

  • Users are required to develop their own drivers and other software modules based on their specific use cases.

For details, please refer to Lontium LT6911UXE.

Xtensa HiFi DSP support through SOF (Sound Open Firmware) (Genio 510, Genio 700, Genio 1200)

The built-in Xtensa DSP in Genio 510 (HiFi 5), Genio 700 (HiFi 5), and Genio 1200 (HiFi 4) is now supported through SOF.

  • It allows these platforms to support Xtensa HiFi DSP.

  • With SOF, users can develop their own audio DSP features, including processing pipelines, components, and infrastructure.

  • This is a POC feature. The reference driver is integrated, and the basic functionalities have been verified.

  • Users are required to develop their own drivers and other software modules based on their specific use cases.

For details, please refer to Audio DSP.

Online APU Inference through TensorFlow Lite Stable Delegate (Genio 510, Genio 700, Genio 1200)

Users can run AI inference on APU (VPU/MDLA) with the TFLite interpreter through the Stable Delegate interface.

  • Stable Delegate is still an experimental feature in the latest TensorFlow release (v2.16).

  • TFLite models are runtime-compiled through the TFLite interpreter, which can accept more operations than offline dedicated compilation.

  • Global fallback to TFLite-CPU for unsupported operations rather than full-graph rejection.

For details, please refer to ML Section.

Known Issues

Here are some known issues in the v24.0 release. These issues are under investigation and will be fixed in future patches.

  • After upgrading the ARM Mali GPU from DDK r43 to r48, the suspend power slightly increased by 5% on the Genio 510. The root cause is still under investigation.

  • The Genio 510/Genio 700/Genio 1200 camera rarely fails in a stress test environment (repeatedly opening/closing using a script).

  • Building of application SDK fails with machine set to genio-350-evk and NDA features enabled, due to the conflict when installing packages. Disabling NDA features when building the application SDK can work around the issue.