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
Hi i am struggling in how to boot from the EMMC not from the SD card , i used the custom board where my emmc is connected to SDMMC2 port , i did changes into the device tree i enable the sdmmc2, but i do not know how to boot from the emmc ?,actually my custom board based on the (STM32MP157D -Dk1), there is no EMMC but in custom board i added the emmc with SDMMC2 channel, so please help me out this situation how to boot ,please Ignor my basic question i am the frasher and doing own self, i need your support for learn.
I get the following error message when trying to use pinctrl with a regular GPIO....[ 4.580426] stm32mp157-pinctrl soc:pinctrl@50002000: pin PA13 already requested by gpioleds; cannot claim for GPIOA:13[ 4.590464] stm32mp157-pinctrl soc:pinctrl@50002000: pin-13 (GPIOA:13) status -22 With device tree entry attached.
Hi, I have an STM32MP1 MPU based module running OpenSTLinux.Whenever I press the power button, this gets recorded in journalctl:root@STLinux:~# journalctl --unit systemd-logind --follow-- Logs begin at Fri 2020-02-07 15:50:56 UTC. --Jan 22 15:15:37 STLinux systemd-logind[919]: Session c1 logged out. Waiting for processes to exit.Jan 22 15:15:38 STLinux systemd[1]: Stopping Login Service...Jan 22 15:15:38 STLinux systemd-logind[919]: Removed session c1.Jan 22 15:15:38 STLinux systemd[1]: systemd-logind.service: Succeeded.Jan 22 15:15:38 STLinux systemd[1]: Stopped Login Service.-- Reboot --Jan 22 15:15:45 STLinux systemd[1]: Starting Login Service...Jan 22 15:15:48 STLinux systemd-logind[921]: Watching system buttons on /dev/input/event0 (pmic_onkey)Jan 22 15:15:48 STLinux systemd-logind[921]: New seat seat0.Jan 22 15:15:48 STLinux systemd[1]: Started Login Service.Jan 22 15:15:56 STLinux systemd-logind[921]: New session c1 of user root.Jan 23 07:05:00 STLinux systemd-logind[
I am trying to operate two devices using QuadSPI in the STM32MP131 bare-metal environment. Currently, an external Flash is being used in QuadSPI Bank1 in dual mode, and I am attempting to use another external device in Bank2 in quad mode.The issue I encountered is that while the Flash connected to Bank1 operates normally, a problem occurs when transmitting data to Bank2. Upon inspecting with an oscilloscope, the data itself is transmitted correctly, but the default state of the BK IO3 pin is always fixed to High. Since the external device receives data from QuadSPI without any filtering, the fact that IO3 is fixed to High can cause malfunction. *This device does not require separate NCS or WP pins. The image below is a measurement taken when 0x01 was transmitted to BK2 using 4-line Quadmode.Although 0x01 is transmitted correctly, you can see that the state of IO3 returns to High again. To prevent any potential issues, the qspi-related code that activates the Flash has b
tl,dr: No boot log or root term via ST-LINK connector on STM32MP157F-EV1. Haven't tried UART 4 yet.This is related to:https://community.st.com/t5/stm32-mpus-products/i-get-output-via-uart4-but-not-via-st-link-and-i-cannot-input/m-p/135067 Reference: https://wiki.st.com/stm32mpu/wiki/How_to_get_Terminal The board: STM32MP157F-EV1My host: Dell XPS, USB puck with two USB ports, running Ubuntu 22.04.4 LTS using Minicom 2.8.Followinghttps://wiki.st.com/stm32mpu/wiki/Getting_started/STM32MP1_boards/STM32MP157x-EV1/Let%27s_start/Populate_the_target_and_boot_the_image I have:* successfully prog'd the microSD with the STM32MP1257F (note the "eff") firmware ie: FlashLayout_sdcard_stm32mp157F-ev1-optee.tsv* the eval board boots to OpenSTLinux launcher* all the demo apps will runJust no log or root command line using the ST-LINK connector via USB. I cannot execute basic commands inhttps://wiki.st.com/stm32mpu/wiki/Getting_started/STM32MP1_boards/STM32MP157x-EV1/Let%27s_st
I made a custom board with the processor STM32MP151AAC3 and own firmwire https://github.com/DanielMartensson/STM32-Computer/tree/main/STM32CubeIDE/STM32-Computer-Firmware . I have compiled the TF-A by using STM32CubeIDE. It was some bugs with the TF-A configuration, but it seems I fixed them in this thread: Solved: BUG: Label or path X_pins_y not found - Compiling ... - STMicroelectronics Community PANIC at PC : 0x2ffec98b Exception mode=0x00000016 at: 0x2ffec98b I have tried to flash it with firmware of STM32MP157 with another I2C4 pin configuration. And it failed. NOTICE: CPU: STM32MP151AAC Rev.Z NOTICE: Model: STMicroelectronics STM32MP157A eval daughter on eval mother ERROR: I2C device not ready PANIC at PC : 0x2fff101b Exception mode=0x00000016 at: 0x2fff101b Trying the Flashout Delete All DK1 STM32MP157a. Exception mode=0x00000016 at: 0x2fff101b NOTICE: CPU: STM32MP151AAC Rev.Z NOTICE: Model: STMicroelectronics STM32MP157A-DK1 Discovery Board ERROR:
Hello,I am using the STM32MP257x-EV1 board with version 2022.10 of u-boot-stm32mp (with patch 0001-v2022.10-stm32mp25-beta.patch from commit dc5d7824 made on April 12, 2024).When compiling u-boot + stm32mp257f-ev1.dts, only the eth2 interface is functional, the other interface displays the following error: EQOS_DMA_MODE_SWR: mode: 00000000482c1000 - wait: 50 EQOS_DMA_MODE_SWR stuck FAILED: -110 After compiling u-boot-stm32mp, I used the dtc tool with u-boot.dtb to get my full dts file used and here is the configuration of eth1 and eth2. eth2@482d0000 { compatible = "st,stm32mp25-dwmac\0snps,dwmac-5.10a"; reg = <0x482d0000 0x4000>; reg-names = "stmmaceth"; interrupts-extended = <0x06 0x00 0x85 0x04 0x22 0x46 0x04>; interrupt-names = "macirq\0eth_wake_irq"; clock-names = "stmmaceth\0mac-clk-tx\0mac-clk-rx\0ptp_ref\0ethstp\0eth-ck"; clocks = <0x13 0x14c 0x13 0x14b 0x13 0x14a 0x13 0x13f 0x13 0x14e 0x13 0x13d>;
I'm still trying to get a fully error free bootup on the stm32mp151 based board. I'm using ST git's for the bootstages and kernel/rootfs are build using the ST yocto layers.But because i'm unsure which are actually errors and which are just warnings I can ignore. Nor want to start 5 threads for each one, I figured it was best to combine them in one. Chances are likely they are inter related anyway.I get this error, but further in the bootlog optee is properly initialized, so can this be ignored? [ 0.109710] Driver 'scmi-optee' was unable to register with bus_type 'tee' because the bus was not initialized.This is the main issue, am I forgetting someting in the DT? (attached) [ 0.516254] sysfs: cannot create duplicate filename '/devices/platform/cpufreq-dt' [ 0.516281] CPU: 0 PID: 38 Comm: kworker/u2:3 Not tainted 6.1.28-dirty #1 [ 0.516303] Hardware name: STM32 (Device Tree Support) [ 0.516314] Workqueue: events_unbound deferred_probe_work_func [ 0.516363] unwind_backtrace fro
We have a custom board based on STM32MP157C-DK2. U_boot shows a splash image(logo). Then U-boot starts the kernel from a fip image. I the same fip image there is a ramfs partition in cpio.gz format which is used as rootfs by the kernel. When kernel starts it decompresses the ramfs partition. During this decompression the logo on the screen gets corrupted. I am sure this corruption happens during the decompression as I put 1 ms delay in the kernel code where it is decompressed and I can see how the logo gets slowly corrupted for about 20 seconds. This is the result of the corruption:This happens because we have 1Gb of ram starting at address 0xC0000000 and framebuffer in U-boot occupies the top part of the ram which is around 0xfff00000. Obviously this is the address space which kernel uses to decompress the ramfs partition. I have this in the kernel dts:reserved-memory { #address-cells = <1>; #size-cells = <1>; ranges; gpu_reserved: gpu@fa000000
Hello,i'm currently trying to boot a custom board which has the bare minimum of STPMIC1, SDRAM and USB closely resembling the STM32MP15-DISCO evaluation board except on power delivery (VBUS from USB-C is switched via STUSB4500 but _not_ connected to OTG_VBUS at the CPU, STPMIC1 is powered from a Li-Ion battery).STM32CubeProg finds the DFU connection over USB-C and can connect, but fails programming showing:18:45:29 : UR connection mode is defined with the HWrst reset mode18:45:29 : USB speed : Full Speed (12MBit/s)18:45:29 : Manuf. ID : STMicroelectronics18:45:29 : Product ID : DFU in FS Mode @Device ID /0x500, @Revision ID /0x000018:45:29 : SN : 00360044343151013034363018:45:29 : DFU protocol: 1.118:45:29 : Board : --18:45:29 : Device ID : 0x050018:45:53 : Start Embedded Flashing service18:45:53 : Memory Programming ...18:45:53 : Opening and parsing file: tf-a-stm32mp157a-dk1-usb.stm3218:45:53 : File : tf-a-stm32mp157a-dk1-usb.stm3218:45:53 : Size : 220.41 KB18:45:53 : Partition ID :
Hello Friends, I started learning programming on the STM32MP157D-DK1 evaluation board. I wrote code to blink the user LED LD6, which is connected to PA13, but the LED did not change its state (BSRR register). Can anyone please help me identify what might be wrong with the code? Code:- void SystemClock_Config(void);static void MX_GPIO_Init(void);int main(void){ HAL_Init(); if(IS_ENGINEERING_BOOT_MODE()){/* Configure the system clock */SystemClock_Config();} MX_GPIO_Init();while(1){GPIOA->BSRR |= (1<<13);HAL_Delay(2000);GPIOA->BSRR |= (1<<29);HAL_Delay(1000);}}void SystemClock_Config(void){RCC_OscInitTypeDef RCC_OscInitStruct = {0};RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; /** Configure LSE Drive Capability*/HAL_PWR_EnableBkUpAccess();__HAL_RCC_LSEDRIVE_CONFIG(RCC_LSEDRIVE_MEDIUMHIGH); /** Initializes the RCC Oscillators according to the specified parameters* in the RCC_OscInitTypeDef structure.*/RCC_OscInitStruct.Os
This is my RAM usage when I run OpenSTLinux on my custom STM32MP151 board with 512 MB RAM.Is that OK?
Dear STM comunity, i am currently trying migrate my solution from the kirkstone to mickledore because it offers more software functions that i need and cant properly use on the kirkstone, i have spent alot of time trying to port the configurations from OSD32MP1F to mickledore via cube mx, here are the device tree, there are alot of differences between versions but overall nothing too diffrent, i managed to compile the image and started flashing , however i don't know what are the issues but i am not able to flash the image due to a panic error leading to flashing halt as shown in the LOG 1 and LOG2 USB speed : High Speed (480MBit/s) Manuf. ID : STMicroelectronics Product ID : DFU in HS Mode @Device ID /0x500, @Revision ID /0x0000 SN : 004400453230510532393433 DFU protocol: 1.1 Board : -- Device ID : 0x0500 Device name : Device type : MPU Device CPU : Cortex-A7 Start operation done successfully at partition 0x03 Memory Programming ... Opening and
Hi,I am debugging the STM32MP257F-EV1 board with a debugger via JTAG/SWD. The kernel version is 6.1.82.To provide complete debug access and to prevent the JTAG/SWD from shutting down when the CPU is idle, I think [CONFIG_CPU_IDLE] has to be disabled. But, boot messages from the kernel stop midway after [CONFIG_CPU_IDLE] is disabled.I have confirmed that the CPU is still executing through the debugger, but the terminal/prompt is not available.Upon checking. I found that [CONFIG_ARM_PSCI_CPUIDLE] may be the issue. When [CONFIG_CPU_IDLE] is disabled, [CONFIG_ARM_PSCI_CPUIDLE] is automatically disabled as well.Since various devices use the PSCI driver, I think disabling [CONFIG_ARM_PSCI_CPUIDLE] will render some peripherals in non-usable state. Please see the attached log file "Boot-message.log" for the kernel boot messages.In this context, I have the following questions:1. Is there a way to disable CONFIG_ARM_PSCI_CPUIDLE or CONFIG_CPU_IDLE and get the board to work
I tried to install QT apt-get install -y packagegroup-x-linux-qt But I got the error E: Unable to locate package packagegroup-x-linux-qt I have followed thishttps://wiki.st.com/stm32mpu/wiki/X-LINUX-QT_Expansion_Package
Hi!Will/Can OpenSTLinux run/support C++ applications that are made with wxWidgets? If not: Can ST Dev team implement it? wxWidgets is using GTK native widgets on linux. GTK is written in C.I recently found that wxWidgets isin't so bad after all, compared to other large frameworks.Check out this ultra pedagogical GUI tutorial for C++.https://www.youtube.com/watch?v=BjQhp0eHmJw&list=PLFk1_lkqT8MbVOcwEppCPfjGOGhLvcf9G&index=1
Hi all,I own a STM32MP135F-DK board and started to write a simple firmware on it based on RTX threads.I'd like to use USART1 port as simple terminal interface with the board.I chose USART1 cause it is present on CN8 connector (RX + TX) and cause the UART8 presents only TX pin.The code I wrote is: void MX_USART1_UART_Init(void) { huart1.Instance = USART1; huart1.Init.BaudRate = 9600; huart1.Init.WordLength = UART_WORDLENGTH_8B; huart1.Init.StopBits = UART_STOPBITS_1; huart1.Init.Parity = UART_PARITY_NONE; huart1.Init.Mode = UART_MODE_TX_RX; huart1.Init.HwFlowCtl = UART_HWCONTROL_NONE; huart1.Init.OverSampling = UART_OVERSAMPLING_16; if (HAL_UART_Init(&huart1) != HAL_OK) { ASSERT(false); } } and if (uartHandle->Instance == USART1) { /* USER CODE BEGIN USART1_MspInit 0 */ /* USER CODE END USART1_MspInit 0 */ /* USART1 clock enable */ __HAL_RCC_USART1_CLK_ENABLE(); __HAL_RCC_GPIOB_CLK_ENABLE(); __HAL_RCC_GPIOC_CLK_E
Hello,I am facing the issue below when build up my image (or u-boot-stm32mp alone)I mainly followed instructions in https://wiki.st.com/stm32mpu/wiki/How_to_compile_the_device_tree_with_the_Distribution_Package.But it did not work.make -f /home/luisa/dev/st/st_distro/stdistro/build-try-test1/tmp-glibc/work-shared/stm32mp151a-bitron-som/uboot-source/scripts/Makefile.build obj=arch/arm/dts dtbstest -e arch/arm/dts/stm32mp151a-bitron-som-mx.dtb || ( \echo >&2; \echo >&2 "Device Tree Source (arch/arm/dts/stm32mp151a-bitron-som-mx.dtb) is not correctly specified."; \echo >&2 "Please define 'CONFIG_DEFAULT_DEVICE_TREE'"; \echo >&2 "or build with 'DEVICE_TREE=<device_tree>' argument"; \echo >&2; \/bin/false)My .dts filestm32mp151a-bitron-som-mx.dts stm32mp151a-bitron-som-mx-u-boot.dtsiare below my building path <builddir>/tmp-glibc/work-shared/stm32mp151a-bitron-som/uboot-source/arch/arm/dts and are as the ones below my mx/bitron_som_20634519_06/
Hi, i get this error when uboot starts on custom MP153D board: E/TC:0 tzc_it_handler:79 TZC permission failureE/TC:0 dump_fail_filter:420 Permission violation on filter 0E/TC:0 dump_fail_filter:425 Violation @0xdff09000, non-secure privileged write, AXI ID 480 Can someone point me in the right direction? I cannot find a correspondence for AXI ID 480 in order to inverstigate over.
I have compiled tf-a, optee, kernel and u-boot inside STM32CubeIDE.I have copy over the uImage from the linux build/arch/arm/boot/ and the .dtb file as well. They have been copied over to st-image-bootfs-openstlinux-weston-stm32mp1.ext4 file. I'm only changing the st-image-bootfs-openstlinux-weston-stm32mp1.ext4 file from the Starter Package form STM32MP1 series. The rest e.g st-image-weston-openstlinux-weston-stm32mp1.ext4, st-image-vendorfs-openstlinux-weston-stm32mp1.ext4 and st-image-userfs-openstlinux-weston-stm32mp1.ext4 are not changed.The kernel is booting, no problem there. But the login promt does not appear. It seems that I got no errors at all, when I look at the full log. My thoughts is that what if bootfs not booting up the software such as command prompt?The last snippet of the kernel boot log from UART4. D/TC:0 pwr_scv_handler:56 PWR service: set 0x40000000 at offset 0xc D/TC:0 pwr_scv_handler:56 PWR service: set 0x10000000 at offset 0xc D/TC:0
I'm trying to get STM32MP157F-EV1 board working with the STM32Cube ecosystem. I have successfully followed the getting started guide., STM32MP157x-EV1 Lets Start URL. I get to the last step in /Populate_the_target_and_boot_the_image, (Step 8), Boot the Board and GUI never shows up on Display. After multiple reboots, reflashes, I thought let me go to next step, anyways, https://wiki.st.com/stm32mpu/wiki/Getting_started/STM32MP1_boards/STM32MP157x-EV1/Let%27s_start/Execute_basic_commands . Well it turns out that I am able to login to device using Minicom. I checked dmesg output, dmesg | grep display[ 0.117034] platform 5a001000.display-controller: Fixed dependency cycle(s) with /soc/dsi@5a000000[ 0.131004] platform 5a001000.display-controller: Fixed dependency cycle(s) with /soc/dsi@5a000000[ 0.131240] platform 5a000000.dsi: Fixed dependency cycle(s) with /soc/display-controller@5a001000[ 2.751026] stm32-display-dsi 5a0
Hello,I am using Yocto (Kirkstone) to develop linux for my embedded linux device, which is stm32mp135f-dk board. In Yocto build system one can set the IMAGE_ROOTFS_SIZE variable, which (along with IMAGE_ROOTFS_EXTRA_SPACE and IMAGE_OVERHEAD_FACTOR variables) controls the size of created rootfs. I set the IMAGE_ROOTFS_SIZE to 262144 (256 MiB), and I see that when my board is being programmed using CubeProgrammer the size of rootfs image matches:After booting the board and using df -h command the output is:How those values could be interpreted and compared to rootfs size of 256 MiB? I don't understand why there is a size of 229.9M there and what are those following filesystems (devtmpfs, tmpfs...).There is also second thing I am concerned about. For flashing the SD card I use the STM32_Programmer_CLI along with my .tsv file (see attached pic1 for its content). As far as I can understand, the offset values set in the .tsv control the sizes of particular partitions. What sizes (o
for custom board of STM32mp157f-dk2 version.the same code i run in the custom board it work but, the error " it stuck in the power supply type C not detected" by Uboot , TFA and OPTEE work fine but in u-boot it stop so i can hand this situation and , any bypass mode is there.and where i can modify this one.Actually i remove the type C connector and in place of type C i attached the only two pin power supply in custom board ,after u-boot boots the MPU , it prints the error on type C power supply not detected, so in my code where i need to modify the code, i am using openSTlinux distribution package (STM32mp157f-dk2).
Our board is similar to STM32MP157C-DK2 Disco board - All the Developer packages have been installed, When the power supply is given, all the test point voltages are in desired level. But the MPU not even clearing FSBL and exit with ERROR: DDR addr bus test: can't access memory @ 0xc0000004PANIC at PC : 0x2ffdf9d9Exception mode=0x00000016 at: 0x2ffda000What is the issue and how we can address?
Which native graphical library does OpenSTLinux using?Is it GTK or other C++ library?
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.