Execute basic commands

Template:ArticleMainWriter


STM32MP157X-DK2.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 will 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 to communicate with the board trough a UART serial interface.

  • Install minicom
PC $> sudo apt-get install minicom
  • Get the ttyACM device instance that need 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: STM32MP157CAC Rev.B
NOTICE:  Model: STMicroelectronics STM32MP157C-DK2 Discovery Board
NOTICE:  Board: MB1272 Var2 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 1x4Gb 533MHz v1.41                            
INFO:    Memory size = 0x20000000 (512 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 : 748404                                              
WARNING: Skip signature check (header option)                                   
INFO:    Image id=5 loaded: 0xc0100000 - 0xc01b6b74                             
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: STM32MP157CAC Rev.B                                                        
Model: STMicroelectronics STM32MP157C-DK2 Discovery Board                       
Board: stm32mp1 in trusted mode (st,stm32mp157c-dk2)                            
Board: MB1272 Var2 Rev.C-01                                                     
       Watchdog enabled                                                         
DRAM:  512 MiB                                                                  
Clocks:                                                                         
- MPU : 650 MHz                                                                 
- MCU : 208.878 MHz                                                             
- AXI : 266.500 MHz                                                             
- PER : 24 MHz                                                                  
- DDR : 533 MHz                                                                 
NAND:  0 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 0 ms                                                         
## Executing script at c4100000                                                 
Scanning mmc 0:4...                                                             
Found /mmc0_stm32mp157c-dk2_extlinux/extlinux.conf                              
Retrieving file: /mmc0_stm32mp157c-dk2_extlinux/extlinux.conf                   
616 bytes read in 1 ms (601.6 KiB/s)                                            
Retrieving file: /mmc0_stm32mp157c-dk2_extlinux/../splash.bmp                   
46180 bytes read in 3 ms (14.7 MiB/s)                                           
Select the boot mode                                                            
1:      stm32mp157c-dk2-sdcard                                                  
2:      stm32mp157c-dk2-a7-examples-sdcard                                      
3:      stm32mp157c-dk2-m4-examples-sdcard                                      
Enter choice: 1:        stm32mp157c-dk2-sdcard                                  
Retrieving file: /uImage                                                        
6569464 bytes read in 290 ms (21.6 MiB/s)                                       
append: root=/dev/mmcblk0p6 rootwait rw console=ttySTM0,115200                  
Retrieving file: /stm32mp157c-dk2.dtb                                           
69510 bytes read in 4 ms (16.6 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 c4013f85                         
                                                                                
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))8
[    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-DK2 Discod
[    0.000000] Memory policy: Data cache writealloc                             
[    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
[    0.000000] OF: reserved mem: initialized node vdev0vring1@10042000, compatil
[    0.000000] Reserved memory: created DMA memory pool at 0x10044000, size 0 MB
[    0.000000] OF: reserved mem: initialized node vdev0buffer@10044000, compatil
[    0.000000] Reserved memory: created DMA memory pool at 0x30000000, size 0 MB
[    0.000000] OF: reserved mem: initialized node mcuram@0x30000000, compatiblel
[    0.000000] Reserved memory: created DMA memory pool at 0x38000000, size 0 MB
[    0.000000] OF: reserved mem: initialized node retram@0x38000000, compatiblel
[    0.000000] cma: Reserved 128 MiB at 0xd4000000                              
[    0.000000] psci: probing for conduit method from DT.                        
[    0.000000] psci: PSCIv1.1 detected in firmware.

...

[  OK  ] Reached target Login Prompts.                                          
[  OK  ] Started Avahi mDNS/DNS-SD Stack.                                       
[  OK  ] Reached target Multi-User System.                                      
         Starting Update UTMP about System Runlevel Changes...                  
[  OK  ] Started Update UTMP about System Runlevel Changes.                     
                                                                                
ST OpenSTLinux - Weston - (A Yocto Project Based Distro) 2.6-openstlinux-4.19-t0
                                                                                
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 #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]

Board $> cat /proc/version
Linux version 4.19.9 (host@computer) (gcc version 8.2.0 (GCC)) #2 SMP PREEMPT Wed Feb 6 19:24:47 CET 2019

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  341M  340M  51% /
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
/dev/mmcblk0p7   14G   67M   13G   1% /usr/local
/dev/mmcblk0p5   15M  8.2M  5.3M  61% /vendor
tmpfs           214M   84K  214M   1% /var/volatile
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