mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-08-31 14:28:52 +09:00
![Tom Rini](/assets/img/avatar_default.png)
When building U-Boot we select the architecture via Kconfig and not ARCH being passed in via the environment or make cmdline. Cc: Adam Ford <aford173@gmail.com> Cc: Vanessa Maegima <vanessa.maegima@nxp.com> Cc: Otavio Salvador <otavio@ossystems.com.br> Cc: Igor Opaniuk <igor.opaniuk@toradex.com> Cc: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> Signed-off-by: Tom Rini <trini@konsulko.com>
84 lines
2.7 KiB
Plaintext
84 lines
2.7 KiB
Plaintext
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/
|
|
|