| ********************************* |
| Technexion i.MX8M Mini Pico board |
| ********************************* |
| |
| This file documents the Buildroot support for the Technexion i.MX8M |
| Mini Pico board. The Pico i.MX8M Mini system-on-module [1] is present |
| in development kits like the Pico Pi i.MX8M Mini [2]. |
| |
| Build |
| ===== |
| |
| First, configure Buildroot for the i.MX8M Mini Pico board: |
| |
| make imx8mmpico_defconfig |
| |
| Build all components: |
| |
| make |
| |
| You will find in output/images/ the following files: |
| - bl31.bin |
| - boot.vfat |
| - Image |
| - imx8-boot-sd.bin |
| - imx8mm-pico-pi.dtb |
| - imx8mm-pico-pi-ili9881c.dtb |
| - imx8mm-pico-pi-sn65dsi84-hj070na.dtb |
| - lpddr4_pmu_train_fw.bin |
| - rootfs.ext2 |
| - rootfs.ext4 |
| - sdcard.img |
| - u-boot.imx |
| |
| Flashing sdcard.img on the eMMC |
| =============================== |
| |
| i.MX8M Mini 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 Mini 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-MINI |
| [2]. https://www.technexion.com/products/system-on-modules/evk/pico-pi-imx8m-mini/ |
| [3]. https://developer.technexion.com/docs/recover-to-factory-settings-pico-imx8m-mini |