1*4882a593Smuzhiyun********************************* 2*4882a593SmuzhiyunTechnexion i.MX8M Mini Pico board 3*4882a593Smuzhiyun********************************* 4*4882a593Smuzhiyun 5*4882a593SmuzhiyunThis file documents the Buildroot support for the Technexion i.MX8M 6*4882a593SmuzhiyunMini Pico board. The Pico i.MX8M Mini system-on-module [1] is present 7*4882a593Smuzhiyunin development kits like the Pico Pi i.MX8M Mini [2]. 8*4882a593Smuzhiyun 9*4882a593SmuzhiyunBuild 10*4882a593Smuzhiyun===== 11*4882a593Smuzhiyun 12*4882a593SmuzhiyunFirst, configure Buildroot for the i.MX8M Mini Pico board: 13*4882a593Smuzhiyun 14*4882a593Smuzhiyun make imx8mmpico_defconfig 15*4882a593Smuzhiyun 16*4882a593SmuzhiyunBuild all components: 17*4882a593Smuzhiyun 18*4882a593Smuzhiyun make 19*4882a593Smuzhiyun 20*4882a593SmuzhiyunYou will find in output/images/ the following files: 21*4882a593Smuzhiyun - bl31.bin 22*4882a593Smuzhiyun - boot.vfat 23*4882a593Smuzhiyun - Image 24*4882a593Smuzhiyun - imx8-boot-sd.bin 25*4882a593Smuzhiyun - imx8mm-pico-pi.dtb 26*4882a593Smuzhiyun - imx8mm-pico-pi-ili9881c.dtb 27*4882a593Smuzhiyun - imx8mm-pico-pi-sn65dsi84-hj070na.dtb 28*4882a593Smuzhiyun - lpddr4_pmu_train_fw.bin 29*4882a593Smuzhiyun - rootfs.ext2 30*4882a593Smuzhiyun - rootfs.ext4 31*4882a593Smuzhiyun - sdcard.img 32*4882a593Smuzhiyun - u-boot.imx 33*4882a593Smuzhiyun 34*4882a593SmuzhiyunFlashing sdcard.img on the eMMC 35*4882a593Smuzhiyun=============================== 36*4882a593Smuzhiyun 37*4882a593Smuzhiyuni.MX8M Mini Pico board does not have a SD card slot. The storage is an 38*4882a593SmuzhiyuneMMC. An easy way to flash the eMMC is to use the u-boot ums 39*4882a593Smuzhiyuncommand. The boards are sold pre-flashed with such a u-boot. It is 40*4882a593Smuzhiyunassumed here that the board has already a working u-boot on eMMC and 41*4882a593Smuzhiyunjumpers are set to boot on eMMC. See [3]. 42*4882a593Smuzhiyun 43*4882a593SmuzhiyunJumper configuration for eMMC boot: 44*4882a593SmuzhiyunJ1: jumper on pins 4 and 6. 45*4882a593SmuzhiyunJ2: jumper on pins 2 and 4. 46*4882a593Smuzhiyun 47*4882a593SmuzhiyunIn case the board was flashed with a wrong u-boot, or the eMMC is 48*4882a593Smuzhiyunerased, u-boot can be loaded by USB Serial Download boot mode, using 49*4882a593Smuzhiyunimx-usb-loader. See [3] and [4]. 50*4882a593Smuzhiyun 51*4882a593SmuzhiyunFor flashing: 52*4882a593Smuzhiyun- Plug the micro USB cable from the Debug USB Port, to your computer 53*4882a593Smuzhiyun- Plug the USB Type C to your computer, this will power up the board 54*4882a593Smuzhiyun 55*4882a593SmuzhiyunIn the U-Boot prompt launch: 56*4882a593Smuzhiyun 57*4882a593Smuzhiyun=> ums 0 mmc 1 58*4882a593Smuzhiyun 59*4882a593SmuzhiyunThis will mount the eMMC content in the host PC as a mass storage device. 60*4882a593Smuzhiyun 61*4882a593SmuzhiyunTo determine the device associated to the eMMC card have a look in the 62*4882a593Smuzhiyun/proc/partitions file: 63*4882a593Smuzhiyun 64*4882a593Smuzhiyun cat /proc/partitions 65*4882a593Smuzhiyun 66*4882a593SmuzhiyunIf your system automatically mount some device partitions, make sure 67*4882a593Smuzhiyunto unmount them. 68*4882a593Smuzhiyun 69*4882a593SmuzhiyunBuildroot prepares a bootable "sdcard.img" image in the output/images/ 70*4882a593Smuzhiyundirectory, ready to be dumped on the eMMC. Launch the following 71*4882a593Smuzhiyuncommand as root: 72*4882a593Smuzhiyun 73*4882a593Smuzhiyun dd if=output/images/sdcard.img of=/dev/<your-sd-device> 74*4882a593Smuzhiyun 75*4882a593Smuzhiyun*** WARNING! This will destroy all the eMMC content. Use with care! *** 76*4882a593Smuzhiyun 77*4882a593SmuzhiyunThis operation can take several minutes, depending on the image 78*4882a593Smuzhiyunsize. When tested, a 2MB/s transfer rate was observed. 79*4882a593Smuzhiyun 80*4882a593SmuzhiyunFor details about the medium image layout, see the definition in 81*4882a593Smuzhiyunboard/freescale/common/imx/genimage.cfg.template. 82*4882a593Smuzhiyun 83*4882a593SmuzhiyunBoot the i.MX8M Mini Pico board 84*4882a593Smuzhiyun=============================== 85*4882a593Smuzhiyun 86*4882a593SmuzhiyunTo boot your newly created system: 87*4882a593Smuzhiyun- put a micro USB cable into the Debug USB Port and connect using a terminal 88*4882a593Smuzhiyun emulator at 115200 bps, 8n1; 89*4882a593Smuzhiyun- power on the board, with USB Type C connector. 90*4882a593Smuzhiyun 91*4882a593SmuzhiyunEnjoy! 92*4882a593Smuzhiyun 93*4882a593Smuzhiyun[1]. https://www.technexion.com/products/system-on-modules/pico/pico-compute-modules/detail/PICO-IMX8M-MINI 94*4882a593Smuzhiyun[2]. https://www.technexion.com/products/pico-evaluation-kits/detail/PICOPIIMX8MM1GDEV 95*4882a593Smuzhiyun[3]. https://www.technexion.com/support/knowledgebase/boot-configuration-settings-for-pico-baseboards/ 96*4882a593Smuzhiyun[4]. https://www.technexion.com/support/knowledgebase/loading-bootable-software-images-onto-the-emmc-of-picosom-on-pico-pi/ 97