1 How to use and build U-Boot on mx6sabresd:
2 ----------------------------------
4 Currently there are three methods for booting mx6sabresd boards:
6 1. Booting via Normal U-Boot (u-boot.imx)
8 2. Booting via SPL (SPL and u-boot.img)
10 3. Booting via Falcon mode (SPL launches the kernel directly)
13 1. Booting via Normal U-Boot
14 ----------------------------
16 $ make mx6qsabresd_defconfig (If you want to build for mx6qsabresd)
20 $ make mx6dlsabresd_defconfig (If you want to build for mx6dlsabresd)
24 This will generate the image called u-boot.imx.
26 - Flash the u-boot.imx binary into the SD card:
28 $ sudo dd if=u-boot.imx of=/dev/sdb bs=1K seek=1 && sync
34 Other method for building U-Boot on mx6qsabresd and mx6qpsabresd is
35 through SPL. In order to do so:
37 $ make mx6sabresd_spl_defconfig
40 This will generate the SPL image called SPL and the u-boot.img.
42 - Flash the SPL image into the SD card:
44 $ sudo dd if=SPL of=/dev/sdb bs=1K seek=1 && sync
46 - Flash the u-boot.img image into the SD card:
48 $ sudo dd if=u-boot.img of=/dev/sdbbs=1K seek=69 && sync
51 3. Booting via Falcon mode
52 --------------------------
54 $ make mx6sabresd_spl_defconfig
57 This will generate the SPL image called SPL and the u-boot.img.
59 - Flash the SPL image into the SD card:
61 $ sudo dd if=SPL of=/dev/sdb bs=1K seek=1 oflag=sync status=none && sync
63 - Flash the u-boot.img image into the SD card:
65 $ sudo dd if=u-boot.img of=/dev/sdbbs=1K seek=69 oflag=sync status=none && sync
67 Create a partition for root file system and extract it there:
69 $ sudo tar xvf rootfs.tar.gz -C /media/root
71 The SD card must have enough space for raw "args" and "kernel".
72 To configure Falcon mode for the first time, on U-Boot do the following commands:
74 - Setup the IP server:
76 # setenv serverip <server_ip_address>
80 # dhcp ${fdt_addr} imx6q-sabresd.dtb
82 - Download kernel image:
84 # dhcp ${loadaddr} uImage
86 - Write kernel at 2MB offset:
88 # mmc write ${loadaddr} 0x1000 0x4000
90 - Setup kernel bootargs:
92 # setenv bootargs "console=ttymxc0,115200 root=/dev/mmcblk1p1 rootfstype=ext4 rootwait quiet rw"
96 # spl export fdt ${loadaddr} - ${fdt_addr}
98 - Write args 1MB data (0x800 sectors) to 1MB offset (0x800 sectors)
100 # mmc write 18000000 0x800 0x800
102 - Press KEY_VOL_UP key, power up the board and then SPL binary will
103 launch the kernel directly.