This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Keystone2 MCSDK kernel configuration using arargo/yocto



How is one supposed to make kernel configuration changes for the Keystone 2 using MCSDK (currently using version 3) and the arago/yocto process. The process of installing and building using yocto is well described here:

http://processors.wiki.ti.com/index.php/MCSDK_UG_Chapter_Exploring#Yocto

and that all worked for me. I even discovered how to configure busybox using "bitbake busybox -c menuconfig" (it worked, but was that the intention?)

But I can't determine how to configure the kernel via yocto. After a bit a of a struggle, I finally located the kernel build directory (I think):

/mcsdk/build/arago-tmp-external-linaro-toolchain/work/keystone_evm-oe-linux-gnueabi/linux-keystone-3.10-r6a/git

and I can run "make menuconfig" there, but is that what is intended? If so, will the yocto/bitbake system understand what I have done and rebuild everything? When I did this, the kernel did not get rebuilt.

If I am missing some fundamental piece of documentation that might contain this information, please let me know.

Thanks,

Lance

  • Hi Lance,

    In order to build the kernel via yocto system, you should need to know about the bitbake and open embedded build system. I am not an expert but i can give you a clue about this.

    For example, if the ../mcsdk/sources/meta-ti/recipes-kernel/linux/linux-keystone_3.10.bb is used for kernel building then corresponding defconfig file should be available in ../mcsdk/sources/meta-ti/recipes-kernel/linux/linux-keystone-3.10/ directory.

    Most of the linux build recipe uses as above, but you shall read bitbake(bb) files to know from where/which defconfig file is used by yocto to build linux kernel.

    Also bitbake user guide. I hope this helps.

    Thanks.

  • Rajasekaran,

    I have read much of the bitbake, yocto and arago documentation and tutorials, but it seems that there is a gap in connecting all of that together. And all these things evolve at such a rate that it is difficult to determine what information is still relevant.

    I have determined a way to configure the kernel, but it seems like such a hack that I have trouble believing that it was the intended approach. Hunting down the kernel build directory, running "make menuconfig," then forcing a compile/deploy operation in yocto seems like such a kluge that I must be missing something.

    I recognize that you cannot be an expert in everything and I appreciate your help.  Do you know any arago/yocto experts who could identify specific relevant documentation?

    Thanks,

    Lance

  • Hi Lance,

    Lance: said:

    Do you know any arago/yocto experts who could identify specific relevant documentation?

    I will work with our team on this. As of now, I will try to help you as much as possible.

    Lance: said:

    mcsdk/build/arago-tmp-external-linaro-toolchain/work/keystone_evm-oe-linux-gnueabi/linux-keystone-3.10-r6a/git

    and I can run "make menuconfig" there, but is that what is intended? If so, will the yocto/bitbake system understand what I have done and rebuild everything? When I did this, the kernel did not get rebuilt.

    When you do "make menuconfig" in kernel directory, ".config" file will be updated in linux root source directory. Please copy that ".config" file to ../mcsdk/sources/meta-ti/recipes-kernel/linux/linux-keystone-3.10/ and rename as defconfig. 

    Then start the yocto build, that will build the kernel with the changes. 

    In Other way:

    1. If you would like to update the kernel source, you shall clone git from below link and update as required.

    http://git.ti.com/keystone-linux

    2. After the modification, update SRC-URI macro to point it to the latest source in bitbake files.

    3. Build the changes.

  • Rajasekaran,


    Thank you again for help. This is not an urgent matter at this point since I am relatively early in my development. Eventually it will become more important and maybe the documentation will catch up with it by then.

    In the meantime, I appreciate your looking for another expert.

    Thanks,

    Lance

  • Hi Lance,

    Sure. You shall close this thread(by verifying the answer), if you do not have any follow up question. 

    Thanks.