**************************** 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/ *** 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