Compiling Linux kernel
Used versions
- Ubuntu 10.04 i386 (VMware Virtual Machine)
- ELDK 4.2
Preparation
Install the git source code management system.
user@ubuntu:~$ sudo apt-get install git-core stgit uboot-mkimage
Create a directory for the Linux source code:
tq@ubuntu:~$ mkdir ~/src tq@ubuntu:~$ cd ~/src
Get source code
The current BSP (October 2011) is based on the 2.6.39 kernel of Denx software engineering. The base version of this source code you get from the Git server http://git.denx.de.
tq@ubuntu:~/src$ git clone http://git.denx.de/linux-denx.git tq@ubuntu:~/src$ cd linux-denx
Create local branch named p2020 with the source code of version DENX-v2.6.39:
tq@ubuntu:~/src/linux-denx$ git checkout -b p2020 DENX-v2.6.39
Patch sources
Unpack the archive with the patches into a local folder e.g. to ~/src/BSP/Linux/patches
.
The directory containing the patches is on the included DVD, and on the TQ product page.
The patches are now applied to the kernel sources:
tq@ubuntu:~/src/linux-denx$ stg init tq@ubuntu:~/src/linux-denx$ stg import -t -s ~/src/BSP/Linux/patches/series
Build kernel
If the ELDK has been configured according to the instructions the cross compilation toolchain is ready to compile the kernel.
Configure and build:
tq@ubuntu:~/src/linux-denx$ make 85xx/tqmp2020_defconfig tq@ubuntu:~/src/linux-denx$ make uImage
If the following error occurs when configuring the kernel source code:
*** Can't find default configuration "arch/x86/configs/85xx/tqmp2020_defconfig"!
then the environment is not configured correctly. For more information see section Installation of the ELDK Toolchain.
Download kernel via TFTP
To load the kernel uImage
in the directory arch/powerpc/boot
, it has to be copied to the TFTP root directory. Depending on the configuration of the TFTP server it is e.g. /tftpboot
. Starting from the source directory the uImage
is copied to the /tftpboot
directory with the following command.
tq@ubuntu:~/src/linux-denx$ cp arch/powerpc/boot/uImage /tftpboot