Execute basic commands

< Getting started‎ | STM32MP1 boards‎ | STM32MP157x-EV1‎ | Let's start
STM32MP157C-EV1.png
Let's start Develop on Arm® Cortex®-A7
Step category in.png Unpack the board Step.png Populate the target and boot the image Step.png Execute basic commands Step.png Use the demo launcher Step category out.png


1 Overview[edit]

This stage explains how to connect the Linux terminal of your board to your host computer through the ST-LINK/V2-1.
Then you can see how to execute basic commands with the Linux command line interface in order to be familiarized with the Linux console.

2 The serial terminal[edit]

The serial terminal allows you to communicate with the board trough an UART serial interface.

  • Install minicom
PC $> sudo apt-get install minicom
  • Get the ttyACM device instance that needs to be used to access the ST-LINK/V2-1
PC $> ls /dev/ttyACM*
/dev/ttyACM0
  • Connect the minicom to the /dev/ttyACM0 device
PC $> minicom -D /dev/ttyACM0
Welcome to minicom 2.7

OPTIONS: I18n 
Compiled on Nov 15 2018, 20:18:47.
Port /dev/ttyACM0, 15:56:03

Press CTRL-A Z for help on special keys
  • Press the reset button to reset the board. You should see logs displayed in the minicom window

For ecosystem release v1.1.0 More info.png:

NOTICE:  CPU: STM32MP157CAA Rev.B
NOTICE:  Model: STMicroelectronics STM32MP157C eval daughter on eval mother
NOTICE:  Board: MB1263 Var1 Rev.C-01
INFO:    Reset reason (0x54):
INFO:      System reset generated by MPU (MPSYSRST)
INFO:    Using SDMMC
INFO:      Instance 1
INFO:    Boot used partition fsbl1
NOTICE:  BL2: v2.0-r1.5(debug):
NOTICE:  BL2: Built : 13:13:37, Oct  2 2018
INFO:    BL2: Doing platform setup
INFO:    PMIC version = 0x10
INFO:    RAM: DDR3-1066/888 bin G 2x4Gb 533MHz v1.45
INFO:    Memory size = 0x40000000 (1024 MB)
INFO:    BL2 runs SP_MIN setup
INFO:    BL2: Loading image id 4
INFO:    Loading image id=4 at address 0x2fff0000
INFO:    Image id=4 loaded: 0x2fff0000 - 0x30000000
INFO:    BL2: Loading image id 5
INFO:    Loading image id=5 at address 0xc0100000
INFO:    STM32 Image size : 810110
WARNING: Skip signature check (header option)
INFO:    Image id=5 loaded: 0xc0100000 - 0xc01c5c7e
INFO:    read version 0 current version 0
NOTICE:  BL2: Booting BL32
INFO:    Entry point address = 0x2fff0000
INFO:    SPSR = 0x1d3
INFO:    PMIC version = 0x10
NOTICE:  SP_MIN: v2.0-r1.5(debug):
NOTICE:  SP_MIN: Built : 13:13:37, Oct  2 2018
INFO:    ARM GICv2 driver initialized
INFO:    stm32mp HSI (18): Secure only
INFO:    stm32mp HSE (20): Secure only
INFO:    stm32mp PLL2 (27): Secure only
INFO:    stm32mp PLL2_R (30): Secure only
INFO:    SP_MIN: Initializing runtime services
INFO:    SP_MIN: Preparing exit to normal world


U-Boot 2018.11-stm32mp-r3 (Nov 14 2018 - 16:10:06 +0000)

CPU: STM32MP157CAA Rev.B
Model: STMicroelectronics STM32MP157C eval daughter on eval mother
Board: stm32mp1 in trusted mode (st,stm32mp157c-ev1)
Board: MB1263 Var1 Rev.C-01
DRAM:  1 GiB
Clocks:
- MPU : 650 MHz
- MCU : 208.878 MHz
- AXI : 266.500 MHz
- PER : 24 MHz
- DDR : 533 MHz
NAND:  1024 MiB
MMC:   STM32 SDMMC2: 0, STM32 SDMMC2: 1
Loading Environment from EXT4... OK
In:    serial
Out:   serial
Err:   serial
Net:   eth0: ethernet@5800a000
Hit any key to stop autoboot:  0 
Boot over mmc0!
switch to partitions #0, OK
mmc0 is current device
Scanning mmc 0:4...
Found U-Boot script /boot.scr.uimg
1553 bytes read in 1 ms (1.5 MiB/s)
## Executing script at c4100000
Scanning mmc 0:4...
Found /mmc0_stm32mp157c-ev1_extlinux/extlinux.conf
Retrieving file: /mmc0_stm32mp157c-ev1_extlinux/extlinux.conf
614 bytes read in 1 ms (599.6 KiB/s)
Retrieving file: /splash.bmp
46180 bytes read in 4 ms (11 MiB/s)
Select the boot mode
1:      stm32mp157c-ev1-sdcard
2:      stm32mp157c-ev1-a7-examples-sdcard
3:      stm32mp157c-ev1-m4-examples-sdcard
Enter choice: 1:        stm32mp157c-ev1-sdcard
Retrieving file: /uImage
6652480 bytes read in 294 ms (21.6 MiB/s)
append: root=/dev/mmcblk0p6 rootwait rw console=ttySTM0,115200
Retrieving file: /stm32mp157c-ev1.dtb
73259 bytes read in 4 ms (17.5 MiB/s)
## Booting kernel from Legacy Image at c2000000 ...
   Image Name:   Linux-4.19.49
   Created:      2019-06-09   7:17:25 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    6652416 Bytes = 6.3 MiB
   Load Address: c2000040
   Entry Point:  c2000040
   Verifying Checksum ... OK
## Flattened Device Tree blob at c4000000
   Booting using the fdt blob at 0xc4000000
   XIP Kernel Image ... OK
   Using Device Tree in place at c4000000, end c4014e2a
SF: Detected mx25l51235f with page size 256 Bytes, erase size 64 KiB, total 64 B

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 4.19.49 (oe-user@oe-host) (gcc version 8.2.0 (GCC)9
[    0.000000] CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c5387d
[    0.000000] CPU: div instructions available: patching division code
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instructie
[    0.000000] OF: fdt: Machine model: STMicroelectronics STM32MP157C eval daugr
[    0.000000] Memory policy: Data cache writealloc
[    0.000000] efi: Getting EFI parameters from FDT:
[    0.000000] efi: UEFI not found.
[    0.000000] Reserved memory: created DMA memory pool at 0x10000000, size 0 MB
[    0.000000] OF: reserved mem: initialized node mcuram2@0x10000000, compatibll
[    0.000000] Reserved memory: created DMA memory pool at 0x10040000, size 0 MB
[    0.000000] OF: reserved mem: initialized node vdev0vring0@10040000, compatil
[    0.000000] Reserved memory: created DMA memory pool at 0x10042000, size 0 MB
...
[    3.370352] stm32_rtc 5c004000.rtc: setting system clock to 2000-01-01 00:16)
[    3.379410] ALSA device list:
[    3.381354]   #0: STM32MP1-EV
[    3.401085] EXT4-fs (mmcblk0p6): mounted filesystem with ordered data mode. )
[    3.407812] VFS: Mounted root (ext4 filesystem) on device 179:38.
[    3.420459] devtmpfs: mounted
[    3.423774] Freeing unused kernel memory: 1024K
[    3.427170] Run /sbin/init as init process
[    3.601251] systemd[1]: System time before build time, advancing clock.
[    3.680903] NET: Registered protocol family 10
[    3.717093] Segment Routing with IPv6
[    3.740417] systemd[1]: systemd 239 running in system mode. (+PAM -AUDIT -SE)
[    3.761124] systemd[1]: Detected architecture arm.

Welcome to ST OpenSTLinux - Weston - (A Yocto Project Based Distro) 2.6-openstl!

[    3.813855] systemd[1]: Set hostname to <stm32mp1>.
[    3.824369] systemd[1]: Hardware watchdog 'STM32 Independent Watchdog', vers0
[    3.831548] systemd[1]: Set hardware watchdog to 30s.
[    4.436713] systemd[1]: Unnecessary job for dev-ttySTM0.device was removed.
[    4.445218] systemd[1]: Listening on Journal Socket (/dev/log).
[  OK  ] Listening on Journal Socket (/dev/log).
[    4.480281] systemd[1]: Listening on initctl Compatibility Named Pipe.
[  OK  ] Listening on initctl Compatibility Named Pipe.
[    4.524206] systemd[1]: Created slice system-serial\x2dgetty.slice.
[  OK  ] Created slice system-serial\x2dgetty.slice.
[    4.560712] systemd[1]: Listening on udev Control Socket.
[  OK  ] Listening on udev Control Socket.
[  OK  ] Created slice User and Session Slice.
[  OK  ] Reached target Slices.
[  OK  ] Reached target Remote File Systems.
[  OK  ] Listening on Network Service Netlink Socket.
[  OK  ] Reached target Swap.
[  OK  ] Listening on Process Core Dump Socket.
[  OK  ] Listening on udev Kernel Socket.
[  OK  ] Started Dispatch Password Requests to Console Directory Watch.
[  OK  ] Started Forward Password Requests to Wall Directory Watch.
...
[  OK  ] Started Save/Restore Sound Card State.
[  OK  ] Started Weston Wayland Compositor.
[  OK  ] Reached target Sound Card.
[  OK  ] Started Serial Getty on ttySTM0.
[  OK  ] Started Getty on tty1.
[  OK  ] Reached target Login Prompts.
[  OK  ] Started Login Service.
[  OK  ] Started Avahi mDNS/DNS-SD Stack.
[  OK  ] Started Netdata, Real-time performance monitoring.
[  OK  ] Started Sound Service.
[  OK  ] Reached target Multi-User System.
         Starting Update UTMP about System Runlevel Changes...
[  OK  ] Started Update UTMP about System Runlevel Changes.
[   23.011003] cfg80211: Loading compiled-in X.509 certificates for regulatory e
[   23.051458] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'

ST OpenSTLinux - Weston - (A Yocto Project Based Distro) 2.6-openstlinux-4.19-t0

stm32mp1 login: root (automatic login)

root@stm32mp1:~# 

For ecosystem release v1.0.0 More info.png:

NOTICE:  CPU: STM32MP157AAA Rev.B
NOTICE:  Model: STMicroelectronics STM32MP157C eval daughter on eval mother
NOTICE:  Board: MB1263 Var1 Rev.C-01
INFO:    Reset reason (0x14):
INFO:      Pad Reset from NRST
INFO:    Using SDMMC
INFO:      Instance 1
INFO:    Boot used partition fsbl1
INFO:    Product_below_2v5=1: HSLVEN update is
INFO:      destructive, no update as VDD>2.7V
NOTICE:  BL2: v2.0(debug):
NOTICE:  BL2: Built : 13:13:37, Oct  2 2018
INFO:    BL2: Doing platform setup
INFO:    PMIC version = 0x10
INFO:    RAM: DDR3-1066/888 bin G 2x4Gb 533MHz v1.41
INFO:    Memory size = 0x40000000 (1024 MB)
INFO:    BL2 runs SP_MIN setup
INFO:    BL2: Loading image id 4
INFO:    Loading image id=4 at address 0x2fff0000
INFO:    Image id=4 loaded: 0x2fff0000 - 0x30000000
INFO:    BL2: Loading image id 5
INFO:    Loading image id=5 at address 0xc0100000
INFO:    STM32 Image size : 753913
WARNING: Skip signature check (header option)
INFO:    Image id=5 loaded: 0xc0100000 - 0xc01b80f9
INFO:    read version 0 current version 0
NOTICE:  BL2: Booting BL32
INFO:    Entry point address = 0x2fff0000
INFO:    SPSR = 0x1d3
INFO:    PMIC version = 0x10
NOTICE:  SP_MIN: v2.0(debug):
NOTICE:  SP_MIN: Built : 13:13:37, Oct  2 2018
INFO:    ARM GICv2 driver initialized
INFO:    stm32mp HSI (18): Secure only
INFO:    stm32mp HSE (20): Secure only
INFO:    stm32mp PLL2 (27): Secure only
INFO:    stm32mp PLL2_R (30): Secure only
INFO:    SP_MIN: Initializing runtime services
INFO:    SP_MIN: Preparing exit to normal world


U-Boot 2018.11-stm32mp-r2 (Nov 14 2018 - 16:10:06 +0000)

CPU: STM32MP157AAA Rev.B
Model: STMicroelectronics STM32MP157C eval daughter on eval mother
Board: stm32mp1 in trusted mode (st,stm32mp157c-ev1)
Board: MB1263 Var1 Rev.C-01
       Watchdog enabled
DRAM:  1 GiB
Clocks:
- MPU : 650 MHz
- MCU : 208.878 MHz
- AXI : 266.500 MHz
- PER : 24 MHz
- DDR : 533 MHz
NAND:  1024 MiB
MMC:   STM32 SDMMC2: 0, STM32 SDMMC2: 1
In:    serial
Out:   serial
Err:   serial
Net:   eth0: ethernet@5800a000
Boot over mmc0!
Hit any key to stop autoboot:  0 
switch to partitions #0, OK
mmc0 is current device
Scanning mmc 0:4...
Found U-Boot script /boot.scr.uimg
1553 bytes read in 1 ms (1.5 MiB/s)
## Executing script at c4100000
Scanning mmc 0:4...
Found /mmc0_stm32mp157c-ev1_extlinux/extlinux.conf
Retrieving file: /mmc0_stm32mp157c-ev1_extlinux/extlinux.conf
616 bytes read in 0 ms
Retrieving file: /mmc0_stm32mp157c-ev1_extlinux/../splash.bmp
46180 bytes read in 3 ms (14.7 MiB/s)
Select the boot mode
1:      stm32mp157c-ev1-sdcard
2:      stm32mp157c-ev1-a7-examples-sdcard
3:      stm32mp157c-ev1-m4-examples-sdcard
Enter choice: 1:        stm32mp157c-ev1-sdcard
Retrieving file: /uImage
6569464 bytes read in 289 ms (21.7 MiB/s)
append: root=/dev/mmcblk0p6 rootwait rw console=ttySTM0,115200
Retrieving file: /stm32mp157c-ev1.dtb
74445 bytes read in 5 ms (14.2 MiB/s)
## Booting kernel from Legacy Image at c2000000 ...
   Image Name:   Linux-4.19.9
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    6569400 Bytes = 6.3 MiB
   Load Address: c2000040
   Entry Point:  c2000040
   Verifying Checksum ... OK
## Flattened Device Tree blob at c4000000
   Booting using the fdt blob at 0xc4000000
   XIP Kernel Image ... OK
   Using Device Tree in place at c4000000, end c40152cc
SF: Detected mx25l51235f with page size 256 Bytes, erase size 64 KiB, total 64 MiB

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 4.19.9 (oe-user@oe-host) (gcc version 8.2.0 (GCC)) #1 SMP PREEMPT Thu Dec 13 08:16:23 UTC 2018
[    0.000000] CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c5387d
[    0.000000] CPU: div instructions available: patching division code
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] OF: fdt: Machine model: STMicroelectronics STM32MP157C eval daughter on eval mother
[    0.000000] Memory policy: Data cache writealloc
[    0.000000] Reserved memory: created DMA memory pool at 0x10000000, size 0 MiB
[    0.000000] OF: reserved mem: initialized node mcuram2@0x10000000, compatible id shared-dma-pool
[    0.000000] Reserved memory: created DMA memory pool at 0x10040000, size 0 MiB
[    0.000000] OF: reserved mem: initialized node vdev0vring0@10040000, compatible id shared-dma-pool
[    0.000000] Reserved memory: created DMA memory pool at 0x10042000, size 0 MiB
[    0.000000] OF: reserved mem: initialized node vdev0vring1@10042000, compatible id shared-dma-pool
[    0.000000] Reserved memory: created DMA memory pool at 0x10044000, size 0 MiB
[    0.000000] OF: reserved mem: initialized node vdev0buffer@10044000, compatible id shared-dma-pool
[    0.000000] Reserved memory: created DMA memory pool at 0x30000000, size 0 MiB
[    0.000000] OF: reserved mem: initialized node mcuram@0x30000000, compatible id shared-dma-pool
[    0.000000] Reserved memory: created DMA memory pool at 0x38000000, size 0 MiB
[    0.000000] OF: reserved mem: initialized node retram@0x38000000, compatible id shared-dma-pool
[    0.000000] cma: Reserved 128 MiB at 0xf0000000
[    0.000000] psci: probing for conduit method from DT.
[    0.000000] psci: PSCIv1.1 detected in firmware.
[    0.000000] psci: Using standard PSCI v0.2 function IDs
[    0.000000] psci: MIGRATE_INFO_TYPE not supported.
[    0.000000] psci: SMC Calling Convention v1.0

...

[  OK  ] Reached target Login Prompts.
[  OK  ] Started Sound Service.
[  OK  ] Reached target Multi-User System.
         Starting Update UTMP about System Runlevel Changes...
[  OK  ] Started Update UTMP about System Runlevel Changes.
[   23.210644] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[   23.263375] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'

ST OpenSTLinux - Weston - (A Yocto Project Based Distro) 2.6-openstlinux-4.19-thud-mp1-19-02-20 stm32mp1 ttySTM0

stm32mp1 login: root (automatic login)

root@stm32mp1:~# 

3 Basic commands[edit]

3.1 Printing distribution specific information[edit]

For ecosystem release v1.1.0 More info.png:

Board $> lsb_release -a
LSB Version:    core-5.0-noarch:core-5.0-arm
Distributor ID: openstlinux-weston
Description:    ST OpenSTLinux - Weston - (A Yocto Project Based Distro) 2.6-openstlinux-4.19-thud-mp1-19-10-09
Release:        2.6-openstlinux-4.19-thud-mp1-19-10-09
Codename:       thud

For ecosystem release v1.0.0 More info.png:

Board $> lsb_release -a
LSB Version:    core-5.0-noarch:core-5.0-arm
Distributor ID: openstlinux-weston
Description:    ST OpenSTLinux - Weston - (A Yocto Project Based Distro) 2.6-openstlinux-4.19-thud-mp1-19-02-20
Release:        2.6-openstlinux-4.19-thud-mp1-19-02-20
Codename:       thud

3.2 Printing system information[edit]

For ecosystem release v1.1.0 More info.png:

Board $> uname -a
Linux stm32mp1 4.19.49 #1 SMP PREEMPT Sun Jun 9 07:17:25 UTC 2019 armv7l armv7l armv7l GNU/Linux

For ecosystem release v1.0.0 More info.png:

Board $> uname -a
Linux stm32mp1 4.19.9 #2 SMP PREEMPT Wed Feb 6 19:24:47 CET 2019 armv7l armv7l armv7l GNU/Linux

3.3 Printing Linux kernel and GCC versions[edit]

For ecosystem release v1.1.0 More info.png:

Board $> cat /proc/version
Linux version 4.19.49 (oe-user@oe-host) (gcc version 8.2.0 (GCC)) #1 SMP PREEMPT Sun Jun 9 07:17:25 UTC 2019      

For ecosystem release v1.0.0 More info.png:

Board $> cat /proc/version
Linux version 4.19.9 (oe-user@oe-host) (gcc version 8.2.0 (GCC)) #1 SMP PREEMPT Thu Dec 13 08:16:23 UTC 2018

3.4 Printing the amount of disk space available on all mounted file systems[edit]

Board $> df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/root       719M  360M  321M  53% /
devtmpfs        150M     0  150M   0% /dev
tmpfs           214M     0  214M   0% /dev/shm
tmpfs           214M   12M  203M   6% /run
tmpfs           214M     0  214M   0% /sys/fs/cgroup
tmpfs           214M  4.0K  214M   1% /tmp
/dev/mmcblk0p4   58M  8.2M   46M  16% /boot
tmpfs           214M   92K  214M   1% /var/volatile
/dev/mmcblk0p7  6.4G   68M  6.1G   2% /usr/local
/dev/mmcblk0p5   15M  8.2M  5.3M  61% /vendor
tmpfs            43M     0   43M   0% /run/user/0


3.5 ssh connection (only if Ethernet cable is connected)[edit]

  • Get the IP address of your board
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 xx.xx.xx.xx/22 brd xx.xx.xx.xx scope global dynamic eth0
       valid_lft 159045sec preferred_lft 159045sec
    inet6 xx::xx:xx:xx:xx/64 scope link 
       valid_lft forever preferred_lft forever
  • On the host computer connect the terminal to the board using ssh
PC $> ssh root@xx.xx.xx.xx
root@stm32mp1:~#


Back button.png Overview button.png Next button.png




Universal Asynchronous Receiver/Transmitter

Central processing unit

Microprocessor Unit

Boot Loader stage 2

Power Management Integrated Circuit

Random Access Memory

Boot Loader stage 3-2

High Speed Internal oscillator (STM32 clock source) or High Speed Synchronous Serial Interface (MIPI® Alliance standard)

Microcontroller Unit

Doubledata rate (memory domain)

MultimediaCard

Execute In Place. Method of executing programs directly from long term storage rather than copying it into RAM (linked to NOR Flash).

Direct Memory Access

Advanced Linux sound architecture

Virtual File System - NEW

symetric multiprocessing

Device Tree

Power State Coordination Interface

Secure Monitor Call

uniprocessor

Attachments

Discussions