:(.text+0x17fc): undefined reference to `amp_power_mutex' :(.text+0x17e0): undefined reference to `imx_update_shared_mem' :(.text+0x17a8): undefined reference to `imx_sema4_mutex_unlock' :(.text+0x1780): undefined reference to `imx_sema4_mutex_lock' I have followed below steps to build the kernel:Īrch/arm/mach-imx/built-in.o: In function `clk_pllv3_do_shared_clks': I have already created images using Yocto, thus I already have kernel source available at "/tmp/work/im圆slevk-poky-linux-gnueabi/linux-imx/3.14.28-r0/git". I tried to build the kernel with the steps mentioned for 'Build kernel without BSP'. $ make modules_install INSTALL_MOD_PATH=/path_where_you_want_to_install The kernel modules must be built and installed in a known path. configĪfter step 4, only the kernel (uImage file) was generated. If you're building for i.MX8 family, configure the kernel options based on file arm64/defconfig: $ cp arch/arm/configs/ imx_v7_defconfig .config If you're building for i.MX6 and i.MX5, configure the kernel options based on file imx_v7_defconfig: Sudo apt-get install gcc-arm-linux-gnueabiĮxport CROSS_COMPILE=/usr/bin/arm-linux-gnueabi. $ export CROSS_COMPILE=/usr/bin/aarch64-linux-gnu-įor 32-bits processors (i.MX2, i.MX3, i.MX5 and i.MX6 families) Sudo apt-get install gcc-aarch64-linux-gnu IMPORTANT: Change the variables above according your installed toolchain. $ export CROSS_COMPILE=arm-none-linux-gnueabi. $ export TOOLCHAIN=/opt/freescale/usr/local/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/fsl-linaro-toolchain/ If you're using another toolchain, the common environment variables to set are the following: $ source /opt/poky/1.6+snapshot/environment-setup-cortexa9hf-vfp-neon-poky-linux-gnueabi If you're using the Yocto SDK (Check the Yocto training at NXP community: ), just execute the script to export the needed environment variables, e.g.: You can choose another one, always starting by origin/. *NOTES: On command above my local branch name is "local_branch". $ git checkout -b local_branch origin/imx_4.9.88_2.0.0_ga Make a local branch, based on a branch you choose from the list: Once downloaded, check the available branches by using: $ git clone git:///pub/scm/linux/kernel/git/stable/linux-stable.git Usually, the NXP kernel or mainline () kernel:įor Mainline kernel (more details on ) use: The uImage will be under tmp/deploy/imageĬhoose what kernel you will build. With the new defconfig saved on the correct folder (step 2), it's time to clear all previous kernel and build it again: Note that the kernel version, in this case "3.0.35-r33.10" may change.ģ - Cleaning and building again with the new configuration sources/meta-fsl-arm/recipes-kernel/linux/linux-imx-3.0.35/m圆/defconfig $ cp tmp/work/im圆qsabresd-poky-linux-gnueabi/linux-imx/3.0.35-r33.10/git/.config config generated file to defconfig as following: Make changes if needed, exit the configmenu and copy the. To call the kernel menuconfig, run the command:Ī new terminal window will open with the kernel menuconfig. If you want to build only the kernel, the following command can be used: When an image is built using Yocto (for more details about how to build an image, check the Yocto training home: ) the kernel is automatically built and the kernel image is located at /fsl-community-bsp/build/tmp/deploy/images//uImage For 32-bits processors (i.MX2, i.MX3, i.MX5 and i.MX6 families).3 - Cleaning and building again with the new configuration.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |