1. Article purpose
This article gathers the information that applies to any STM32MP1 board.
That's the reason why the steps 2, 3 and 6 referenced in this article depend on the considered board:
2. Checking the boot sequence
Assuming you have performed the optional step 6 above, the information (coming successively from the TF-A, OP-TEE OS, U-Boot and the Linux operating system that is booting on the board), should be displayed on the host PC Terminal.
In parallel, a U-Boot splash screen picture is displayed on the DSI display (if one is connected to the board).
A user space graphical boot splash screen (PSplash) picture is then briefly displayed on the HDMI monitor if one is connected to the board, or otherwise on the DSI display (if one is connected to the board).
When the boot process is complete, the launcher application is shown on the HDMI monitor if one is connected to the board, or otherwise on the DSI display (if one is connected to the board).
More detail about this launcher application in GTK demo launcher page.
3. Mouse, keyboard and Ethernet hot-plugs
Let's assume that the optional step 2 and step 3 were not achieved when setting up the system above.
When connecting a USB mouse, the following information is displayed by the Terminal program:
[ 926.786326] usb 2-1.1: new low-speed USB device number 3 using ehci-platform
[ 926.961413] input: Logitech Optical USB Mouse as /devices/platform/soc/5800d000.usbh-ehci/usb2/2-1/2-1.1/2-1.1:1.0/0003:046D:C016.0001/input/input2
[ 926.975098] hid-generic 0003:046D:C016.0001: input: USB HID v1.10 Mouse [Logitech Optical USB Mouse] on usb-5800d000.usbh-ehci-1.1/input0
When connecting a USB keyboard, the following information is displayed by the Terminal program:
[ 1009.026567] usb 2-1.3: new low-speed USB device number 4 using ehci-platform
[ 1009.193990] input: Dell Dell USB Keyboard as /devices/platform/soc/5800d000.usbh-ehci/usb2/2-1/2-1.3/2-1.3:1.0/0003:413C:2003.0002/input/input3
[ 1009.280101] hid-generic 0003:413C:2003.0002: input: USB HID v1.10 Keyboard [Dell Dell USB Keyboard] on usb-5800d000.usbh-ehci-1.3/input0
When connecting an Ethernet cable, the following information is displayed by the Terminal program:
[ 1215.356377] stm32-dwmac 5800a000.ethernet eth0: Link is Up - 1Gbps/Full - flow control rx/tx
[ 1215.363377] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[ 1215.391068] Link is Up - 1000/Half
or on STM32MP13x lines for the second Ethernet interface
[ 117.370989] stm32-dwmac 5800e000.eth2 eth1: Link is Up - 100Mbps/Full - flow control rx/tx
[ 117.377950] IPv6: ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready
4. Remote and local Terminal programs
As already explained in the step 6 above, a remote Terminal program can be installed and configured on your host PC in order to communicate with the board through a serial link or an Ethernet link: see How to get Terminal.
The remote Terminal on your host PC can be used to enter command lines, as shown below with the ifconfig command to query the network interface parameters:
A local Terminal program can be launched directly on the board. Click on the small icon at the top left corner of the display (see the red arrow on the figure below):
Then the on-board Wayland Terminal can be used to directly enter command lines as shown below, still with the ip addr command to query the network interface parameters:
Consequently, unless an explicit restriction is mentioned, command lines can be run from both Terminals.
Note: in this article, any command executed on the board (through the remote Terminal or the Wayland Terminal) starts with , while any command executed on the host PC starts with .
5. Executing basic commands
5.1. Having a look at the OpenSTLinux directory structure
The directory structure and directory contents in the OpenSTLinux distribution is standard. Some details are available in the OpenSTLinux directory structure article.
5.2. Identifying the software running on board
5.2.1. For ecosystem release v4.1.0 
Software | How to get its version | Output example |
---|---|---|
TF-A | TF-A Version number |
NOTICE: BL2: v2.6-stm32mp1-r2.0(debug):v2.6-dirty |
U-Boot | See the version displayed in the console |
2021.10-stm32mp-r2 [...] |
Linux kernel |
cat /proc/version
|
Linux version 5.15.67 (xxxx@yyyy) (arm-ostl-linux-gnueabi-gcc (GCC) 11.3.0 ) [...] |
GCC |
cat /proc/version
|
Linux version 5.15.67 (xxxx@yyyy) (arm-ostl-linux-gnueabi-gcc (GCC) 11.3.0) [...] |
Yocto Project |
grep DISTRO_CODENAME /etc/build
|
DISTRO_CODENAME = kirkstone |
Weston |
weston --version
|
weston 10.0.2 |
GStreamer |
gst-play-1.0 --version
|
GStreamer 1.20.3 |
GPU (only on STM32MP15x lines ![]() |
cat /sys/kernel/debug/gc/version
|
6.4.9.436021 built [...] |
5.2.2. For ecosystem release v4.0.0 
Software | How to get its version | Output example |
---|---|---|
TF-A | TF-A Version number |
NOTICE: BL2: v2.6-stm32mp1-r1.0(debug):v2.6-dirty |
U-Boot | See the version displayed in the console |
2021.10-stm32mp-r1 [...] |
Linux kernel |
cat /proc/version
|
Linux version 5.15.24 (xxxx@yyyy) (arm-ostl-linux-gnueabi-gcc (GCC) 11.2.0 ) [...] |
GCC |
cat /proc/version
|
Linux version 5.15.24 (xxxx@yyyy) (arm-ostl-linux-gnueabi-gcc (GCC) 11.2.0) [...] |
Yocto Project |
grep DISTRO_CODENAME /etc/build
|
DISTRO_CODENAME = kirkstone |
Weston |
weston --version
|
weston 10.0.0 |
GStreamer |
gst-play-1.0 --version
|
GStreamer 1.20.1 |
GPU (only on STM32MP15x lines ![]() |
cat /sys/kernel/debug/gc/version
|
6.4.7.365873 built [...] |
5.3. Configuration tips
5.4. Getting board IP address
Prerequisite: your board is connected to your local network through the Ethernet connector (see step 3).
- Get the IP address of your board with the ip Linux command line (recommended method):
xx.xx.xx.xx/xx brd xx.xx.xx.xx scope global dynamic eth0 valid_lft 159045sec preferred_lft 159045sec inet6 xxxx::xx:xx:xx:xx/xx scope link valid_lft forever preferred_lft foreverip addr show eth0 3: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff inet
- Get the IP address of your board with the ifconfig Linux command line (a deprecated but well-known command):
xx.xx.xx.xx Bcast:xx.xx.xx.xx Mask:255.255.252.0 inet6 addr: xxxx::xx:xx:xx:xx/xx Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:2619 errors:0 dropped:0 overruns:0 frame:0 TX packets:1311 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:353250 (344.9 KiB) TX bytes:118305 (115.5 KiB) Interrupt:247ifconfig eth0 eth0 Link encap:Ethernet HWaddr xx:xx:xx:xx:xx:xx inet addr:
5.5. Copying a file from your host PC to your board (and reciprocally)
- How to transfer a file over network (recommended method)
5.6. Miscellaneous commands
5.6.1. Printing distribution specific information
cat /etc/os-release
ID=openstlinux-weston
NAME="ST OpenSTLinux - Weston - (A Yocto Project Based Distro)"
VERSION="4.0.4-openstlinux-5.15-yocto-kirkstone-mp1-v22.11.23 (kirkstone)"
VERSION_ID=4.0.4-openstlinux-5.15-yocto-kirkstone-mp1-v22.11.23
PRETTY_NAME="ST OpenSTLinux - Weston - (A Yocto Project Based Distro) 4.0.4-openstlinux-5.15-yocto-kirkstone-mp1-v22.11.23 (kirkstone)"
DISTRO_CODENAME="kirkstone"
Where:
ID | A lower-case string identifying the operating system |
NAME | A string identifying the operating system |
VERSION | A string identifying the operating system version, including a release code name |
VERSION_ID | A lower case string identifying the operating system version |
PRETTY_NAME | A full pretty name of the release |
5.6.2. Printing system information
uname -a
Linux stm32mp1 5.15.67 #1 SMP PREEMPT Thu Sep 8 10:32:54 UTC 2022 armv7l armv7l armv7l GNU/Linux
Where:
Linux | Kernel name |
stm32mp1 | Network node hostname |
5.15.67 | Kernel release |
#1 SMP PREEMPT Thu Sep 8 10:32:54 UTC 2022 | Kernel version |
armv7l | Machine hardware name |
GNU/Linux | Operating system |
5.6.3. Printing Linux kernel and GCC versions
cat /proc/version
Linux version 5.15.67 (oe-user@oe-host) (arm-ostl-linux-gnueabi-gcc (GCC) 11.3.0, GNU ld (GNU Binutils) 2.38.20220708) #1 SMP PREEMPT Thu Sep 8 10:32:54 UTC 2022
Where:
Linux | Kernel name |
version 5.15.67 | Kernel release |
(xxxx@yyyy) | Person (xxxx) who compiled the kernel, and machine (yyyy) where it happened |
(arm-ostl-linux-gnueabi-gcc (GCC) 11.3.0 ) | Version of the GCC compiler used to compile the kernel |
#1 SMP PREEMPT Thu Sep 8 10:32:54 UTC 2022 | Kernel version; type of kernel (SMP) and date and time of the kernel compilation |
5.6.4. Printing the amount of disk space available on all mounted file systems
df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 116M 0 116M 0% /dev
/dev/mmcblk0p10 684M 453M 184M 72% /
tmpfs 195M 176K 195M 1% /dev/shm
tmpfs 78M 8.8M 70M 12% /run
tmpfs 4.0M 0 4.0M 0% /sys/fs/cgroup
tmpfs 195M 16K 195M 1% /tmp
/dev/mmcblk0p8 55M 39M 12M 77% /boot
/dev/mmcblk0p9 14M 5.9M 6.8M 47% /vendor
tmpfs 195M 96K 195M 1% /var/volatile
/dev/mmcblk0p11 14G 45M 13G 1% /usr/local
tmpfs 39M 4.0K 39M 1% /run/user/1000
tmpfs 39M 0 39M 0% /run/user/0
Where:
Filesystem | Source of the mount point, usually a device |
Size | Total size in human readable format (e.g. 1K, 234M, 2G) |
Used | Used size in human readable format |
Available | Available size in human readable format |
Use% | Percentage of used size divided by the total size |
Mounted on | Mount point |
Note: the user file system (userfs) and the boot file system (bootfs) are accessible respectively through the /usr/local mounting point, and the /boot mounting point (see Flash partitions for a description of the file systems).