100 lines
3.1 KiB
Plaintext
100 lines
3.1 KiB
Plaintext
****************************
|
|
Technexion i.MX8M Pico board
|
|
****************************
|
|
|
|
This file documents the Buildroot support for the Technexion i.MX8M
|
|
Pico board. The Pico i.MX8M system-on-module [1] is present in
|
|
development kits like the Pico Pi i.MX8M [2].
|
|
|
|
Build
|
|
=====
|
|
|
|
First, configure Buildroot for the i.MX8M Pico board:
|
|
|
|
make imx8mpico_defconfig
|
|
|
|
Build all components:
|
|
|
|
make
|
|
|
|
You will find in output/images/ the following files:
|
|
- bl31.bin
|
|
- boot.vfat
|
|
- Image
|
|
- imx8-boot-sd.bin
|
|
- lpddr4_pmu_train_fw.bin
|
|
- pico-8m-dcss-ili9881c.dtb
|
|
- pico-8m.dtb
|
|
- rootfs.ext4
|
|
- sdcard.img
|
|
- signed_hdmi_imx8m.bin
|
|
- u-boot.imx
|
|
|
|
Flashing sdcard.img on the eMMC
|
|
===============================
|
|
|
|
i.MX8M Pico board does not have a SD card slot. The storage is an
|
|
eMMC. An easy way to flash the eMMC is to use the u-boot ums
|
|
command. The boards are sold pre-flashed with such a u-boot. It is
|
|
assumed here that the board has already a working u-boot on eMMC and
|
|
jumpers are set to boot on eMMC. See [3].
|
|
|
|
Jumper configuration for eMMC boot:
|
|
J1: jumper on pins 4 and 6.
|
|
J2: jumper on pins 2 and 4.
|
|
|
|
In case the board was flashed with a wrong u-boot, or the eMMC is
|
|
erased, u-boot can be loaded by USB Serial Download boot mode, using
|
|
imx-usb-loader. See [3].
|
|
|
|
For flashing:
|
|
- Plug the micro USB cable from the Debug USB Port, to your computer
|
|
- Plug the USB Type C to your computer, this will power up the board
|
|
|
|
In the U-Boot prompt launch:
|
|
|
|
=> ums 0 mmc ${mmcdev}
|
|
|
|
This will mount the eMMC content in the host PC as a mass storage device.
|
|
Note: the ${mmcdev} id may change from one uboot version to another. The
|
|
actual id can be confirmed by running commands "mmc rescan" then
|
|
"mmc list", to find the eMMC entry. Finally it's possible to enter
|
|
directly the mmc device id, for example: "ums 0 mmc 2".
|
|
|
|
To determine the device associated to the eMMC card have a look in the
|
|
/proc/partitions file:
|
|
|
|
cat /proc/partitions
|
|
|
|
If your system automatically mount some device partitions, make sure
|
|
to unmount them.
|
|
|
|
Buildroot prepares a bootable "sdcard.img" image in the output/images/
|
|
directory, ready to be dumped on the eMMC. Launch the following
|
|
command as root:
|
|
|
|
dd bs=1M if=output/images/sdcard.img of=/dev/<your-sd-device>
|
|
|
|
*** WARNING! This will destroy all the eMMC content. Use with care! ***
|
|
|
|
This operation can take several minutes, depending on the image
|
|
size. When tested, a 10MB/s transfer rate was observed. Note: the
|
|
blocksize "bs=1M" parameter gives better transfer performances.
|
|
|
|
For details about the medium image layout, see the definition in
|
|
board/freescale/common/imx/genimage.cfg.template.
|
|
|
|
Boot the i.MX8M Pico board
|
|
==========================
|
|
|
|
To boot your newly created system:
|
|
- put a micro USB cable into the Debug USB Port and connect using a terminal
|
|
emulator at 115200 bps, 8n1;
|
|
- power on the board, with USB Type C connector.
|
|
|
|
Enjoy!
|
|
|
|
[1]. https://www.technexion.com/products/system-on-modules/pico/pico-compute-modules/detail/PICO-IMX8M
|
|
[2]. https://www.technexion.com/products/system-on-modules/evk/pico-pi-imx8m/
|
|
[3]. https://developer.technexion.com/docs/pico-evaluation-kit-boot-mode-settings#picoimx8m-and-picoimx8mmini
|