[poky] kernel versions

Richard Purdie richard.purdie at linuxfoundation.org
Mon Feb 21 15:16:34 PST 2011


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.

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

Cheers,

Richard





More information about the poky mailing list