VAR-SOM-MX6 Ubuntu Customize linux-variscite: Difference between revisions

From Variscite Wiki
Line 50: Line 50:
$ mkdir ~/var-som-mx6-yocto-fido/sources/meta-variscite-mx6/recipes-kernel/linux/linux-variscite
$ mkdir ~/var-som-mx6-yocto-fido/sources/meta-variscite-mx6/recipes-kernel/linux/linux-variscite
$ cp 0001-Custom.patch ~/var-som-mx6-yocto-fido/sources/meta-variscite-mx6/recipes-kernel/linux/linux-variscite/0001-custom.patch  
$ cp 0001-Custom.patch ~/var-som-mx6-yocto-fido/sources/meta-variscite-mx6/recipes-kernel/linux/linux-variscite/0001-custom.patch  
</pre>
= Yocto changes =
Patch in meta-variscite linux-variscite_3.14.38.bb:
<pre>
diff --git a/recipes-kernel/linux/linux-variscite_3.14.38.bb b/recipes-kernel/linux/linux-variscite_3.14.38.bb
index f58a8fd..70ddb59 100755
--- a/recipes-kernel/linux/linux-variscite_3.14.38.bb
+++ b/recipes-kernel/linux/linux-variscite_3.14.38.bb
@@ -17,10 +17,12 @@ SRCBRANCH = "imx_3.14.38_6qp_ga_var01"
LOCALVERSION = "-6QP"
SRCREV = "5b280915311efd196a81a8792e7f952172f6373c"
KERNEL_SRC ?= "git://github.com/varigit/linux-2.6-imx.git;protocol=git"
-SRC_URI = "${KERNEL_SRC};branch=${SRCBRANCH}"
+SRC_URI = "${KERNEL_SRC};branch=${SRCBRANCH} \
+          file://0001-custom.patch \
+          "
#LOCALVERSION = "-1.1.0"
-FSL_KERNEL_DEFCONFIG = "imx_v7_var_defconfig"
+FSL_KERNEL_DEFCONFIG = "imx_v7_var_custom_defconfig"
KERNEL_IMAGETYPE = "uImage"
@@ -28,14 +30,14 @@ KERNEL_EXTRA_ARGS += "LOADADDR=${UBOOT_ENTRYPOINT}"
do_configure_prepend() {
    # copy latest defconfig for imx_v7_var_defoonfig to use
-  cp ${S}/arch/arm/configs/imx_v7_var_defconfig ${B}/.config
-  cp ${S}/arch/arm/configs/imx_v7_var_defconfig ${B}/../defconfig
+  cp ${S}/arch/arm/configs/${FSL_KERNEL_DEFCONFIG} ${B}/.config
+  cp ${S}/arch/arm/configs/${FSL_KERNEL_DEFCONFIG} ${B}/../defconfig
}
# Copy the config file required by ti-compat-wirless-wl18xx
do_deploy_append () {
-  cp ${S}/arch/arm/configs/imx_v7_var_defconfig ${S}/.config
+  cp ${S}/arch/arm/configs/${FSL_KERNEL_DEFCONFIG} ${S}/.config
}
</pre>
</pre>



Revision as of 16:34, 7 January 2016

VAR-SOM-MX6 - Customize linux-variscite
Note:
Under Construction

Overview

Ubuntu Linaro Alip is pre built file system. For more information Ubuntu based Rootfs provided by Linaro. Variscite used linaro-vivid-alip-20151215-714 image added Vivante Graphic acceleration and compile the GStreamer with i.MX6 support.

Build Ubuntu Alip NFS is prerequisite step. Please make sure you run it and have a complete NFS build directory as described in the linked WIKI. Also make sure you target is booted from NFS. We deliver a complete Linux in source code adopted to our development platforms. Our customers may require additional changes. You can change and adopt the Linux kernel and/or the device tree's to your requirements.

Linux Changes

$ cd ~/var-som-mx6-alip
$ export PATH=/opt/gcc-linaro-arm-linux-gnueabihf-4.9-2014.05_linux/bin/:$PATH

Make your kernel changes and test them. Most of the changes will be in Linux kernel configuration. For example:

Add a printer gadget
$ make -j6 ARCH=arm CROSS_COMPILE=aarm-linux-gnueabihf- menuconfig

Add module.png

Changes made:

 diff .config arch/arm/configs/imx_v7_var_defconfig 
3359c3359
< CONFIG_USB_G_PRINTER=m
---
> # CONFIG_USB_G_PRINTER is not set

Create a new config file

$ cp .config arch/arm/configs/imx_v7_var_custom_defconfig 
$ git status
On branch imx_3.14.38_6qp_ga_var01
Untracked files:
  (use "git add <file>..." to include in what will be committed)

	arch/arm/configs/imx_v7_var_custom_defconfig

nothing added to commit but untracked files present (use "git add" to track)
$ git add arch/arm/configs/imx_v7_var_custom_defconfig
$ git commit -a -m "Custom"
$ git format-patch e07c324139f484b2050da7cf47ec8951b23e2679..550359cea510133050e904c8b8191587d173abc9

Copy patch file to Yocto

$ mkdir ~/var-som-mx6-yocto-fido/sources/meta-variscite-mx6/recipes-kernel/linux/linux-variscite
$ cp 0001-Custom.patch ~/var-som-mx6-yocto-fido/sources/meta-variscite-mx6/recipes-kernel/linux/linux-variscite/0001-custom.patch 

Build and run the system

On target:

root@var-som-mx6:~# find /lib/modules/ -name *.ko | grep print
/lib/modules/3.14.38-6QP+g5b28091/kernel/drivers/usb/gadget/g_printer.ko