Get ready for the STM32 Summit 2026 | Online, November 3
Join conversations with your peers and ST experts. Explore the full potential of STM32 microprocessors for your embedded design.
Most recent activity
I am developing a custom board using the STM32MP255F-AK.After configuring the kernel via menuconfig, the .config file reverts to its default state for some reason.The custom board settings and device tree are located in `meta-st-stm32mp-addons`.I have already fetched the source code using `devtool modify virtual/kernel`.Run `bitbake -c menuconfig virtual/kernel`ADIN_PHY was set to yThe .config file is saved in the following location:workspace/source/linux-stm32mp/.config.new -> ~/OpenSTLinux/distpkg_ev1/build-openstlinuxweston-stm32mp25 -disco/tmp-glibc/work/stm32mp25_disco-ostl-linux/linux-stm32mp/6.6.48-stm32mp-r1/build/.configNext,I ran `bitbake virtual/kernel`The ADIN_PHY=y setting remained in .configI tried running bitbake virtual/kernel againThe ADIN_PHY=y setting remains in .configI tried modifying the kernel's DeviceTreeI ran bitbake virtual/kernelIt reverted back to “ADIN_PHY is not set.” Also, the build result showed that the ADIN_PHY driver was not included.How can I prev
Hello teachers, I am a developer of the STM32MP157F chip and would like to ask you a question about device tree configuration. Please help me. The version I am currently using is as follows: optee 4.10 uboot 2023.10 linux 6.6 At present, the system startup is stuck in the kernel stage. I have attached the device tree and system startup log. Can you help me analyze the specific reasons? Thank you very much. I've been stuck on this problem for many days。NOTICE: CPU: STM32MP157FAD Rev.ZNOTICE: Model: STMicroelectronics STM32MP157F eval OSTL daughter on eval motherINFO: PMIC version = 0x21NOTICE: Reset reason (0x15):INFO: Power-on Reset (rst_por)INFO: FCONF: Reading TB_FW firmware configuration file from: 0x2ffe1000INFO: FCONF: Reading firmware configuration information for: stm32mp_fuseINFO: FCONF: Reading firmware configuration information for: stm32mp_ioINFO: Using SDMMCINFO: Instance 1INFO: Boot used partition fsbl1NOTICE: BL2: v2.10-stm32mp1-r2.0(debug):()NOTI
Hi everyone,I'm trying to install the EGit plug‑in on STM32CubeIDE version 1.14.1, but I'm running into persistent issues.During the installation, the dependency calculation phase fails, and CubeIDE proposes alternative solutions. If I continue using the option to keep the original installation and modify only the required components, the process eventually ends with an installation error.The exact same problem also occurs on STM32CubeIDE version 2.0.0, so it doesn’t seem related to a single release.Below is the full error log I receive:An error occurred while collecting items to be installedsession context was:(profile=STM32CubeIDE,phase=org.eclipse.equinox.internal.p2.engine.phases.Collect, operand=, action=).No repository found containing: osgi.bundle,javax.annotation,1.3.5.v20230504-0748No repository found containing: osgi.bundle,org.eclipse.emf.common,2.29.0.v20230916-0637No repository found containing: osgi.bundle,org.eclipse.emf.ecore.xmi,2.36.0.v20231002-1156No repository found
When U-boot is going to startup at the entry point address = 0x84000000, then this happens.IAC ID 137 is RISAF4 - DDR-SDRAM.SERC ID 32 is USART2.I don't know why USART2 seems to write at the Optee address region (0x82000000 - 0x83FFFFFF) and it all lands on 0x83FFFF80. The optee address region is secure and USART2 seems to write on this address.I have attached my complete device tree and I wonder if the ST dev team can help me to find why USART2 is trying to access 0x83FFFF80 in DDR-SDRAM?My processor is STM32MP257FAK.Note 1: The difference between 0x84000000 and 0x83FFFF80 is 128, e.g one byte. So I guess that something is shifted wrongly here?Note 2: I'm using LDO2 as VDDIO_SDCARD and BUCK7 for 3v3 for VDD_SDCARD. Because my PMIC is the STPMIC25A and not STPMIC25D. F/TC:0 0 pmic_get_voltage:192 vddgpu_pmic: get voltage: 800000 uV D/TC:0 0 set_opp:67 set clock to 800000kHz I/TC: Primary CPU switching to normal world boot INFO: BL31: Preparing for EL3
Hi ST Dev team!I have found that LSE is mandatory when building a new custom board. If not LSE is mounted and configured, then both TF-A and Op-tee will complaining about clock ID 5, which is LSE.Here is a walk around for Op-tee by removing the &clk-lse.https://github.com/DanielMartensson/Watermelon-Wine-1A/blob/linux-testing/watermelon-wine-os%2Fcubemx%2FCA35%2FDeviceTree%2Ffirmware%2Foptee-os%2Fstm32mp257f-firmware-mx.dts#L497-L498And for TF-A, ut must need some modification inside the code:https://github.com/evildeeds/meta-watermelon-wine-stm32mp/blob/656727dfcfb62cffbcd6aaec07fc4dfc55024a75/recipes-bsp/trusted-firmware-a/tf-a-stm32mp/clk-stm32-core.c#L462-L465Processor: STM32MP257F
Hi, I'm having trouble building the core-image-weston image. I'm using Ubuntu 22 and VMware Workstation.config in local.conf:MACHINE = "stm32mp1"DISTRO ?= "poky"EXTRA_IMAGE_FEATURES ?= "debug-tweaks"USER_CLASSES ?= "buildstats"PATCHRESOLVE = "noop"BB_DISKMON_DIRS ??= "\STOPTASKS,${TMPDIR},1G,100K \STOPTASKS,${DL_DIR},1G,100K \STOPTASKS,${SSTATE_DIR},1G,100K \STOPTASKS,/tmp,100M,100K \HALT,${TMPDIR},100M,1K \HALT,${DL_DIR},100M,1K \HALT,${SSTATE_DIR},100M,1K \HALT,/tmp,10M,1K"PACKAGECONFIG:append:pn-qemu-system-native = " sdl" CONF_VERSION = "2" Error :ERROR: libglu-2_9.0.3-r0 do_configure: meson failedERROR: libglu-2_9.0.3-r0 do_configure: ExecutionError('/home/dawid/Projects/yocto/build-mp1/tmp/work/cortexa7t2hf-neon-vfpv4-poky-linux-gnueabi/libglu/9.0.3/temp/run.do_configure.2642423', 1, None, None)ERROR: Logfile of failure stored in: /home/dawid/Projects/yocto/build-mp1/tmp/work/cortexa7t2hf-neon-vfpv4-poky-linux-gnueabi/libglu/9.0.3/temp/log.do_configure
Hello,For students, we recently bought the STM32MP257F eval board, and the related camera and hdmi bridge.Everything works perfectly and I would like to connect a Raspberry Camera v2. (IMX219) to the board, as it is also a CSI/MIPI camera (and whe have severals).Can it work ? what should be done related to the software ? (drivers and so on).By the way, what is the process to install packages in the board ?Best regardsS. M.
Hi ST Team,I am currently working with the STM32MP257F-EV1 based custom carrier board and experiencing an issue during the flashing process(boot mode is eMMC).Initially, the board works fine and flashing completes successfully. Over the time, the flashing is failing.From the flash logs, I observe that the failure occurs at partition 0x03 (refer the attached flash_log.txt).At the same time, the UART console shows panic logs during boot (attached in uart_boot_logs.txt).Could you help us to know the root cause of this issue and steps to recover?Thank & regards,Kaviya
Hello STM Team,I have been trying to get the GC2145 to work on the DK but no matter what i do i only get /dev/video0 but never /dev/media0I use Buildroot with the Linux kernel on ST's Github. I have followed this guide here: https://wiki.st.com/stm32mpu/wiki/STM32MP13_V4L2_camera_overview and i have all the Kernel modules needed activated.I know the camera is plugged in properly because the demo from ST works but there's no code or config that goes along that demo for me to find the issue, at least i could not find it.I will attach a little bit of debug info at the bottom if its any helpful:# dmesg | grep -i gc2145 [ 0.058299] /soc/bus@5c007000/i2c@4c006000/stmipi@14: Fixed dependency cycle(s) with /soc/bus@5c007000/i2c@4c006000/gc2145@3c [ 0.058443] /soc/bus@5c007000/i2c@4c006000/gc2145@3c: Fixed dependency cycle(s) with /soc/bus@5c007000/i2c@4c006000/stmipi@14 [ 0.069826] /soc/bus@5c007000/i2c@4c006000/stmipi@14: Fixed dependency cycle(s) with /soc/bus@5c007000/i2c@4c006000/gc2145@3c
Hi!I have a custom board with 2GB RAM instead of 4GB RAM. Yes, I have configured 2GB in CubeMX and generated the new DT.Check it out here: https://github.com/DanielMartensson/Watermelon-Wine-1A/tree/linux-testing/watermelon-wine-os%2Flayers%2Fmeta-watermelon-wine%2Fmx%2Fwatermelon-wine-1aIt seems that the booting process passes TF-A without any issues. But it fails at the optee boot process.F/TC:0 0 regulator_enable:94 v3v3 F/TC:0 0 regulator_enable:94 v5v_vconn [ 0.000000] SCP-firmware 2.13.0-intree-optee-os-4.0.0-dev [ 0.000000] [ 0.000000] [FWK] Module initialization complete! F/TC:0 0 regulator_set_voltage:202 vddcpu 800000uV F/TC:0 0 lock_i2c_bus_access:796 thread access F/TC:0 0 unlock_i2c_bus_access:837 thread access completed F/TC:0 0 stpmic2_register_read:259 REG[0x20 v=0x1e F/TC:0 0 pmic_get_voltage:192 vddcpu: get voltage: 800000 uV F/TC:0 0 pwr_get_state:243 vddgpu: get state D/TC:0 0 set_opp:60 set volt to 800000uV F/TC:0 0 regulator_set_voltage:202 vddgpu 800000uV F/T
Hi,I am going to use PSSI interface to communicate with FPGA (unidirectional interface from FPGA to MPU). Is there some kernel driver example for PSSI available? Thanks!Alexey.
I have been working on porting a custom board using the STM32MP255F-AK.I performed the following tasks:- Used STMCubeMX to configure pins and other settings- Manually added the custom board-specific sections to the DeviceTree- Added the DeviceTree to the Distribution Package's meta-st/meta-stm32mp-addons/mx directory- Created a custom board configuration file and performed the build- Wrote the resulting TF-A and FIP images to an SD card and booted the system- Before performing this work, I verified the operation of STOpenLinux, which was created by modifying the STM32MP257F-DK Device TreeThe TF-A boots, but just before U-Boot starts, a register dump occurs repeatedly and the system stops progressingJudging by the error details, it appears to be a security-related error.Based on the address where the error occurred and the error ID,I tried making various changes to the .ioc and DT files, but the issue persisted.I suspect it’s a simple configuration mistake...What specific areas should I
Hi, I'm getting an error when uploading an image downloaded from the STM32 OpenSTlinux website via STM32Programmer. I'm uploading the STM32MP157F-DK2 version. The OTG cable is connected, and the DIP switches are also in the correct positions. what could be the problem?
Hi, I'm new to yocto project, I'm trying to bitbake core-image-minimal image in yocto in stm32mp157d-dk1(scarthgap) ,by editing the bblayers.conf and local.conf in image, its successfully build and flashed into SD card , but I'm trying to boot device then it failed. I found in bootfs sector there was no files in it. I tried to build with kirkstone branch and it worked well, and then I tried to bitbake with scarthgap again and again. I used Ubuntu 24.04 and Linux mint 22.03, but scarthgap branch had the same problems.I wanna know the reason. BIG THX.
Hi,I'm using brand-new, unmodified st32mp257f-dk dev board.When using starter package (https://www.st.com/en/embedded-software/stm32mp2starter.html#get-software) flashed onto sdcard according to https://wiki.st.com/stm32mpu/wiki/How_to_populate_the_SD_card_with_dd_command, system boots-up fine, see 'downloaded_no_panic.log'. Version is openstlinux-6.6-yocto-scarthgap-mpu-v25.06.11.When using image built on my own - distribution package (openstlinux-6.6-yocto-scarthgap-mpu-v25.06.11) according to https://wiki.st.com/stm32mpu/wiki/STM32MPU_Distribution_Package, using docker, I get following:[ 8.296788] usb 1-1: new high-speed USB device number 2 using ehci-platform [ OK ] Found device /dev/hwrng. [ OK ] Found device /dev/tee0. [ 9.041963] hub 1-1:1.0: USB hub found E/TC:0 0 Panic at /usr/src/debug/optee-os-stm32mp/4.0.0-stm32mp-r2/core/drivers/clk/clk-stm32mp25.c:2000 <clk_stm32_pll_init> [ 9.142742] hub 1-1:1.0: 2 ports detected E/TC:0 0 TEE load ad
Hi, Just now I have done bringing up a custom board for STM32MP133/ STM32MP135 with OpenST Linux, with kernel 6.2:- The whole boot chain bring up from tf-a, uboot, kernel.- Configure PMIC and support DDR test.- Support FMC NAND, change flash partition layout.- A/B FOTA ready Yocto build (with uboot)- Total boot time is 30 seconds to access to ADB (android platform tool)- Platform CAN bringup- Integrate Quectel modem for network over LTEIf someone needs something related to this, I can help.Best,Eric
Hi,this one is similar to https://community.st.com/t5/stm32-mcus-products/ioselect-option-in-stm32h563-is-not-working/m-p/681099but not the same. While testing OSPI1 on our MP257 board and our FSBL I found thatMSEL in OCTOSPI1->CR is ignored.CSSEL and DMM are honored and works as expected but when DMM=0 then output signalsare the same on both IO[3:0] and IO[7:4].Attached is analyzer output of CLK,CS,IO0,IO4 for transaction with relevant regs:0x50430000: 00000f010x50430100: 04002101AR was 0xfa0000 and 8 bytes was sent to DR.Martin
Is there a Global Exclusive Monitor connected to the M33 and the A35 cores?Any documentation for it?Thank you
We have some devices based on STM32MP257 SoCs that connect to a 100 Mbit Ethernet network via ETH1, where ETH1 is going straight to an RMII PHY. Pins for ETH2 are reserved, but are not used/not connected. Some of our devices work rock-solid as excepted, but others exhibit massive performance problems on the Ethernet connection.After lots of research, we think that our devices are affected by a silicon bug described in errata sheet ES ES0598 as "ETH1 RMII mode could have CRC errors". Our chip revisions are all rev Y, which are affected by the issue. The errata says that ETH1 should be routed through ETHSW to work around the silicon bug. To test if the workaround works for our case, I've tried to enable ETHSW, but failed so far because STM32CubeMX forces me to free some pins before it allows me to enable ETHSW in RMII mode. It seems like ETH1 and ETH3 must be used together if ETHSW is enabled, the pins for ETH3, however, are already used for other hardware functions.So, my goal is to- en
There is official errata named "2.5.6 Indirect write mode limited to 256 Mbytes" where indirect OSPI write requests for addr >256MB are written to invalid target address. I tested the behavior and it seems address is effectively truncated to 28bits. Contrary to what errata says, I can see the same truncated address also for indirect reads.From what I see the problem is affecting NORs only because NAND uses page addressing in 0x13/0x10 cmds and these are always smaller than 24bits.Is the assumption correct ?Martin
Product:MCU/SoC: STM32MP2Description:In our ST Linux environment, the hantro-vpu driver registers:/dev/video5 -> VDEC (H.264/VP8 Decoder)/dev/video6 -> VENC (H.264/VP8 Encoder) We want to implement direct V4L2 API usage for H.264/VP8 encoding and decoding, without using GStreamer.Specific Questions: Are there official minimal examples or demos using pure V4L2 API for H.264 / VP8 encoding/decoding?DMA Usage: Is it possible to use DMA for input/output buffers in V4L2 mem2mem mode on STM32MP2 Hantro VPU? If yes, what is the recommended configuration and constraints?
Due to absence of a security forum for MPU's (while there is for MCU's) posting this here.The CRA prohibits products with known CVE to be placed or made available on the EU market.The ST Yocto ECO 6. Scrarthgap currently has 632C CVEs. The latetst Yocto master has 13.As such,1. how to place a product on the market while a distro without known CVE's does not exist ? A company may have great documentation and processes but if the actual supplied software has known CVE's there isn't a to place it on the market2 Many devices may use even older ECO systems (5.10) images which may have even more CVE. How will there get patched ?3. Where can information about the known CVE's in ST kernel , U-Boot, OPTEE and TF-A (dev packages) be found ?
Hi,I have a OTP provisioning script that wrote OTP 1 with value 0x000000ff, executing a partial close of security state B. The board now passes ROM/FSBL/OP-TEE/U-Boot but resets when the Linux kernel probes the first RIF-protected peripheral (HPDMA3). Disabling HPDMA3 in DT causes the same reset on HPDMA2, indicating closed-state RIF policy is being enforced globally regardless of the device tree configuration applied by OP-TEECan the board be returned to a open state using an rma procedure? Kind Regards,Jack Redpath
Hi,i tried to migrate my project to CubeMx v6.17.0 coming from v6.16.0As a result, the firmware package was also updated to FW_MP1 V1.7.0I am using CubeIDE 2.0.0After migration the compilation fails with following error in auto-generated FreeRTOSConfig.hDescription Resource Path Location Type each undeclared identifier is reported only once for each function it appears in FreeRTOSConfig.h /PROJECT_CM4/Inc line 71 C/C++ Problem/* USER CODE BEGIN Header */ /* * FreeRTOS Kernel V10.6.2 * Portion Copyright (C) 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. * Portion Copyright (C) 2019 StMicroelectronics, Inc. All Rights Reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy of * this software and associated documentation files (the "Software"), to deal in * the Software without restriction, including without limitation the rights to * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of * the Softw
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.