This is probably old-hat to most readers of this blog, but here are the steps to get and compile the latest U-Boot for i.MX6.
Don’t let the nitrogen6x reference below fool you. These work for both SABRE Lite and Nitrogen6X, since our U-Boot code base auto-detects them.
Note that these instructions don’t currently work for Solo or Dual-Lite devices. If you have one of those, you should have received separate instructions from us.
In English, these steps are:
Note that the PATH and CROSS_COMPILE variables above refer to the latest LTIB package. You’ll need to change them if you’re using a different cross-compiler.
Don’t let the nitrogen6x reference below fool you. These work for both SABRE Lite and Nitrogen6X, since our U-Boot code base auto-detects them.
Note that these instructions don’t currently work for Solo or Dual-Lite devices. If you have one of those, you should have received separate instructions from us.
~$ git clone git://github.com/boundarydevices/u-boot-imx6.git Cloning into 'u-boot-imx6'... remote: Counting objects: 98621 remote: Counting objects: 194430, done. remote: Compressing objects: 100% (37277/37277), done. remote: Total 194430 (delta 156593), reused 192232 (delta 154419) Receiving objects: 100% (194430/194430), 49.84 MiB | 1.87 MiB/s, done. Resolving deltas: 100% (156593/156593), done. ~$ cd u-boot-imx6 ~/u-boot-imx6$ git checkout origin/production -b production ~/u-boot-imx6$ export ARCH=arm ~/u-boot-imx6$ export CROSS_COMPILE=arm-none-linux-gnueabi- ~/u-boot-imx6$ make nitrogen6x_config Configuring for nitrogen6x - Board: nitrogen6x, Options: IMX_CONFIG=board/freescale/imx/ddr/mx6q_4x_mt41j128.cfg ~/u-boot-imx6$ make all Generating include/autoconf.mk ... make -C examples/api all make[1]: Entering directory `/home/ericn/u-boot-imx6/examples/api' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/home/ericn/u-boot-imx6/examples/api' ~/u-boot-imx6$ ls -l u-boot.imx -rw-rw-r-- 1 user group 312572 Nov 26 11:48 u-boot.imx
In English, these steps are:
- Clone the U-Boot sources from git://github.com/boundarydevices/u-boot-imx6.git, and
- Check out the production branch, and
- Set your PATH and CROSS_COMPILE environment variables to point at your cross compiler, and the ARCH variable to arm, and
- Choose the nitrogen6x_config configuration, and
- Compile
Note that the PATH and CROSS_COMPILE variables above refer to the latest LTIB package. You’ll need to change them if you’re using a different cross-compiler.