The latest i.MX28 BSP provided by Freescale (10.12) is based on a 2.6.35 kernel.
If you want to use the latest and greatest kernel version from kernel.org, follow the steps below.
1. Get the mainline kernel:
git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git(this is only done once)
git checkout -b yourlocalbranch origin/master
2. Export the toolchain
PATH=/opt/freescale/usr/local/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/bin/:$PATH export PATH export CROSS_COMPILE=arm-none-linux-gnueabi- export ARCH=arm
3. Build the kernel
make mxs_defconfig
make uImage
sudo cp arch/arm/boot/uImage /tftpboot
(In this example /tftpboot is the directory used to send files via TFTP)
4. Kernel command line:
On U-boot change the following parameter of the kernel command line:
console=ttyAM0,115200
to
console=ttyAMA0,115200
5. On LTIB
You can still use LTIB to provide the root file system.
./ltib -c
Target System Configuration
Options ---->
Unselect
[] boot up with tty and login
If this option is selected the serial port will fail to open as it still uses ttyAM0 instead of ttyAMA0.
6. Boot the kernel via TFTP and mount the rootfs via NFS.