First thing first, I flashed images from Linux.zip under windows onto the eMMC of RiotBoard and then proceeded to build kernel on RiotBoard. By default, the oneiric rootfs contains toolchain for building the kernel. The only thing missing is the mkimage utility to obatin uImage. I have attached the mkimage executable below. Place this in "/usr/bin/".

 

Grab a copy of Linux kernel. I obtained one from embest. I used "embest_imx_3.0.35_4.0.0" branch.

 

git clone git://github.com/embest-tech/linux-imx.git -b embest_imx_3.0.35_4.0.0



 

Open Makefile and then modify CROSS_COMPILE (~line no. 196) to contain nothing

 

CROSS_COMPILE    ?=


 

Configure the kernel for RiotBoard by,

 

make imx6_defconfig


 

Build kernel sources by running

 

make uImage


 

After half an hour or so, following output can be seen on console

 

  LD  arch/arm/boot/compressed/vmlinux

  OBJCOPY arch/arm/boot/zImage

  Kernel: arch/arm/boot/zImage is ready

  UIMAGE  arch/arm/boot/uImage

Image Name:   Linux-3.0.35

Created:  Sun Oct  1 00:00:49 2017

Image Type:   ARM Linux Kernel Image (uncompressed)

Data Size:3908484 Bytes = 3816.88 kB = 3.73 MB

Load Address: 10008000

Entry Point:  10008000

  Image arch/arm/boot/uImage is ready

 

Next task is to flash the freshly built uImage. This can be done by issuing following command

 

dd if=uImage of=/dev/mmcblk0 bs=1M seek=1 conv=fsync


 

Reboot the RiotBoard and see the new kernel boot!!!