...
To build Embedian’s SMARC-FiMX6 u-boot and linux kernel, you will need to install the Linaro arm compiler that is the same as that we build for SMARC-T335X:
For u-boot 2014.04, and Linux 3.14
Info | ||
---|---|---|
| ||
$ sudo tar -C /opt -xJf gcc-linaro-arm-linux-gnueabihf-4.7-2013.04-20130415_linux.tar.xz $ export CC=/opt/gcc-linaro-arm-linux-gnueabihf-4.7-2013.04-20130415_linux/bin/arm-linux-gnueabihf- |
For u-boot 2015.04 and Linux 4.1.15, you need to use the following newer Linaro arm compilier.
Info | ||
---|---|---|
| ||
$ sudo tar -C /opt -xJf gcc-linaro-4.9-2015.05-x86_64_arm-linux-gnueabihf.tar.xz $ export CC=/opt/gcc-linaro-4.9-2015.05-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf- |
Test:
If this test fails, verify that you have the 32bit libraries installed on your development system.
...
Clone the U-Boot source code from Embedian Git Server.
Download:
For u-boot v2014.04:
Info | ||
---|---|---|
| ||
$ git clone git@git.embedian.com:developer/smarc-t335x-uboot.git smarcfimx6-uboot $ cd smarcfimx6-uboot $ git checkout smarc-imx_v2014.04_3.14.28_1.0.0_ga |
...
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. |
For u-boot v2015.04:
Info | ||
---|---|---|
| ||
$ git clone git@git.embedian.com:developer/smarc-t335x-uboot.git smarcfimx6-uboot $ cd smarcfimx6-uboot $ git checkout smarc-imx_v2015.04_4.1.15_1.0.0_ga |
Configure and Build:
Info | ||
---|---|---|
| ||
$ make ARCH=arm CROSS_COMPILE=${CC} distclean $ make ARCH=arm CROSS_COMPILE=${CC} smarcfimx6_quad_1g_ser3_defconfig $ make ARCH=arm CROSS_COMPILE=${CC} |
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 | ||
---|---|---|
| ||
$ git clone git@git.embedian.com:developer/smarc-fsl-linux-kernel.git $ cd smarc-fsl-linux-kernel $ git checkout smarc-imx_3.14.28_1.0.0_ga |
For 4.1.15 (Based on Freescale imx_4.1.15_1.0.0_ga official release):
Info | ||
---|---|---|
| ||
$ git clone git@git.embedian.com:developer/smarc-fsl-linux-kernel.git $ cd smarc-fsl-linux-kernel $ git checkout smarc-imx_4.1.15_1.0.0_ga |
Configure and Build:
Configure and Build:
Info | ||
---|---|---|
| ||
$ make ARCH=arm CROSS_COMPILE=${CC} distclean $ make ARCH=arm CROSS_COMPILE=${CC} smarcfimx6_defconfig $ make ARCH=arm CROSS_COMPILE=${CC} zImage modules imx6q-smarcfimx6.dtb imx6dl-smarcfimx6.dtb |
...
Unmount eMMC:
Info | ||
---|---|---|
| ||
$ sync $ sudo umount /media/boot $ sudo umount /media/rootfs |
Switch your Boot Select to eMMC and you will be able to boot up from eMMC now.
version 1.0a, 3/23/2015
Last updated 20152016-0604-1108