This repository aims to bring STM32MP2 support into OpenBMC project.
The meta-st is based on OpenSTLinux distribution.
Version | |
---|---|
Yocto | Walnascar |
OpenSTLinux | 6.1.0 |
OpenBMC | 2.18.0 (SHA1 : 05f7a3f2eddb94263a03c5e601452f0d4ec5c87b) |
The first step to do is to clone openBMC community project from the official GitHub repository. We need to point on the SHA1 mentioned in the table above.
git clone https://github.com/openbmc/openbmc.git
cd openbmc
git checkout 05f7a3f2eddb94263a03c5e601452f0d4ec5c87b
You can check all the supported platforms by doing the following command :
. setup
It will display all the different MACHINE you can source with Yocto. You can also see that there is no STMicroelectronics SoC/boards present, we will so add them thanks to this repo.
This step is quite simple, we will simply clone this current repository into a temporary folder, then copy meta-st into openbmc repo that we cloned before. We will call :
- <folder_openbmc> the directory in which openbmc project is located.
- <folder_st> the directory in which you cloned this repo.
mkdir <folder_st>
cd <folder_st>
git clone https://github.com/STMicroelectronics/openbmc-stm32mpu.git -b yocto_walnascar
cp -r ./openbmc-stm32mpu/meta-st <folder_openbmc>/openbmc
In your openbmc repo, you should now see the meta-st layer next to all other vendor Yocto layers.
To be as close as possible from the OpenBMC code/distribution spirit, we now deliver the STM32MP25 eval board machine into the existing dedicated folder (meta-evb), as well as some patches needed in meta-phosphor.
You so have to apply the 2 patches present in this repo.
cd <folder_openbmc>/openbmc
git apply <folder_st>/openbmc-stm32mpu/0002-Update-meta-evb-to-support-STM32MP257F-EV-board.patch
git apply <folder_st>/openbmc-stm32mpu/0003-Update-meta-phosphor-for-ST-need.patch
Now if you do
. setup
You should see the STM32MP257F-EV1 machine (evb-stm32mp257f-ev1)
To sources your Yocto build environment, you can now do:
. setup evb-stm32mp257f-ev1
You are now ready to build :
bitbake obmc-phosphor-image
This Yocto compilation can take a lot of time, take a break ! When compilation is finished, your final openBMC distribution image is now generated.
To ensure the compatibility with STMicroelectronics tools as CubeProgramer, meta-st does not use the default File System generated by openbmc distribution project, but keep its native OpenSTLinux recipes to format the TSV files, the FIPs and so on. You can go in the correponding build folders to get all the files generated :
cd tmp/deploy/images/evb-stm32mp257f-ev1/
The way to flash your image is so definitly the same as explained in OpenSTLinux documentation. Please refer to the Populate the target and boot the image article corresponding to your platform : https://wiki.st.com/stm32mpu/wiki/Getting_started
Example for STM32MP257F-EV board : here
Once the image is flashed, you can boot your board with openBMC distribution software running on it.
The OpenBMC distribution is configured with default credentials used to login on both console and OpenBMC webUI.
- login: root
- password: 0penBmc
Take care, password begins by a zero.
The STM32MP257F-EV1 machine is configured with a minimal example of sensors and LED settings. This can be observed through the WebUI interface proposed by OpenBMC. Check the Ethernet address of your board through "ip a" command, then connect to webUI through the following link on a machine in the same network.
- link: https://<ip_board>
Credentials are the same than the ones described above.
The Yocto layer distributed here guarantees only minimal support for STM32MPU platforms within the OpenBMC project. Configuration and interconnection with the host chip and chassis must be done entirely by the user. For further information, please refer to the official OpenBMC project documentation.
For each release, you can identify the version by the different information below :
- Branch : the name of the Yocto version used.
- Tag ST : the version of OpenSTLinux used as basis for meta-st.
- Tag OpenBMC : the version of OpenBMC project release.