Get ready for the STM32 Summit 2026 | Online, November 3
Ask questions and find answers on STM32 microprocessors, including hardware, power, DRAM, flashing, interfacing, device tree, and peripherals.
Most recent activity
Hello we are using STM32mp153 for multiple products, and I'm considering buiding a generic TF-A bootloader with one device tree with all the clocks enabled for all the peripherals. I would like to do this in order to make it more generic across our portfolio.Does this come with any potential problems down the line?
..
I have a custom build on the stm32mp157f dk2.stm TF-A v2.6-r1 or vanilla TF-A v2.7, using sp_min.stm U-boot 2020.10-r2 or vanilla Barebox-2022.06.I've also tried U-boot 2021.10-r1, but that one crashes the kernel even earlier.Kernel: vanilla 5.18/vanilla 5.19.FSBL starts fine.Both v2.6 and v2.7 starts just fine. sp_min too.Both TF-A versions load and executes BL33 (stm u-boot or vanilla barebox) just fine.But when I use stm TF-A v2.6 kernel crashes when started from BL33.Works fine with vanilla TF-A 2.7 all other components being equal.I can see the kernel decompression but stops executing directly after that.This happens regardless if I do the fip manually or if TF-A puts it together.Kernel 5.18 or 5.19 doesn't matter. But when I use vanilla TF-A both kernels boot.TF-A is configured exactly the same using the variable configuration.
When I use cmake,/opt/st/stm32mp1/4.0.1-openstlinux-5.15-yocto-kirkstone-mp1-v22.06.15/sysroots/x86_64-ostl_sdk-linux/usr/share/cmake-3.22/Modules/CMakeTestCXXCompiler.cmake:62: error: The C++ compiler "/opt/st/stm32mp1/4.0.1-openstlinux-5.15-yocto-kirkstone-mp1-v22.06.15/sysroots/x86_64-ostl_sdk-linux/usr/bin/arm-ostl-linux-gnueabi/arm-ostl-linux-gnueabi-g++" is not able to compile a simple test program. It fails with the following output: Change Dir: /home/zxb/qt_proj/build-untitled1-Stm32mp1-Debug/CMakeFiles/CMakeTmp Run Build Command(s):/opt/st/stm32mp1/4.0.1-openstlinux-5.15-yocto-kirkstone-mp1-v22.06.15/sysroots/x86_64-ostl_sdk-linux/usr/bin/ninja cmTC_1f845 && [1/2] Building CXX object CMakeFiles/cmTC_1f845.dir/testCXXCompiler.cxx.o [2/2] Linking CXX executable cmTC_1f845 FAILED: cmTC_1f845 : && /opt/st/stm32mp1/4.0.1-openstlinux-5.15-yocto-kirkstone-mp1-v22.06.15/sysroots/x86_64-ostl_sdk-linux/usr/bin/arm-ostl-linux-gnueabi/arm-ostl-linux-gnueabi-g++ --sysroot=/
Hi,I follow "https://wiki.st.com/stm32mpu/wiki/PMIC_hardware_components#Support_in_Cortex-A7_Secure" can port the ecosystem 3.0 on the kit "stm32mp157c-odyssey" successfully, but fail to port the ecosystem4.0.The error log is :" 14:13:55 : Start Embedded Flashing service 14:13:55 : Memory Programming ... 14:13:55 : Opening and parsing file: tf-a-stm32mp157c-odyssey-usb.stm32 14:13:55 : File : tf-a-stm32mp157c-odyssey-usb.stm32 14:13:55 : Size : 225.76 KB 14:13:55 : Partition ID : 0x01 14:13:55 : Download in Progress: 14:13:56 : File download complete 14:13:56 : Time elapsed during download operation: 00:00:01.064 14:13:56 : RUNNING Program ... 14:13:56 : PartID: :0x01 14:14:14 : Error: Start operation failed at partition 0x01 14:14:14 : Error: TSV flashing service failed
I am getting "Error: can't fuse again in the OTP" when I tried registering a key on boards that shouldn't have been fused before. Is there a way to confirm if they are fused? Heres a picture of the output: Am I missing a step? I've been following "STM32 MPU ROM code secure boot" and "How to use U-Boot stm32key command" articles on how to enable secure boot.
Hi,We are using stm32mp157a-dk1 board.So we want to change the default console serial port(UART4) to anthour serial port(UART 7). I have changed respective .dts files in uboot it is working properly up to uboot.Know i want to change in kernal.So i Refereed St wiki.They said that we need to enable to CONFIG_DEBUG_LL, CONFIG_STM32MP1_DEBUG_UART and CONFIG_EARLY_PRINTK using the Linux Menuconfig.Refer below link for your referencehttps://wiki.st.com/stm32mpu/wiki/Dmesg_and_Linux_kernel_log#earlyprintk I am unable to active those configurations through linux menuconfig. I am using linux-5.13 version. How can i activate CONFIG_DEBUG_LL, CONFIG_STM32MP1_DEBUG_UART and CONFIG_EARLY_PRINTK?I am attaching my screenshots for linux-menuconfig and my uboot log.could you please help us in this regards.
Hi,We are using stm32mp157a processor in my custom board.I have download stm32mp157a-dk1 discovery kit code.The difference between discovery board and my custom board is Debug Serial port Configuration.In Discovery Board The debug uart pins are PG11-->UART4_TXPB2-->UART4_RX. where as in my custom board the pins are different PE0--> UART8_TXPE1-->UART8_RXSo I have changed the pin muxing and nodes in dts files. And debug_uart_init() in Uboot source code. Up to Uboot It is working fine. I have done the same configuartion except debug_uart_init() in kernal source code.why because debug_uart_init() function is not there in linux source code. when can i get kernal log in my custom board. Please help me in this regards. You can see my log below.
When I change the download directory for my yocto project in my local.conf file, this note pops up, what is this and should I do anything about it.NOTE: /home/gencay/STM32MPU_workspace/openstlinux-5.15-yocto-kirkstone-mp1-v22.06.15/layers/meta-st/meta-st-openstlinux/recipes-st/images/st-image-resize-initrd.bb: ENABLE_PARTITIONS_IMAGE not enabled:45
To detach signing from cube programmer I made an open source C signing tool, using openssl. Should be rather easy to use in various build environments.https://github.com/milkylainen/stm32mp1sign
Hello everyone,I am trying to define a machine configuration file for a custom board using the DistributionPackage (I am following this approach from the ST wiki and my directory tree is the same described there).Currently, I managed to successfully boot my custom board using the DeveloperPackage, this makes me believe that the device tree files I generated using the ST MX Cube are okay.From my understanding, it is not possible to generate the filesystem files (e.g. ext4) within the DeveloperPackage (I used the ones from the StarterPackage); can you confirm this?So far, I populated the mx directory under <path of STM32MP1_Distribution_Package>/layers/meta-st/meta-st-stm32mp-addons/with the device tree files I generated using the DeveloperPackage and its directory tree looks as it follows:mx └── es-frank-ghiacciolo ├── kernel │ └── stm32mp157c-es-frank-ghiacciolo-mx.dts ├── optee-os │ └── stm32mp157c-e
I'm targeting:openstlinux-5.15-yocto-kirkstone-mp1-v22.07.27DISTRO: openstlinux-eglfsMACHINE: stm32mp15-discoImage+SDK build fine. I create the raw file as usual, image SD card, and boot fails with:NOTICE: Model: STMicroelectronics STM32MP157F-DK2 Discovery BoardNOTICE: Board: MB1272 Var4.0 Rev.C-02INFO: PMIC version = 0x20INFO: Reset reason (0x15):INFO: Power-on Reset (rst_por)INFO: FCONF: Reading TB_FW firmware configuration file from: 0x2ffe2000INFO: FCONF: Reading firmware configuration information for: stm32mp_ioINFO: Using SDMMCINFO: Instance 1INFO: Boot used partition fsbl1NOTICE: BL2: v2.6-stm32mp1-r1.0(debug):v2.6-dirtyNOTICE: BL2: Built : 13:14:26, Nov 23 2021WARNING: CRC check failed on FWU metadataWARNING: loading of FWU-Metadata failed, using Bkup-FWU-MetadataWARNING: CRC check failed on FWU meta
Hi MPU's Community, A "minor"patch release 4.0.2 is available for OpenSTLinux Distribution package.The corresponding oe-manifest tag is openstlinux-5.15-yocto-kirkstone-mp1-v22.07.27. It contains some fix of issues detected early after DV4.0.0 / openstlinux-5.15-yocto-kirkstone-mp1-v22.06.15 release and you may face. Here is the changelog : V4.0.2 ecosystem release o layers/meta-st/meta-st-openstlinux from [182b150] to [cbb3a2e] - [Update] CONF: update distro to Yocto 4.0.2 - [Update] GSTREAMER1.0: update to 1.20.2 - [Update] SYSTEMD: update to 250.5 o layers/meta-st/meta-st-stm32mp from [d00d3a0] to [00c2494] - [Update] CLASS: FLASHLAYOUT: correct bad exit of loop - [Update] CONF: correct examples to used according to devicetree package &n
Hello everyone ~My custom board has RGB(LTDC) and HDMI display interfaces. We want to display same screen on same time.(duplicate mode)So, LTDC interface connected to local LCD and HDMI transmitter(sii9022).&ltdc node of my dts is below ..&ltdc{ pinctrl-names = "default", "sleep"; pinctrl-0 = <&ltdc_pins_mx>; pinctrl-1 = <&ltdc_sleep_pins_mx>; status = "okay"; /* USER CODE BEGIN ltdc */ port { #address-cells = <1>; #size-cells = <0>; ltdc_ep0_out: endpoint@0 { reg = <0>; remote-endpoint = <&sii9022_in>; }; }; /* USER CODE END ltdc */ };and we can display both screen successfully as below picture. However, unfortunately my LCD`s resolution is 1280x800.and linux platform doesn't have this HDMI resolution mode.so my LCD was displayed as below...Therefore, I want to add 1280x800 mode to HDMI. Is there any guide article on wiki?Thanks a lot !!!
There is an issue with a number of variables in the example machine conf files in the 4.0.0 (Kirkstone) ecosystem. The variable names have been changed in meta-st-stm32mp/conf/machine/include files but have not been changed in the addons layer example machine conf files to match. Currently:# ========================================================================= # Device Storage # ========================================================================= # Enable the board device storage support with CUBEMX_DTB according to BOOTDEVICE_LABELS DEVICE_BOARD_ENABLE_NAND += "${@bb.utils.contains('BOOTDEVICE_LABELS', 'nand-4-256', '${CUBEMX_DTB}', '', d)}" DEVICE_BOARD_ENABLE_NOR += "${@bb.utils.contains('BOOTDEVICE_LABELS', 'nor-sdcard' , '${CUBEMX_DTB}', '', d)}" DEVICE_BOARD_ENABLE_EMMC += "${@bb.utils.contains('BOOTDEVICE_LABELS', 'emmc', '${CUBEMX_DTB}', '', d)}" DEVICE_BOARD_ENABLE_SDCARD += "${@bb.utils.contains('BOOTDEVICE_LABELS', 'sdcard', '${CUBEMX_DTB}', '', d)}" # ======
hello I have build tf-a and u-boot and signed them as specified in the st wiki documentation:But I get the following error when booting up:NOTICE: CPU: STM32MP157FAC Rev.Z NOTICE: Model: STMicroelectronics STM32MP157F-DK2 Discovery Board NOTICE: Board: MB1272 Var4.0 Rev.C-02 NOTICE: Bootrom authentication failed NOTICE: BL2: v2.6-stm32mp1-r1.0(release):v2.6-stm32mp-r1-3-gdbfd293df-dirty NOTICE: BL2: Built : 13:17:15, Aug 5 2022 NOTICE: ROTPK is not deployed on platform. Skipping ROTPK verification. NOTICE: ROTPK is not deployed on platform. Skipping ROTPK verification. NOTICE: BL2: Booting BL32 NOTICE: SP_MIN: v2.6-stm32mp1-r1.0(release):v2.6-stm32mp-r1-3-gdbfd293df-dirty NOTICE: SP_MIN: Built : 13:17:16, Aug 5 2022Note: I didn't deploy the publicKeysHashes.bin on my board since I'm using test keys (I's one time operation non revesible)Is it required publicKeysHashes deployemnt required ?
I am trying to populate sdk with flutter engine and having the error: URLError(gaierror(-3, 'Temporary failure in name resolution')Here is the github link of the flutter layer:https://github.com/meta-flutter/meta-flutterERROR: flutter-engine-git-r0 do_install: ExpansionError('do_install', "\n install -D -m0644 /home/gencay/STM32MPU_workspace/openstlinux-5.15-yocto-kirkstone-mp1-v22.06.15/build-openstlinuxweston-stm32mp15-disco/tmp-glibc/work/cortexa7t2hf-neon-vfpv4-ostl-linux-gnueabi/flutter-engine/git-r0/src/out/linux_release_arm/so.unstripped/libflutter_engine.so \\\n /home/gencay/STM32MPU_workspace/openstlinux-5.15-yocto-kirkstone-mp1-v22.06.15/build-openstlinuxweston-stm32mp15-disco/tmp-glibc/work/cortexa7t2hf-neon-vfpv4-ostl-linux-gnueabi/flutter-engine/git-r0/image/usr/lib/libflutter_engine.so\n\n if ${@bb.utils.contains('PACKAGECONFIG', 'desktop-embeddings', 'true', 'false', d)}; then\n install -m0644 /home/gencay/STM32MPU_workspace/openstlinux-5.15-yocto-kirkstone-mp1-v22.06.15
Link to the tutorial and warning:WARNING: st-image-weston-1.0-r0 do_st_write_license_create_summary: IMG LIC SUM: File does not exist with open file /home/gencay/STM32MPU_workspace/openstlinux-5.15-yocto-kirkstone-mp1-v22.06.15/build-openstlinuxweston-stm32mp1-test/tmp-glibc/deploy/licenses/st-image-resize-initrd-openstlinux-weston-stm32mp1-test-20220815132043/package.manifest
My TF-A on the stm32mp157f-dk2 is built with all the proper parameters.The FSBL is verified on a fused public key hash, but the device is not closed.I can see that the FSBL has a successful authentication.So I decided to check on the TBB CoT over the fip.I've put TF-A on stm32mp157f-dk2 into LOG_LEVEL=50 (verbose).But I still can't really tell any positive or negative flow from the CoT verification.As far as I can tell, there is negative printouts in the code.So it will probably complain if I get stuff wrong.But right now I can't easily see any positive feedback (like the FSBL one).I think it would be nice, for this high log level, to include some user digestible feedback regarding the TBB CoT process.
Datasheet shows Port I,J,KBut on the design schematic show only max PI11 plus PZ0...PZ7Is there no Pork J/K?
I have a custom Board based on STM32MP157CAC3 MPU. I am connecting MURATA 1DX WiFi+BT Module to SDMMC1 (4bits mode). The connection is exactly similar to stm32mp157c-dk2 board. The device tree is also similar. But the device is not being recognised.Do I have to enable some special flags during kernel compilation?Does Latest Kernel version has support for this 1DX Module.If someone wants to add a similar module AP6236, what will be the process of adding such module in baord.
st-image-resize-initrd-1.0-r0 do_rootfs: Unable to update the package index filesst-image-vendorfs-1.0-r0 do_rootfs: Unable to update the package index filesAnyone know how to fix this. Already have applied clean build. Build Configuration:BB_VERSION = "2.0.0"BUILD_SYS = "x86_64-linux"NATIVELSBSTRING = "universal"TARGET_SYS = "arm-ostl-linux-gnueabi"MACHINE = "stm32mp15-disco"DISTRO = "openstlinux-weston"DISTRO_VERSION = "4.0.1-snapshot-20220805"TUNE_FEATURES = "arm vfp cortexa7 neon vfpv4 thumb callconvention-hard"TARGET_FPU &nb
I did a repo sync to see if there are new version but did not worked after I stopped compiling, started again and it began where it left but moving really slow that particular task.
When we tried the shutdown command ( shutdown -hP now ) from the debug console, all the PMIC regulators are turned off, except for the BUCK3 VDD regulator used for IO.Both our custom board which uses STPMIC1E and the STM32MP157F-eval board which has STPMIC1A have the same behavior.Is there any configuration which is not letting it to be turned off?Any help is much appreciated.
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.