...
Note | ||
---|---|---|
| ||
Note1: If the board is SMARC-FiMX6-Q-2G or SMARC-FiMX6-D-2G, use If the board is SMARC-FiMX6-Q-1G or SMARC-FiMX6-D-1G, use If the board is SMARC-FiMX6-U-1G, use If the board is SMARC-FiMX6-S, use Note 2: "ser3" stands for console debug port. In this example, we uses SER3 as debug port. If user uses SER0 as your debug port, make change to "ser0" instead. Same as SER1 and SER2. Note 3: The SMARC-FiMX6 module always boot up from the onboard SPI NOR flash. The factory default will be u-boot.imx pre-installed. In some cases when the SPI NOR flash is empty or needs to be upgraded. Users can shunt crossed the TEST# to ground. In this way, the SMARC-FiMX6 module will boot up to carrier SD card, if TEST# pin is shunt crossed. The u-boot.imx image are the same, the difference is how you flash u-boot.imx. This will be explained in the "Setup SD card" section. |
...
Linux Kernel
...
Download:
For 3.14.28 (Based on Freescale imx_3.14.28_1.0.0_ga official release):
...
Info | ||
---|---|---|
| ||
$ sudo mkdir -p /media/boot/ $ sudo mkdir -p /media/rootfs/ for : DISK=/dev/mmcblk0 $ sudo mount ${DISK}p1 /media/boot/ $ sudo mount ${DISK}p2 /media/rootfs/ for : DISK=/dev/sdX $ sudo mount ${DISK} 1 /media/boot/ $ sudo mount ${DISK} 2 /media/rootfs/ |
Install Bootloader
If SPI NOR Flash is not empty
The u-boot.imx is pre-installed in SPI NOR flash at factory default. SMARC-FiMX6 is designed to always boot up from SPI NOR flash and to load zImage, device tree blob and root file systems based on the setting of BOOT_SEL. If users need to fuse their own u-boot or perform u-boot upgrade. This section will instruct you how to do that.
Copy u-boot.
...
imx to the boot partition.
Info | ||||
---|---|---|---|---|
| ||||
$ sudo cp -v u-boot.binimx /media/boot/u-boot.imx |
Fuse u-boot.imx to the SPI NOR flash.
Stop at U-Boot command prompt (Press any key when booting up).
Info | ||||
---|---|---|---|---|
| ||||
U-Boot# mmc rescan U-Boot# load mmc 0:1 0x10800400 u-boot.imx U-Boot# sf write 0x10800000 0x0 60000 |
If SPI NOR Flash is empty
In some cases, when SPI NOR flash is erased or the u-boot is under development, we need a way to boot from SD card first. Users need to shunt cross the TEST# pin to ground. In this way, SMARC-FiMX6 will always boot up from SD card.
Copy u-boot.imx to the boot partition
Info | ||||
---|---|---|---|---|
| ||||
$ sudo dd if=u-boot.imx of=${DISK} bs=512 seek=2 |
Note |
---|
|
uEnv.txt based bootscript
...
Note | ||
---|---|---|
| ||
For WVGA (800x480) LVDS panel: For XGA (1024x768) LVDS panel: For WXGA (1366x768) LVDS panel: For 1080p (1920x1080) LVDS panel: |
Install Root File System and Kernel Modules
...
Info | ||||
---|---|---|---|---|
| ||||
$ sudo make ARCH=arm INSTALL_MOD_PATH=/media/rootfs modules_install |
Note | ||
---|---|---|
| ||
|
...
Info | ||
---|---|---|
| ||
$ sudo mkdir -p /media/boot/ $ sudo mkdir -p /media/rootfs/ for : DISK=/dev/mmcblk0 $ sudo mount ${DISK}p1 /media/boot/ $ sudo mount ${DISK}p2 /media/rootfs/ for : DISK=/dev/sdX $ sudo mount ${DISK} 1 /media/boot/ $ sudo mount ${DISK} 2 /media/rootfs/ |
Changing Device descriptor from U-Boot:
There is only one line needed to be changed from original u-boot.
At include/configs/smarcfimx6.h, find
#define CONFIG_SYS_MMC_ENV_DEV
Change from "0" to "2" and make again.
(Users can also checkout the smarc-emmc-imx_3.14.28_1.0.0_ga branch from Embedian u-boot git server by the following way.
$ git checkout smarc-imx_3.14.28_1.0.0_ga
$ make ARCH=arm CROSS_COMPILE=${CC} distclean
$ make ARCH=arm CROSS_COMPILE=${CC} smarcfimx6_quad_1g_ser3_config
$ make ARCH=arm CROSS_COMPILE=${CC}
)
The new u-boot.bin will be the one for eMMC use.
Copy u-boot.bin Copy zImage to rootfs partition:
Info | ||||
---|---|---|---|---|
| ||||
$ sudo cp -v u-boot.bin //media/boot/zImage /media/rootfs/home/root |
Note | ||
---|---|---|
| ||
|
Copy zImage to rootfs partition:
Info | ||
---|---|---|
| ||
$ sudo cp -v /media/boot/zImage /media/rootfs/home/root |
Copy uEnv.txt to rootfs partition:
...
Insert this SD card into your SMARC-FiMX6 device and boot into SD card.
Now it will be almost the same as you did when setup your SD card, but the eMMC device descriptor is /dev/mmcblk3 now.
...
Install binaries for partition 1
Copy u-boot.bin/uEnv.txt/zImage/*.dtb to the boot partition
Info | ||
---|---|---|
| ||
$ sudo cp -v u-boot.bin zImage uEnv.txt /media/boot/ |
...