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
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]

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]

Board $> uname -a
Linux stm32mp1 4.19.9 #1 SMP PREEMPT Thu Dec 13 08:16:23 UTC 2018 armv7l armv7l armv7l GNU/Linux

3.3 Printing Linux kernel and GCC versions[edit]

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

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)

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

symetric multiprocessing

Direct Memory Access

Device Tree

Power State Coordination Interface

Secure Monitor Call

uniprocessor

Attachments

Discussions