Building Linux kernel (XUELK)

From DAVE Developer's Wiki
Jump to: navigation, search
Info Box
AXEL ULite-top.png Applies to AXEL ULite
SBC Lynx-top.png Applies to SBC Lynx

History

Version Date XUELK version Notes

1.0.0

August 2016 XUELK 1.0.0

1.1.3

March 2017 XUELK 1.1.3
1.2.0 May 2017 XUELK 1.2.0 Update for new XUELK release

Quick reference

Repository Information
URL git@git.dave.eu:lynx/linux-2.6-imx.git
stable branch lynx
stable tag xuelk-1.2.1
Build Information
defconfig imx_v7_lynx_defconfig
Kernel binary UIMAGE_LOADADDR=0x80008000 uImage
Device trees Platform SOM ConfigID CB ConfigID DTB
SBC Lynx 0x00000008 0x0000000E imx6ul-lynx.dtb
SBC Lynx 0x0000000C N/A imx6ul-lynx-som000c.dtb
SBC Lynx 0x00000013 0x0000002D
0x0000002E
0x0000002F
0x00000030
imx6ul-lynx-som0013-cb002d.dtb
imx6ul-lynx-som0013-cb002e.dtb
imx6ul-lynx-som0013-cb002f.dtb
imx6ul-lynx-som0013-cb0030.dtb
Axel ULite 0x0000000B
0x00000014
0x00000010 imx6ul-axelulite-cb0010.dtb

Detailed Instructions

It is assumed that the development environment has been set up properly as described here.

  • start the Linux development VM and login into the system
  • open a terminal window and cd into Linux kernel source code
cd lynx/linux/
  • in case of needs you can update your local repository with the following git command
git pull
  • configure the build environment
source ~/env.sh


  • to build the binaries run the following commands:
make imx_v7_lynx_defconfig
make UIMAGE_LOADADDR=0x80008000 uImage imx6ul-lynx-som000c.dtb imx6ul-lynx-som0013-cb002f.dtb imx6ul-axelulite-cb0010.dtb
The former command selects the default XUELK configuration, while the latter builds the kernel binary image with the required u-boot header and the kernel device tree.

Default Linux kernel configuration can be changed by using the standard menuconfig, xconfig, or gconfig make target. Subsequent builds just require uImage make target to update the binary image. Once the build process is complete, the kernel binary image is stored into the arch/arm/boot/uImage file. Both this file and the kernel device tree can be copied to the tftp root directory /tftpboot/lynx/ with the following commands:

cp arch/arm/boot/uImage /tftpboot/lynx/
cp arch/arm/boot/dts/*.dtb /tftpboot/lynx/