Template:ArticleMainWriter Template:ArticleProposedVersion
Let's start | Develop on Arm® Cortex®-A7 | |||||||
Unpack the board | Populate the target and boot the image | Execute basic commands | Use the demo launcher |
1. Overview[edit source]
This stage will explain you 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 will allow you 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 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 source]
3.1. Printing distribution specific information[edit source]
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
3.2. Printing system information[edit source]
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
3.3. Printing Linux kernel and GCC versions[edit source]
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
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 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
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 00:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff inet 10.xx.xx.xx/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
- On the host computer connect the terminal to the board using ssh
ssh root@10.xx.xx.xx
root@stm32mp1:~#