OpenSTLinux for VisionSOM-STM32MP1
From SomLabs Wiki
OpenSTLinux for VisionSOM-STM32MP1
Pre-built images
There are couple of pre-built images available for VisionSOM-STM32MP1 module and VisionCB-STD-STM32MP1 board. Each one can be written to the SD card using the following command:
sudo dd if=<image .raw file> of=/dev/sdX bs=1M
- RGB display with SoMLabs demo application
flashlayout_st-image-weston_FlashLayout_sdcard_stm32mp157a-visionsom-mx-basic_04_2020.zip
- RGB display without SoMLabs demo application
flashlayout_st-image-weston_FlashLayout_sdcard_stm32mp157a-visionsom-mx-basic_no_demo_04_2020.zip
- DSI display with SoMLabs demo application
flashlayout_st-image-weston_FlashLayout_sdcard_stm32mp157a-visionsom-mx-dsi-basic_04_2020.zip
- DSI display without SoMLabs demo application
Changelog
- openst-meta-somlabs 04_2020
- Added support for the openstlinux-4.19-thud-mp1-20-02-19
- Enabled the second SD-card (on the VisionCB-STD-STM32MP1 board) as an external storage
- Fixed the display transition between u-boot and Linux kernel
Old versions
- openst-meta-somlabs 03_2020
- RGB display with SoMLabs demo application
flashlayout_st-image-weston_FlashLayout_sdcard_stm32mp157a-visionsom-mx-basic_03_2020.zip
- RGB display without SoMLabs demo application
flashlayout_st-image-weston_FlashLayout_sdcard_stm32mp157a-visionsom-mx-basic_no_demo_03_2020.zip
- DSI display with SoMLabs demo application
flashlayout_st-image-weston_FlashLayout_sdcard_stm32mp157a-visionsom-mx-dsi-basic_03_2020.zip
- DSI display without SoMLabs demo application
Building own image
VisionSOM-STM32MP1 module is supported by Yocto meta-layer available on SoMLabs github:
https://github.com/SoMLabs/openst-meta-somlabs
The described layer shall be used with the OpenSTLinux Distribution Package provided by the STMicroelectronics:
https://wiki.st.com/stm32mpu/wiki/STM32MP1_Distribution_Package
It provides the support for VisionSOM-STM32MP1 module and VisionCB-STD-STM32MP1 board and is intended for build with the st-image-weston system image.
Obtaining the Yocto recipes
The following steps are the summary of the image building description that can be found on the ST wiki pages with the additional SoMLabs meta-layer.
First let's clone all of the repositories containing the required packages and system distribution:
cd <working directory path>/Distribution-Package mkdir openstlinux-4.19-thud-mp1-20-02-19 cd openstlinux-4.19-thud-mp1-20-02-19 repo init -u https://github.com/STMicroelectronics/oe-manifest.git -b refs/tags/openstlinux-20-02-19 repo sync cd layers/meta-st git clone https://github.com/SoMLabs/openst-meta-somlabs.git meta-somlabs cd ../../
The last git clone instruction downloads the meta layer with VisionSOM-STM32MP1 module support.
Bulding the image with RGB display support
The following commands generate the OpenSTLinux weston image that can be run on VisionSOM-STM32MP1 module and VisionCB-STD-STM32MP1 board with SL-TFT7-TP-800-480-P RGB display connected:
DISTRO=openstlinux-weston MACHINE=stm32mp157a-visionsom-mx source layers/meta-st/scripts/envsetup.sh bitbake st-image-weston cd tmp-glibc/deploy/images/stm32mp157a-visionsom-mx/scripts/ ./create_sdcard_from_flashlayout.sh ../flashlayout_st-image-weston/FlashLayout_sdcard_stm32mp157a-visionsom-mx-basic.tsv
The image file flashlayout_st-image-weston_FlashLayout_sdcard_stm32mp157a-visionsom-mx-basic.raw is located in the tmp-glibc/deploy/images/stm32mp157a-visionsom-mx directory and can be copied directly to the SD card:
sudo dd if=tmp-glibc/deploy/images/stm32mp157a-visionsom-mx/flashlayout_st-image-weston_FlashLayout_sdcard_stm32mp157a-visionsom-mx-basic.raw of=/dev/sdX bs=1M
The /dev/sdX shall be changed according to the SD card device name.
Bulding the image with DSI display support
The following commands generate the OpenSTLinux weston image that can be run on VisionSOM-STM32MP1 module and VisionCB-STD-STM32MP1 board with SH720128T003-ZBC02 DSI display connected:
DISTRO=openstlinux-weston MACHINE=stm32mp157a-visionsom-mx-dsi source layers/meta-st/scripts/envsetup.sh bitbake st-image-weston cd tmp-glibc/deploy/images/stm32mp157a-visionsom-mx-dsi/scripts/ ./create_sdcard_from_flashlayout.sh ../flashlayout_st-image-weston/FlashLayout_sdcard_stm32mp157a-visionsom-mx-dsi-basic.tsv
The image file flashlayout_st-image-weston_FlashLayout_sdcard_stm32mp157a-visionsom-mx-dsi-basic.raw is located in the tmp-glibc/deploy/images/stm32mp157a-visionsom-mx-dsi directory and can be copied directly to the SD card:
sudo dd if=tmp-glibc/deploy/images/stm32mp157a-visionsom-mx-dsi/flashlayout_st-image-weston_FlashLayout_sdcard_stm32mp157a-visionsom-mx-dsi-basic.raw of=/dev/sdX bs=1M
The /dev/sdX shall be changed according to the SD card device name.
Building the SDK
In order to build the cross-compiler and required libraries for software development on the host machine we need to build the SDK. After building the system image as described in the previous chapters we can simply call another bitbake command:
bitbake st-image-weston -c populate_sdk
It will create the SDK installer st-image-weston-openstlinux-weston-stm32mp157a-visionsom-mx-x86_64-toolchain-2.6-snapshot.sh or st-image-weston-openstlinux-weston-stm32mp157a-visionsom-mx-dsi-x86_64-toolchain-2.6-snapshot.sh that is located in the tmp-glibc/deploy/sdk directory. The installation script should be run on the host machine to install the development toolchain.