Last edited 5 years ago

Subpart - STM32MP15 - Starter Package

Template:ArticleMainWriter Template:ReviewersList Template:ArticleApprovedVersion

1. Article purpose[edit source]

This article gathers the information that applies to any STM32MP15 board.

Template:Warning

That's the reason why the steps 2, 3 and 6 referenced in this article depend on the considered board:Template:UpdateNeededForNewBoard


2. Checking the boot sequence[edit source]

Assuming you have performed the optional step 6 above, the information (coming successively from the U-Boot and the Linux operating system that is booting on the board), should be displayed on the host PC Terminal. Template:Info

First information scrolled on the remote Terminal during boot
Last information scrolled on the remote Terminal during boot

In parallel, a U-Boot splash screen picture is displayed on the DSI display (if one is connected to the board).DSI U-Boot splash screen.png

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).DSI user splash screen.png


When the boot process is complete, the Wayland background layer 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).

File:STM32MP15 wayland background layer.png
Wayland background layer shown on the HDMI monitor or on the DSI display

3. Mouse, keyboard and Ethernet hot-plugs[edit source]

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

4. Remote and local Terminal programs[edit source]

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:

Example of command (ifconfig) executed on the remote Terminal program


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):

Icon to launch a local Terminal program
Wayland Terminal program


Then the on-board Wayland Terminal can be used to directly enter command lines as shown below, still with the ifconfig command to query the network interface parameters:

Example of command (ifconfig) executed on the Wayland Terminal program


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 Template:Board$, while any command executed on the host PC starts with Template:PC$.

5. Executing basic commands[edit source]

Template:Info

5.1. Having a look at the OpenSTLinux directory structure[edit source]

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[edit source]

Template:Info Template:UpdateNeededForNewRelease

Software How to get its version Output example
TF-A TF-A Version number

NOTICE: BL2: v2.0(debug):Template:Highlight

U-Boot See the version displayed in the console

Template:Highlight [...]

Linux kernel
Template:Board$ cat /proc/version

Template:Highlight (xxxx@yyyy) (gcc version 7.3.0 (GCC)) [...]

GCC
Template:Board$ cat /proc/version

Linux version 4.14.48 (xxxx@yyyy) (Template:Highlight) [...]

Yocto Project
Template:Board$ lsb_release -c

Codename: Template:Highlight

Weston
Template:Board$ weston --version

Template:Highlight

GStreamer
Template:Board$ gst-play-1.0 --version

Template:Highlight

GPU
Template:Board$ cat /sys/kernel/debug/gc/version

Template:Highlight built [...]

5.3. Configuration tips[edit source]

5.4. Getting board IP address[edit source]

Prerequisite: your board is connected to your local network through the Ethernet connector (see step 3).

Template:Board$ ip addr show eth0                                                                           
3: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
    inet Template:Highlight/22 brd 10.xx.xx.xx scope global dynamic eth0
       valid_lft 159045sec preferred_lft 159045sec
    inet6 fe80::xx:xx:xx:xx/64 scope link 
       valid_lft forever preferred_lft forever
  • Get the IP address of your board with the ifconfig Linux command line (a deprecated but well-known command):
Template:Board$ ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:xx:xx:xx:xx:xx
          inet addr:Template:Highlight  Bcast:10.xx.xx.xx  Mask:255.255.252.0
          inet6 addr: fe80::xx:xx:xx:xx/64 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:247

5.5. Copying a file from your host PC to your board (and reciprocally)[edit source]

5.6. Miscellaneous commands[edit source]

Template:InfoTemplate:UpdateNeededForNewRelease

5.6.1. Printing distribution specific information[edit source]

Template:Board$ lsb_release -a
LSB Version:    core-4.1-noarch:core-4.1-arm
Distributor ID: openstlinux-weston
Description:    ST OpenSTLinux - Weston - (A Yocto Project Based Distro) 2.4+openstlinux-4.14-rocko-mp1-18-11-26
Release:        2.4+openstlinux-4.14-rocko-mp1-18-11-26
Codename:       rocko

Where:

5.6.2. Printing system information[edit source]

Template:Board$ uname -a
Linux stm32mp1-boards-rev[b/c] 4.14.48 #1 SMP PREEMPT Tue Nov 27 14:41:52 UTC 2018 armv7l armv7l armv7l GNU/Linux

Where:

5.6.3. Printing Linux kernel and GCC versions[edit source]

Template:Board$ cat /proc/version
Linux version 4.14.48 (xxxx@yyyy) (gcc version 7.3.0 (GCC)) #1 SMP PREEMPT Tue Nov 27 14:41:52 UTC 2018

Where:

5.6.4. Printing the amount of disk space available on all mounted file systems[edit source]

Template:Board$ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/root       719M  347M  334M  52% /
devtmpfs        372M     0  372M   0% /dev
tmpfs           436M     0  436M   0% /dev/shm
tmpfs           436M   14M  423M   4% /run
tmpfs           436M     0  436M   0% /sys/fs/cgroup
tmpfs           436M  4.0K  436M   1% /tmp
/dev/mmcblk0p4   58M  7.7M   46M  15% /boot
tmpfs           436M  160K  436M   1% /var/volatile
/dev/mmcblk0p7   15G   14G     0 100% /usr/local
/dev/mmcblk0p5   15M  8.7M  4.7M  65% /vendor
tmpfs            88M     0   88M   0% /run/user/0

Where:


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).