# MX-KERNEL =# Requirements =============== 1. cross compiler -> MX-CCOMPILER =# Setup environment ==================== export modulen=vmx51 export kernelversion=linux-2.6-imx export patchversion=diff1 =# Setup compiler ================= export PATH="/usr/local/armv7a/arm/bin:$PATH" export CLFS_TARGET=arm-angstrom-linux-gnueabi =# Get the sources ================== cd mkdir -pv workdir/imx51/kernel cd workdir/imx51/kernel/ git clone http://opensource.freescale.com/pub/scm/imx/linux-2.6-imx.git wget http://www.voipac.com/downloads/imx/51/src/kernel/${kernelversion}-${modulen}-${patchversion}.txt =# Prepare the sources ====================== cd cd workdir/imx51/kernel/ cd ${kernelversion} #git branch -r git checkout -b localbranch origin/imx_2.6.35_11.05.01 patch -p1 < ../${kernelversion}-${modulen}-${patchversion}.txt =# Configure and Compile ======================== cd cd workdir/imx51/kernel/${kernelversion} # Clean the working direcotry make CROSS_COMPILE=arm-angstrom-linux-gnueabi- ARCH=arm distclean make CROSS_COMPILE=arm-angstrom-linux-gnueabi- ARCH=arm mrproper # Configure kernel make CROSS_COMPILE=arm-angstrom-linux-gnueabi- ARCH=arm vmx51_defconfig #make CROSS_COMPILE=arm-angstrom-linux-gnueabi- ARCH=arm menuconfig # Compile the kernel make -j4 CROSS_COMPILE=arm-angstrom-linux-gnueabi- ARCH=arm zImage #make -j4 CROSS_COMPILE=arm-angstrom-linux-gnueabi- ARCH=arm zImage modules #make -j4 CROSS_COMPILE=arm-angstrom-linux-gnueabi- ARCH=arm uImage modules #mkimage -A arm -O linux -T kernel -C none -a 0x90008000 -e 0x90008000 -n "Android Linux Kernel" -d ./arch/arm/boot/zImage ./arch/arm/boot/uImage #make CROSS_COMPILE=arm-none-linux-gnueabi- ARCH=arm INSTALL_MOD_PATH= modules_install =# Install kernel (./arch/arm/boot/zImage) ================= cd cd workdir/imx51/kernel/${kernelversion} cp arch/arm/boot/zImage /tftpboot/vmx51/zImage-k35