[poky] kernel versions

Gary Thomas gary at mlbassoc.com
Wed Feb 23 07:20:17 PST 2011


On 02/21/2011 04:16 PM, Richard Purdie wrote:
> On Mon, 2011-02-21 at 11:31 -0700, Gary Thomas wrote:
>> On 02/21/2011 10:41 AM, Richard Purdie wrote:
>>> On Mon, 2011-02-21 at 08:52 -0700, Gary Thomas wrote:
>>>> I have my own kernel recipes (historical reasons...) which I
>>>> now have 2 versions of.  Some platforms have not yet been
>>>> ported to the latest version and I need to keep using the
>>>> older one for those platforms until the porting is complete.
>>>>
>>>> Sadly, I can't get this to work.
>>>>
>>>> Here's what I have
>>>>      $ tree meta-amltd/packages/linux/
>>>>        meta-amltd/packages/linux/
>>>>        ├── linux-am_2.6.32.bb
>>>>        ├── linux-am_2.6.37.bb
>>>>
>>>>      $ tree meta-cobra3530p60/packages/linux/
>>>>        meta-cobra3530p60/packages/linux/
>>>>        ├── linux-am-2.6.32
>>>>        │   └── cobra3530p60
>>>>        │       ├── cobra3530p60.patch
>>>>        │       └── defconfig
>>>>        ├── linux-am_2.6.32.bbappend
>>>>
>>>> I tried these settings in my machine/cobra3530p60
>>>>      PREFERRED_PROVIDER_virtual/kernel = "linux-am"
>>>>      PREFERRED_VERSION_virtual/kernel = "2.6.32"
>>>>
>>>> However, it still wants to build version 2.6.37
>>>>
>>>> What am I missing?  How can I force it to use the 2.6.32 version
>>>> for this machine?
>>>
>>> PREFERRED_VERSION_linux-am = "2.6.32"
>>
>> That does seem to work, but only if I put it in the<MACHINE>.conf
>> file, not local.conf.
>>
>> Why specify it one way (PREFERRED_PROVIDER_virtual/kernel) for the provider
>> (recipe basis) and then a different way (PREFERRED_VERSION_linux-am) for
>> the actual version?
>
> Each recipe has a list of things it provides. This is usually PN but in
> the kernel case each recipe provides "virtual/kernel" so we can group
> them and make a selection with PREFERRED_PROVIDER.
>
> Bitbake first determines the provider. Once it has this it looks up the
> version. It looks this up using PN and not using what could be an
> arbitrary list of items in PROVIDES.
>
> Summary, you always use PN with PREFERRED_VERSION as that is what makes
> sense in the general case.

Understood.  Thanks for the explanation.

> It should however work to put this in local.conf unless you're setting
> it with an = and not a ?= somewhere else?

I'm not sure what happened there - this was the real crux of my question
as earlier I had tried an override with PREFERRED_VERSION_linux-am in
local.conf and it ignored me.  I can't duplicate that problem now.

-- 
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------



More information about the poky mailing list