1. Overview[edit source]
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 source]
The serial terminal allows to communicate with the board trough a UART serial interface.
- Install minicom
sudo apt-get install minicom
- Get the ttyACM device instance that need to be used to access the ST-LINK/V2-1
ls /dev/ttyACM* /dev/ttyACM0
- Connect the minicom to the /dev/ttyACM0 device
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 boot log displayed in the minicom window
For ecosystem release v1.2.0 :
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: PMIC version = 0x10 INFO: Using SDMMC INFO: Instance 1 INFO: Boot used partition fsbl1 NOTICE: BL2: v2.0-r3.0(debug): NOTICE: BL2: Built : 13:13:37, Oct 2 2018 INFO: BL2: Doing platform setup INFO: RAM: DDR3-1066/888 bin G 1x4Gb 533MHz v1.45 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 0x2ffef000 INFO: Image id=4 loaded: 0x2ffef000 - 0x30000000 INFO: BL2: Loading image id 5 INFO: Loading image id=5 at address 0xc0100000 INFO: STM32 Image size : 810245 WARNING: Skip signature check (header option) INFO: Image id=5 loaded: 0xc0100000 - 0xc01c5d05 NOTICE: BL2: Booting BL32 INFO: Entry point address = 0x2ffef000 INFO: SPSR = 0x1d3 NOTICE: SP_MIN: v2.0-r3.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-r4 (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 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 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 1628 bytes read in 1 ms (1.6 MiB/s) ## Executing script at c4100000 Scanning mmc 0:4... Found /mmc0_stm32mp157c-dk2_extlinux/extlinux.conf Retrieving file: /mmc0_stm32mp157c-dk2_extlinux/extlinux.conf 614 bytes read in 0 ms Retrieving file: /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 6722112 bytes read in 305 ms (21 MiB/s) append: root=/dev/mmcblk0p6 rootwait rw console=ttySTM0,115200 Retrieving file: /stm32mp157c-dk2.dtb 73578 bytes read in 5 ms (14 MiB/s) ## Booting kernel from Legacy Image at c2000000 ... Image Name: Linux-4.19.94 Created: 2020-01-09 9:19:10 UTC Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 6722048 Bytes = 6.4 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 c4014f69 Starting kernel ... [ 0.000000] Booting Linux on physical CPU 0x0 [ 0.000000] Linux version 4.19.94 (oe-user@oe-host) (gcc version 8.2.0 (GCC)0 [ 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] 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 [...] [ 3.764425] systemd[1]: Detected architecture arm. Welcome to ST OpenSTLinux - Weston - (A Yocto Project Based Distro) 2.6-openstl! ST OpenSTLinux - Weston - (A Yocto Project Based Distro) 2.6-openstlinux-20-02-19 stm32mp1 login: root (automatic login) root@stm32mp1:~#
For ecosystem release v1.1.0 :
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 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 1x4Gb 533MHz v1.45 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 : 805258 WARNING: Skip signature check (header option) INFO: Image id=5 loaded: 0xc0100000 - 0xc01c498a 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: STM32MP157CAC Rev.B Model: STMicroelectronics STM32MP157C-DK2 Discovery Board Board: stm32mp1 in trusted mode (st,stm32mp157c-dk2) Board: MB1272 Var2 Rev.C-01 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 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-dk2_extlinux/extlinux.conf Retrieving file: /mmc0_stm32mp157c-dk2_extlinux/extlinux.conf 614 bytes read in 1 ms (599.6 KiB/s) Retrieving file: /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 6652480 bytes read in 295 ms (21.5 MiB/s) append: root=/dev/mmcblk0p6 rootwait rw console=ttySTM0,115200 Retrieving file: /stm32mp157c-dk2.dtb 68852 bytes read in 4 ms (16.4 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 c4013cf3 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)) #1 SMP PREEMPT Sun Jun 9 07:17:25 UTC 2019 [ 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-DK2 Discovery Board [ 0.000000] Memory policy: Data cache writealloc [ 0.000000] efi: Getting EFI parameters from FDT: [ 0.000000] efi: UEFI not found. ... [ 3.110076] Run /sbin/init as init process [ 3.115137] hub 2-1:1.0: USB hub found [ 3.117776] hub 2-1:1.0: 4 ports detected [ 3.358998] systemd[1]: System time before build time, advancing clock. [ 3.455504] NET: Registered protocol family 10 [ 3.495900] Segment Routing with IPv6 [ 3.521434] systemd[1]: systemd 239 running in system mode. (+PAM -AUDIT -SELINUX +IMA -APPARMOR +SMACK +SYSVINIT +UTMP -LIBCRYPTSETUP -GCRYPT -GNUTLS +ACL +XZ -LZ4 -SECCOMP +BLKID -ELFUTILS +KMOD -ID) [ 3.542498] systemd[1]: Detected architecture arm. Welcome to ST OpenSTLinux - Weston - (A Yocto Project Based Distro) 2.6-openstlinux-4.19-thud-mp1-19-10-09 (thud)! [ 3.601262] systemd[1]: Set hostname to <stm32mp1>. [ 3.613928] systemd[1]: Hardware watchdog 'STM32 Independent Watchdog', version 0 [ 3.621153] systemd[1]: Set hardware watchdog to 30s. [ 4.269410] systemd[1]: Unnecessary job for dev-ttySTM0.device was removed. [ 4.277529] systemd[1]: Listening on initctl Compatibility Named Pipe. ... [ OK ] Started Getty on tty1. [ OK ] Reached target Login Prompts. [ OK ] Reached target Sound Card. [ OK ] Started Load/Save RF Kill Switch Status. [ OK ] Started Login Service. [ OK ] Reached target Multi-User System. Starting Update UTMP about System Runlevel Changes... [ OK ] Started Update UTMP about System Runlevel Changes. [ OK ] Started Hostname Service. ST OpenSTLinux - Weston - (A Yocto Project Based Distro) 2.6-openstlinux-4.19-thud-mp1-19-10-09 stm32mp1 ttySTM0 stm32mp1 login: root (automatic login) root@stm32mp1:~#
For ecosystem release v1.0.0 :
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 source]
3.1. Printing distribution specific information[edit source]
For ecosystem release v1.2.0 :
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-20-02-19 Release: 2.6-openstlinux-20-02-19 Codename: thud
For ecosystem release v1.1.0 :
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 :
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 source]
For ecosystem release v1.2.0 :
uname -a
Linux stm32mp1 4.19.94 #1 SMP PREEMPT Thu Jan 9 09:19:10 UTC 2020 armv7l armv7l armv7l GNU/Linux
For ecosystem release v1.1.0 :
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 :
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 source]
For ecosystem release v1.2.0 :
cat /proc/version
Linux version 4.19.94 (oe-user@oe-host) (gcc version 8.2.0 (GCC)) #1 SMP PREEMPT Thu Jan 9 09:19:10 UTC 2020
For ecosystem release v1.1.0 :
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 :
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 source]
df -h Filesystem Size Used Avail Use% Mounted on /dev/root 715M 348M 328M 52% / 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 tmpfs 214M 76K 214M 1% /var/volatile /dev/mmcblk0p4 58M 8.4M 46M 16% /boot /dev/mmcblk0p7 14G 67M 13G 1% /usr/local /dev/mmcblk0p5 15M 8.4M 5.1M 63% /vendor
3.5. ssh connection (only if Ethernet cable is connected)[edit source]
- Get the IP address of your board
ip 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 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/64 scope link valid_lft forever preferred_lft forever
- On the host computer connect the terminal to the board using ssh
ssh root@xx.xx.xx.xx
root@stm32mp1:~#