Linux Kernel 3.14.28.y

From IGEP Community Wiki

Jump to: navigation, search

Compiler

We recommend to use IGEP i.MX6 Yocto Fido SDK to compile i.MX6 kernels

Download

IGEP i.MX6 Yocto Fido SDK

Install sdk

 sh poky-glibc-x86_64-isee-fsl-image-dev-cortexa9hf-vfp-neon-toolchain-1.8.sh

Install target into default directory (/opt/poky/1.8)

Build kernel from sources

Download the latest stable version sources and follow next steps:

For clone linux-imx/

git clone git://git.isee.biz/pub/scm/linux-imx.git
cd linux-imx
git checkout remotes/origin/isee-imx_3.14.28.y-next -b isee-imx_3.14.28.y-next.local

Export environment variables:

source /opt/poky/1.8/environment-setup-cortexa9hf-vfp-neon-poky-linux-gnueabi

Configure Linux kernel for IGEP devices. IGEP is ARM architecture based device. A generic configuration is provided for all IGEP machines, and can be used as the default by

 make ARCH=arm CROSS_COMPILE=arm-poky-linux-gnueabi- imx6_igep0046_defconfig

Then build the kernel, the kernel modules and the device tree files. The result will be an zImage file in arch/arm/boot directory. Execute:

 make ARCH=arm CROSS_COMPILE=arm-poky-linux-gnueabi- zImage modules dtbs

You can install the kernel modules to your target rootfs

 sudo make ARCH=arm CROSS_COMPILE=arm-poky-linux-gnueabi- INSTALL_MOD_PATH=[path to your target rootfs] modules_install

You can install the zImage to boot partition :

 cp arch/arm/boot/zImage [path to your target boot]

You can install the IGEP SMARC i.MX6 DTBs to boot partition. You can choose the dtb you need to your machine:

 cp arch/arm/boot/dts/imx6q-igep-base0040*.dtb  [path to your target boot]

TI Wilink8 Backports

Once you install kernel and module binaries in your rootfs You can download and compile WIFI and Bluetooth modules and applications:

Install dependencies:

 sudo apt-get install lib32z1 

Download WIFI build-utilities:

 git clone git://git.isee.biz/pub/scm/wilink8-wlan/build-utilites.git 

Mount your SD card or rootfs and configure setup-env:

cd build-utilites/ 
cp setup-env.sample setup-env  

Add SD or rootfs patch into ROOTFS environment variables and add linux-imx kernel source path into KERNEL_PATH variable

Download sources:

./build_wl18xx.sh init

Compile sources and install binaries:

./sudo_build_wl18xx.sh update R8.6_SP1 

During process appear the following error:

 ERROR  [PATH ROOTFS]/lib/modules/3.14.28-1.0.0_ga+yocto+g34048c3/updates/drivers/net/wireless/ti/wl18xx/wl18xx.ko  Not found ! 

wl18xx.ko is correctly installed. So don't take care of it. Now, your kernel has Wilink 8 support added