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
EVAL BOARD (stm32mp15-ddr.dtsi) #define DDR_PCFGR_0 0x00010000 #define DDR_PCFGR_1 0x00010001 My Board (TF-A/stm32mp15-mx-dtsi) #define DDR_PCFGR_0 0x00000000 #define DDR_PCFGR_1 0x00000000Why are these registers different even though I have the same configuration?
For my custom board, I will be using emmc on the sdmmc2 and wireless on sdmmc3 so according to this article I have to change linux kernel boot command. Since I am not going to have anything on the sdmmc1 (SD Card) isn't it suppose to boot from emmc without any commands?
I would like to bring up the openocd and gdb debugger on a custom board with STM32MP157D processor with 1 GB (2x512MB 16 bit DDR3 chips) x 32 bit. The modified device-tree and SPL gives me the following issue:U-Boot SPL 2022.01-rc3 (Sep 07 2022 - 16:35:59 +0200) RAM: EK470 DDR3-DDR3L 32bits 533000kHz stm32mp1_clk rcc@50000000: stm32mp1_clk_disable: id clock 228 has been disabled stm32mp1_clk rcc@50000000: stm32mp1_clk_enable: id clock 220 has been enabled stm32mp1_clk rcc@50000000: stm32mp1_clk_enable: id clock 222 has been enabled stm32mp1_clk rcc@50000000: stm32mp1_clk_enable: id clock 226 has been enabled stm32mp1_clk rcc@50000000: stm32mp1_clk_enable: id clock 229 has been enabled stm32mp1_clk rcc@50000000: stm32mp1_clk_enable: id clock 224 has been enabled id=15 clock = 1fc4ef40 : 533000 kHz stm32mp1_clk rcc@50000000: computed rate for id clock 224 is 533000000 (parent is PLL2_R) stm32mp1_clk rcc@50000000: stm32mp1_clk_enable: id clock 228 has been enabled get_ram_size(c0000000, 4
Hello,I am trying to bring up a custom board based on the STM32MP157D MPU via SDCard.I am using u-boot 2022-01-rc3 as bootloader and the boot is using SPL (I have an SDCard with a GPT Partition table with fsbl1, fsbl2 and ssbl named partitions).This is the 2nd time I am using this u-boot to bring up a custom STM32MP15x board.The first time was using a STM32MP151a and I needed to activate the clock tree for the USART1 and modified the low level setup in the stm32mp1_clk source code to enable the USART1 clocks and to activate the serial port #1 to have the SPL ready to print as soon it starts.But now, something goes wrong. I am using a DDR3 layout as the ED1 evaluation kit as 2x4GB (2x16 bit) 533Mhz DDR RAM. Using the same clk initialization stuff in the ddr3-1066-888-bin-g-2x4gb-533mhz device tree file, and the rcc configuration as follow:&rcc { status = "okay"; st,clksrc = < CLK_MPU_PLL1P CLK_AXI_PLL2P CLK_MCU_PLL3P CLK_PLL12_HSE CLK_PLL3_HSE CLK_PLL4_HSE CLK_RTC
Hi. Some examples use ltdc_ep0_out / reg 0, while others use ltdc_ep1_out / reg 1.e.g.https://community.st.com/s/question/0D50X0000BG0RAWSQ3/stm32mp1-ltdc-device-tree-for-rgb-displayWhere can I find more details on when to use reg 0 vs reg 1?&ltdc { port { ltdc_ep1_out: endpoint@1 { reg = <1>; remote-endpoint = <&panel_rgb_in>; }; }; };Thank you-- Peter
Hi, the image provided by ST, usb0 ethernet show up as well when try 'ifconfig'.We would like to try with buildroot. We pick kernel from ST: linux-5.15-stm32mp-r1.tar.gzWe pick config from ST: en.SOURCES-stm32mp1-openstlinux-5.15-yocto-kirkstone-mp1-v22.06.15.tar.xz (inside the zip has config-5.15.24.txt file) Building and boot are success. We expected to see "usb_gadget" in folder /sys/kernel/config to run "stm32_usbotg_eth_config.sh". But "usb_gadget" folder doesn't appear.But we tried:```mkdir -p /configmount -t configfs none /config```"usb_gadget" does appear inside /config as well.So, we change path in script "stm32_usbotg_eth_config.sh", instead of "/sys/kernel/config/usb_gadget" become "/config/usb_gadget".Script run look fine but all we see just:[ 45.084215] using random self ethernet address[ 45.087218] using random host ethernet addressAnyone know what we are missing or any hint?And why "usb_gadget" only appears when use mount, instead of default "/
I've put TF-A into verbose printing, resulting in prints regarding BSEC access.But the printouts from TF-A vs U-boot tell different, or atleast confusing information.What gives?(TF-A 2.6-r1, U-Boot 2020.10-r2)> stm32key readVERBOSE: BSEC: OTP 24 is locked and write will be ignoredOTP HASH 24: 0 lock : 0VERBOSE: BSEC: OTP 25 is locked and write will be ignoredOTP HASH 25: 0 lock : 0VERBOSE: BSEC: OTP 26 is locked and write will be ignoredOTP HASH 26: 0 lock : 0VERBOSE: BSEC: OTP 27 is locked and write will be ignoredOTP HASH 27: 0 lock : 0VERBOSE: BSEC: OTP 28 is locked and write will be ignoredOTP HASH 28: 0 lock : 0VERBOSE: BSEC: OTP 29 is locked and write will be ignoredOTP HASH 29: 0 lock : 0VERBOSE: BSEC: OTP 30 is locked and write will be ignoredOTP HASH 30: 0 lock : 0VERBOSE: BSEC: OTP 31 is locked and write will be ignoredOTP HASH 31: 0 lock : 0VERBOSE: BSEC: OTP 0 is locked and will not be refreshedVERBOSE: BSEC: OTP 0 is locked and write will be ignoredOTP 0: closed status:
I`ve built st-image-weston for stm32mp157f-disco board with flutter and clang layer. Then I built SDK with:bitbake core-image-weston -c populate_sdkThen I installed SDK with .tmp/deploy/sdk/core-image-weston-openstlinux-weston-stm32mp15-disco-x86_64-toolchain-4.0.1-snapshot.shAfter that I setup environment with source /opt/st/stm32mp15-disco/4.0.1-snapshot/environment-setup-cortexa7t2hf-neon-vfpv4-ostl-linux-gnueabi export CC=${CLANGCC} export CXX=${CLANGCXX}My question is how can I install a simple flutter app to my discovery board. What are the steps that I need to follow.
When I open it with this command,less README-CHECK-GPUCheck GPU ========= GPU can be deactivated by fuse or not present in some SOC So in case the GPU is not present, you must configure weston on pix-man by creating this file : /etc/default/weston with this content : OPTARGS=--use-pixman So what does this mean and what should I do?
Hi,I have a problem with installing any directory or any files into /usr/local folder.Here my_receipt.bbDESCRIPTION = "My receipt" LICENSE = "BSD-3-Clause" LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/BSD-3-Clause;md5=550794465ba0ec5312d6919e203a55f9" SRC_URI = "file://reset_led.sh " S = "${WORKDIR}" do_configure[noexec] = "1" do_compile[noexec] = "1" do_install() { install -d ${D}${prefix}/local/reset-led install -m 0755 ${WORKDIR}/reset_led.sh ${D}${prefix}/local/reset-led/ } FILES:${PN} += "${prefix}/local/reset-led/"In OpenSTLinx, those folders and files go to st-image-userfs...tar.xz.In /usr/local I can see only demos etc. folders and directories.The compilation is going well without any errors or warnings. What was missed, and where is the problem?
Does ST consider porting/providing support Automotive Grade Linux for STM32MP1's?
my stm32mp157f-dk2 board has a DSI (ECMF04-4HSWM10 filter) screen but my custom board is going to have a LVDS screen so what should I do different to protect the screen? (Filtering or ESD protection etc.)
I using a STM32MP-157F-EV1 eval board with linux Version 4.0.1-openstlinux-5.15-yocto-kirkstone-mp1-v22.06.15.CAN receive 500kBit/s fails, if I modify the sample point via an console command it works well. All other Bitrates 125kBit / 250kBit 1MBit are ok with the default values. How could I set the sample point permant, is there a linux config-File, to get the modyfied value even after a reboot?
How can I remove QT5 from my build since there is a lot of dependencies and I am not going to be needing it. What is the best way to remove it?
Hi all ~I have STM32MP157C custom board. My custom board boot over eMMC. Occasionally, my board can not boot over eMMC with error message like below.Can I get some advice regarding this problem?Hardware of eMMC part is the same as EV1 board. Thanks for your support. NOTICE: CPU: STM32MP157CAA Rev.Z NOTICE: Model: STMicroelectronics custom STM32CubeMX board - openstlinux-5.10-dunfell-mp1-21-11-17 INFO: Reset reason (0x15): INFO: Power-on Reset (rst_por) INFO: PMIC version = 0x21 INFO: FCONF: Reading TB_FW firmware configuration file from: 0x2ffe2000 INFO: FCONF: Reading firmware configuration information for: stm32mp_io INFO: Using EMMC INFO: Instance 2 INFO: Boot used partition fsbl1 ERROR: CMD13 failed after 5 retries ERROR: SDMMC2 init failed PANIC at PC : 0x2ffea11b Exception mode=0x00000016 at: 0x2ffea11b
I'm having trouble finding documentation on how to access the upper OTPs by the unsecure world. I see that I have to manage exceptions by using STM32CubeMX but its not very clear on how to manage the exceptions using STM32CubeMX.
I've upgraded from 5.10 to 5.15 and can't make GPIO work anymoreI've tried thisgpio_keys { compatible = "gpio-keys"; input-name = "gpio-keys"; status = "okay"; halt { label = "Halt"; linux,code = <KEY_POWER>; // Key event to match with poweroff daemon gpios = <&gpioa 2 GPIO_ACTIVE_LOW>; // WKUP2 on falling edge status = "okay"; }; wakeup { label = "Wakeup"; linux,code = <BTN_1>; gpios = <&gpioa 2 GPIO_ACTIVE_HIGH>; status = "okay"; wakeup-source; }; }but am getting[ 1.950701] gpio-keys gpio_keys: failed to get gpio: -16 [ 1.950728] gpio-keys: probe of gpio_keys failed with error -16 [ 2.205292] hci_uart_qca serial0-0: failed to acquire enable gpioI've also tried, according to the kernel documentation:wakeup { label = "Wakeup"; linux,code = <BTN_1>; // Can be anything, not used interrupt-parent = <&pwr_irq>; //cell 1: wake-up pin id from 0 to 5 //cell 2: IRQ_TYPE_EDGE_FALLING o
Hi ST Team,We are working on product built around STM32MP157C. We are trying to generate the trusted image with Yocto. However, somehow the Trusted Firmware Arm (TF-A) is not getting generated. We have added following options in machine.conf file:BOOTSCHEME_LABELS += "trusted"WKS_FILE_DEPENDS ?= " \ tf-a-stm32mp \Even with this, the image for TFA is not getting generated.Any pionters in this direction would be of great help. Thanks in advance.
Is this processor capable to drive by parallel interface an RGB666 LCD display?What could I set in the device tree?
Hi,I have tried to migrate from ST Ecosystem 3.1 to 4.0.2 but I am unable to flash the image into the eMMC memory. My issue is similar to this one but I am using the Octavos SiP OSD32MP157c. As suggested by the original poster, the issue is probably the TF-A configuration.The flash process is started but when the u-boot is supposed to be loaded the processor reboots and the process is repeated.The image is created using device trees generated by STM32CubeMX 6.6.1 and I first generated the new trees and then copied changed parts from the generated trees for the DK2 board and my previous configuration.For flashing I use STM32_Programmer_CLI and a micro-USB port. The flash log is attached below:NOTICE: CPU: STM32MP157C?? Rev.Z NOTICE: Model: STMicroelectronics custom STM32CubeMX board - openstlinux-5.15-yocto-kirkstone-mp1-v22.06.15 INFO: PMIC version = 0x21 INFO: Product_below_2v5=0: HSLVEN protected by HW INFO: Reset reason (0x54): INFO: System reset generated by MPU (MPSYSRST) INFO: FC
In our custom board which uses STM32MP153C, right when TF-A is about to launch u-boot it displays PSCI power domain map logs and MPU reboots with MPSYSRST reason. Any idea what is the root cause? We are using the device tree based on the dk2 sample device tree. INFO: ARM GICv2 driver initializedINFO: stm32mp HASH1 (9): SecureINFO: stm32mp RNG1 (15): SecureINFO: stm32mp USART1 (18): SecureINFO: ETZPC: SPI6 (4) could be non secureINFO: ETZPC: CRYP1 (9) could be non secureINFO: ETZPC: I2C6 (12) could be non secureINFO: SP_MIN: Initializing runtime servicesINFO: SP_MIN: Preparing exit to normal worldINFO: PSCI Power Domain Map:INFO: Domain Node : Level 1, parent_node -1, State ON (0x0)INFO: Domain Node : Level 0, parent_node 0, State ON (0x0)INFO: &
I am asking because I want to remove some of them, how can I find out what are the names and what they do? What is the best way to do this?
We are trying to verify the signature generated by the STM signing tool. From this link, in the table for "On STM32MP15x lines", we need to know what data type is used for each field when the signature hash (sha256) is created so we can replicate it.
Currently our custom board powers up in two cases, one when you press the power on button, and another when you plug in the USB cable. We would like to disable PMIC from powering on when USB cable is plugged in. We see that the STPMIC specification document (section 5.4.2), lists the three conditions which triggers PMIC turn-on and also the register bit VBUSOTG_DET_DIS which needs to be set to 1 to disable this feature.Since I cannot write to PMIC register address 0x40, was wondering if there is any device tree setting which sets this bit? Any information on how to do this would be very much appreciated.Thanks!
I was analyzing stm32mp15 disco and eval board schematics for my project. I noticed that DDR pinning are not the same between them. Disco boards have 512MB and EVAL boards have 2x512MB. My project also going to have two variants. I wanted to know why pinouts of these two schematics are different and can I use same pcb for both of my variants with one 1x512 and other with 2x512. (1x512 will have two locations on the pcb but only one chip. Is it possible?)
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.