12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- U-Boot for LogicPD i.MX6 Development Kit
- ----------------------------------------
- This file contains information for the port of U-Boot to the Logic PD Development kit.
- Logic PD has an i.MX6 System On Module (SOM) and a correspondong development
- board. SOM has a built-in microSD socket, DDR and NAND flash. The development kit has
- an SMSC Ethernet PHY, serial debug port and a variety of peripherals.
- On the intial release, the SOM came with either an i.MX6D or i.MX6Q.
- For more details about Logic PD i.MX6 Development kit, visit:
- https://www.logicpd.com/
- Building U-Boot for Logic PD Development Kit
- --------------------------------------------
- To build U-Boot for the Dual and Quad variants:
- make imx6q_logic_defconfig
- make u-boot.imx CROSS_COMPILE=arm-linux-
- Flashing U-Boot into the SD card
- --------------------------------
- U-Boot is now building with SPL enabled which means there are two files to
- load into the SD card. Make sure the card is formatted with at least two
- partitions with the first partition being FAT32. First copy u-boot-dtb.img
- to the first partition then burn SPL to the SD card with dd.
- The SPL portion is programmed into a certain location for use by the internal
- bootROM and it cannot be changed. The following instructions assume the SD
- card is located as /dev/sdb.
- cp u-boot-dtb.img /dev/media/logic/boot
- sudo dd if=SPL of=/dev/sdb bs=1k seek=1 oflag=sync status=none && sync
- Flashing U-Boot into NAND
- -------------------------
- Once in Linux with MTD support for the NAND on /dev/mtd0, program U-Boot with the following:
- with:
- kobs-ng init -v -x u-boot-dtb.imx
- Using Falcon Mode
- -----------------
- With Falcon Mode enabled, U-Boot can be bypassed by having SPL directly load
- the kernel. The device tree, Kernel and boot args must first be configured,
- and stored to a file on the micro SD card called 'args'
- The kernel uImage is built with LOAD_ADDR=0x12000000 and the device tree is
- assummed to be imx6q-logicpd.dtb.
- By default the mmcroot is set to the baseboard.
- # Establish bootargs
- run mmcargs
- # Load Linux Kernel uImage
- fatload mmc 1 $loadaddr uImage
- # Load Device Tree
- run loadfdt
- # Setup the blob that will get passed to the kernel
- spl export fdt ${loadaddr} - ${fdt_addr_r}
- # Note the starting and ending address of the updated device tree.
- # for this example:
- # Loading Device Tree to 1ffdf000, end 1fff038b ... OK
- # Notice that 0x1fff038b - 1ffdf000 = 0x1138b
- # now Add 1, so the length is 0x1138c.
- fatwrite mmc 1 0x1ffdf000 args 0x1138c
- # Reset the board and it will bypass U-Boot and SPL will directly boot
- # the uImage
- To interrupt the boot sequence and force U-Boot to load, hold the 'c' button
- while starting.
- Additional Support Documentation can be found at:
- https://support.logicpd.com/
|