[yocto] Building linux-yocto kernel in own bsp layer

Martin Ertsaas martiert at gmail.com
Sun Aug 4 23:25:12 PDT 2013


Sure. The BSP layer in question can be cloned from:
git at github.com:martiert/meta-omap.git


On 08/05/13 05:03, Bruce Ashfield wrote:
> On 13-08-04 5:23 PM, martiert at gmail.com wrote:
>>
>>
>> On 31. juli 2013, at 14:42, Bruce Ashfield <bruce.ashfield at gmail.com>
>> wrote:
>>
>>> On Wed, Jul 31, 2013 at 6:57 AM, Martin Ertsaas <martiert at gmail.com>
>>> wrote:
>>>> On 07/31/13 10:57, Andrea Adami wrote:
>>>>> On Wed, Jul 31, 2013 at 9:21 AM, Martin Ertsaas
>>>>> <martiert at gmail.com> wrote:
>>>>>> Hi.
>>>>>>
>>>>>> I'm creating my own bsp layer for omap4 chips (Yes, I know of
>>>>>> meta-ti,
>>>>>> but I want to learn how to do this myself :)). I'm trying to use the
>>>>>> linux-yocto 3.4 kernel,
>>>>>> and have gotten it to work locally. I then made a
>>>>>> linux-yocto_3.4.bbappend which contains the following:
>>>>>>
>>>>>> COMPATIBLE_MACHINE_pandaboard = "pandaboard"
>>>>>>
>>>>>> SRCREV_machine_pandaboard ?=
>>>>>> "7eb5fbf903d9db90c3cf371b65e1f2a68d5676d7"
>>>>>>
>>>>>> THISDIR := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}"
>>>>>> FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}-3.4"
>>>>
>>>> The defconfig is found. I can see a defconfig in ${WORKDIR} with zero
>>>> diff to my defconfig. It is, however, not copied from there into
>>>> ${WORKDIR}/linux.
>>>
>>> If you are looking in ${WORKDIR}/linux, you'll never see the
>>> defconfig. Even
>>> in the base kernel class it is copied to the build directory, which is
>>> linux-$MACHINE-build.
>>>
>>> Even after the copy, it is pulled into a secondary set of
>>> configuration steps that
>>> allow configuration fragments to be processed and layered on top of
>>> that baseline
>>> configuration.
>>>
>>> Are you determining that it isn't being used by the existence or non
>>> existence of a
>>> file, or are you seeing other issues with the resulting .config ?
>>
>> What I see is that I have a ${WORKDIR}/defconfig. The .config in
>> linux-${MACHINE}-build is for a different architecture (x86) than my
>> defconfig, the same holds for the .config.old in the same place.
>> Tried adding B=${WORKDIR}/linux-${MACHINE}-build to my append, but no
>> difference.
> Can you make your BSP layer available to me ? I need to see this
> happening on my machines, since all my tests worked here :(
>
> B=${WORKDIR}/linux-${MACHINE}-build would already be set by the
> base classes, so I wouldn't have expected it to make much of a
> difference.
>
> Bruce
>
>>>
>>> Technically you don't even need a defconfig, you can just use a .cfg
>>> with h/w options
>>> for the board, but that's a different topic.
>>>
>>> Cheers,
>>>
>>> Bruce
>>>
>>>>
>>>> I changed it so it uses the colon though, and removed THISDIR as
>>>> suggested by Paul, but didn't help. I still don't get the config
>>>> copied
>>>> in, and if I add the do_configure_prepend myself to do this, I get a
>>>> message from the kernel building saying my folder is unclean.
>>>>
>>>> - Martin
>>>>
>>>>> Martin,
>>>>>
>>>>> the code in kernel.bbclass does already copy defonfig to .config, see
>>>>> http://cgit.openembedded.org/openembedded-core/tree/meta/classes/kernel.bbclass#n216
>>>>>
>>>>>
>>>>> I think your problem is the deconfig is not found,  you miss a
>>>>> colon at the end.
>>>>> Use something like
>>>>>
>>>>> FILESEXTRAPATHS_prepend :=
>>>>> "${THISDIR}/${PN}-3.4:${THISDIR}/${PN}:${THISDIR}/files:"
>>>>>
>>>>> Cheers
>>>>>
>>>>> Andrea
>>>>>
>>>>>
>>>>>> SRC_URI += "file://defconfig"
>>>>>>
>>>>>> do_configure_prepend() {
>>>>>>         cp ${WORKDIR}/defconfig ${S}/.config
>>>>>> }
>>>>>>
>>>>>> Problem I get is, without this configure_prepend, my defconfig is
>>>>>> not
>>>>>> copied into .config the kernel folder. With this however, I get a
>>>>>> complaint from the kernel that the kernel directory is not clean
>>>>>> and I
>>>>>> have to run make mrproper.
>>>>>>
>>>>>> I would greatly appreciate any pointer/help/explanations as to
>>>>>> what I
>>>>>> have done wrong here, and how to fix it. Have been struggling for
>>>>>> this
>>>>>> for a while now, and have no idea what I have done wrong.
>>>>>>
>>>>>> Best regards
>>>>>> Martin Ertsaas
>>>>>> _______________________________________________
>>>>>> yocto mailing list
>>>>>> yocto at yoctoproject.org
>>>>>> https://lists.yoctoproject.org/listinfo/yocto
>>>>
>>>> _______________________________________________
>>>> yocto mailing list
>>>> yocto at yoctoproject.org
>>>> https://lists.yoctoproject.org/listinfo/yocto
>>>
>>>
>>>
>>> -- 
>>> "Thou shalt not follow the NULL pointer, for chaos and madness await
>>> thee at its end"
>> _______________________________________________
>> yocto mailing list
>> yocto at yoctoproject.org
>> https://lists.yoctoproject.org/listinfo/yocto
>>
>




More information about the yocto mailing list