STM32MP135F-DK¶
Board Identification¶
Identifier: STM32MP135F-DK
Yocto MACHINE:
- stm32mp13-disco-welma
Documentation:
- https://www.st.com/en/microcontrollers-microprocessors/stm32mp135f.html
- UM2993, Discovery kit with 1 GHz STM32MP135FA MPU, Rev 2, March 2023
Features:
- MPU: STM32MP135f ARM Cortex‑A7 32-bit
- RAM: up to 1 GB DDR
- Storage: microSD
- RJ45 Ethernet
- Two Quad-SPI memory interfaces
- 1-Gbit/s Ethernet (RGMII)
- 4 USB Host Type-A
- Dual-lane MIPI CSI-2 camera module expansion connector
Boot Sequence¶
The boot sequence from an SD card is as follows:
- The ROM Code loads TF-A (BL2, FSBL) from the first GPT partition (raw) into SRAM (System RAM inside MPU), and starts it.
- TF-A:
- Initializes DRAM (used in the following steps)
- Loads the FIP container (SSBL) from the partition named "fip"
- Launches OP-TEE (BL32)
- OP-TEE launches U-Boot (BL33) (in DRAM)
- U-Boot starts the kernel
- The kernel mounts the initial ram file system (initramfs) and starts Init
Reference: Trusted Firmware-A
Glossary:¶
- FSBL: First Stage Boot Loader
- SSBL: Second Stage Boot Loader
- DRAM: Dynamic RAM, external to the MPU
- TF-A: Trusted Firmware-A
First installation¶
- On a PC, copy the generate SD card image (
.wic
) file to the SD card:
$ SDIMG=tmp/deploy/images/$MACHINE/welma-image-minimal-dev-$MACHINE.wic
$ gunzip --keep --force $SDIMG.gz
$ sudo dd if="$SDIMG" of=/dev/mmcblk0 bs=1M
- Insert the SD card into the device.
- Your device is ready for booting Welma.
Regular Boot¶
The regular boot on a SD card is done as follows:
- Insert a programmed SD card
- Set the boot pins (SW1) to select the boot source SDMMC1 (used by the
internal boot ROM):
- BOOT0 = 1 (closed)
- BOOT1 = 0 (open)
- BOOT2 = 1 (closed)
- Start the board.
Appendix¶
Connecting the board (power in & serial)¶
To power the board, connect its USB Type-C connector CN12 to a 5 V / 3 A USB Type-C charger.
To get a console, connect its micro-USB connector CN10.
Connecting to the board via IP/Ethernet¶
-
Connect a cable between your PC and the board (ETH1).
-
Set up a network interface on your PC (say
eth0
).
By default, Welma Linux has 2 default static link-local IP addresses :
169.254.0.1
and fe80::1
.
- Connect using
ssh
:
Hardware watchdog¶
The hardware watchdog is:
- Started by U-Boot (timeout 32 s)
- Serviced by the Linux kernel (as long as no userspace process opens /dev/watchdog0 and takes over)
- Then serviced by systemd