1f479cec3SAdam FordU-Boot for LogicPD i.MX6 Development Kit 2f479cec3SAdam Ford---------------------------------------- 3f479cec3SAdam Ford 4f479cec3SAdam FordThis file contains information for the port of U-Boot to the Logic PD Development kit. 5f479cec3SAdam Ford 6f479cec3SAdam FordLogic PD has an i.MX6 System On Module (SOM) and a correspondong development 7f479cec3SAdam Fordboard. SOM has a built-in microSD socket, DDR and NAND flash. The development kit has 8f479cec3SAdam Fordan SMSC Ethernet PHY, serial debug port and a variety of peripherals. 9f479cec3SAdam Ford 10f479cec3SAdam FordOn the intial release, the SOM came with either an i.MX6D or i.MX6Q. 11f479cec3SAdam Ford 12f479cec3SAdam FordFor more details about Logic PD i.MX6 Development kit, visit: 13f479cec3SAdam Fordhttps://www.logicpd.com/ 14f479cec3SAdam Ford 15f479cec3SAdam FordBuilding U-Boot for Logic PD Development Kit 16f479cec3SAdam Ford-------------------------------------------- 17f479cec3SAdam FordTo build U-Boot for the Dual and Quad variants: 18f479cec3SAdam Ford 19f479cec3SAdam Ford make imx6q_logic_defconfig 20f479cec3SAdam Ford make u-boot.imx ARCH=arm CROSS_COMPILE=arm-linux- 21f479cec3SAdam Ford 22f479cec3SAdam Ford 23f479cec3SAdam FordFlashing U-Boot into the SD card 24f479cec3SAdam Ford-------------------------------- 25*6d69e535SAdam FordU-Boot is now building with SPL enabled which means there are two files to 26*6d69e535SAdam Fordload into the SD card. Make sure the card is formatted with at least two 27*6d69e535SAdam Fordpartitions with the first partition being FAT32. First copy u-boot-dtb.img 28*6d69e535SAdam Fordto the first partition then burn SPL to the SD card with dd. 29*6d69e535SAdam FordThe SPL portion is programmed into a certain location for use by the internal 30*6d69e535SAdam FordbootROM and it cannot be changed. The following instructions assume the SD 31*6d69e535SAdam Fordcard is located as /dev/sdb. 32f479cec3SAdam Ford 33*6d69e535SAdam Ford cp u-boot-dtb.img /dev/media/logic/boot 34*6d69e535SAdam Ford sudo dd if=SPL of=/dev/sdb bs=1k seek=1 oflag=sync status=none && sync 35*6d69e535SAdam Ford 36f479cec3SAdam Ford 37f479cec3SAdam FordFlashing U-Boot into NAND 38f479cec3SAdam Ford------------------------- 39f479cec3SAdam FordOnce in Linux with MTD support for the NAND on /dev/mtd0, program U-Boot with the following: 40f479cec3SAdam Fordwith: 41f479cec3SAdam Ford 42f479cec3SAdam Ford kobs-ng init -v -x u-boot-dtb.imx 43f479cec3SAdam Ford 44*6d69e535SAdam Ford 45*6d69e535SAdam FordUsing Falcon Mode 46*6d69e535SAdam Ford----------------- 47*6d69e535SAdam FordWith Falcon Mode enabled, U-Boot can be bypassed by having SPL directly load 48*6d69e535SAdam Fordthe kernel. The device tree, Kernel and boot args must first be configured, 49*6d69e535SAdam Fordand stored to a file on the micro SD card called 'args' 50*6d69e535SAdam FordThe kernel uImage is built with LOAD_ADDR=0x12000000 and the device tree is 51*6d69e535SAdam Fordassummed to be imx6q-logicpd.dtb. 52*6d69e535SAdam Ford 53*6d69e535SAdam FordBy default the mmcroot is set to the baseboard. 54*6d69e535SAdam Ford 55*6d69e535SAdam Ford # Establish bootargs 56*6d69e535SAdam Ford run mmcargs 57*6d69e535SAdam Ford 58*6d69e535SAdam Ford # Load Linux Kernel uImage 59*6d69e535SAdam Ford fatload mmc 1 $loadaddr uImage 60*6d69e535SAdam Ford 61*6d69e535SAdam Ford # Load Device Tree 62*6d69e535SAdam Ford run loadfdt 63*6d69e535SAdam Ford 64*6d69e535SAdam Ford # Setup the blob that will get passed to the kernel 65*6d69e535SAdam Ford spl export fdt ${loadaddr} - ${fdt_addr_r} 66*6d69e535SAdam Ford 67*6d69e535SAdam Ford # Note the starting and ending address of the updated device tree. 68*6d69e535SAdam Ford # for this example: 69*6d69e535SAdam Ford # Loading Device Tree to 1ffdf000, end 1fff038b ... OK 70*6d69e535SAdam Ford # Notice that 0x1fff038b - 1ffdf000 = 0x1138b 71*6d69e535SAdam Ford # now Add 1, so the length is 0x1138c. 72*6d69e535SAdam Ford 73*6d69e535SAdam Ford fatwrite mmc 1 0x1ffdf000 args 0x1138c 74*6d69e535SAdam Ford 75*6d69e535SAdam Ford # Reset the board and it will bypass U-Boot and SPL will directly boot 76*6d69e535SAdam Ford # the uImage 77*6d69e535SAdam Ford 78*6d69e535SAdam FordTo interrupt the boot sequence and force U-Boot to load, hold the 'c' button 79*6d69e535SAdam Fordwhile starting. 80*6d69e535SAdam Ford 81f479cec3SAdam FordAdditional Support Documentation can be found at: 82f479cec3SAdam Fordhttps://support.logicpd.com/ 83f479cec3SAdam Ford 84