All of lore.kernel.org
 help / color / mirror / Atom feed
From: Darren Hart <dvhart@linux.intel.com>
To: Holger Freyther <holger@freyther.de>
Cc: poky@pokylinux.org
Subject: Re: Impressions of using Poky to create a BSP
Date: Fri, 27 May 2011 12:48:59 -0700	[thread overview]
Message-ID: <4DE0002B.2000206@linux.intel.com> (raw)
In-Reply-To: <loom.20110527T192603-897@post.gmane.org>



On 05/27/2011 10:42 AM, Holger Freyther wrote:
> Hi all,
> 
> I hope these impressions are useful. In the last two days I added a BSP for a
> TI Davinci based system and I am afraid it was a bit harder than I think it
> should be. This is a summary of the underlying issues (without them being
> debugged or completely understood).
> 
> meta-skeleton and BBFILES:
>    - Maybe it would be nice if the file glob would list *.bbappend as I think
>      many people want to use it.
> 
> BBLAYERs and dependencies:
>     - I had changed BBFILES to list *.bbappend but the change didn't take
>       effect. I had to touch conf/local.conf to force a re-parse. So somehow
>       the layers config didn't end up in dependencies.
> 
> fetch vs. fetch2:
>     - I wanted to fetch my kernel from my internal git/ssh repository. I was
>       not sure where to put the username (git://foo@bar or git://bar;user=foo)

I believe the correct options would have been:

ssh://foo@bar/path/to/repo
or
foo@bar:/path/to/repo

with protocol=git

(I haven't tested this)

>       so I was experimenting a bit. This triggered me being banned from my
>       server (fail2ban)

Ouch :(

> so the git process on the buildhost got stuck and I
>       backgrounded bitbake with CTRL+Z.
> 
>     - Then I tried bitbake -cfetch virtual/kernel again and it didn't do anything,
>       it took me a while to think that it might wait on a lock. I think it would be
>       great if this could be printed somewhere (if my understanding of this is
>       correct).
> 
>     - Also it was not obvious to find out which of the two fetchers are used..
> 
> 
> Adding a kernel:
>      - So by default the linuxdummy is used, but I wanted to build my kernel,
>        I started off by copying the yocto kernel recipes. This creates a very funny
>        bug. My kernel didn't have the meta branch, the task to test the branches
>        executes git log for the branch and this is failing.
>        The symptoms are not obvious at all. An empty log file is left behind.


This is probably best dealt with a kernel recipe writing manual. We have
a few things like this forming, but nothing tangible yet.


> 
>      - I was using the yocto kernel recipes incorrectly and ended up with a logfile
>        that pointed to itself for details but nothing else.


Better checkpoint logging in the kernel recipes and classes is
definitely needed. I have a branch with the start of that. Something
I'll continue to look into.


> 
>      - In the end I used a minimal kernel recipe, it would be nice to either have
>        an easy way to 'produce' a yocto like kernel of a simple kernel recipe in
>        the skeletons.


Checkout the meta-kernel-dev repository. We have (or will be very soon)
added a linux-korg_dev.bb which does exactly that. Bruce on CC is
driving that.


> 
> Python Exceptions:
>      - Building something that is not provided gives a python exception
>      - Adding a task that does not exist gives a python exception
>      - I think it would be nice to have meaningful error messages. Specially
>        the laters runs into something like:
>       if not Data:
>            print "BLA BLA"
>       use(data)

Not my area, but yes, there is room for improvement here.

> 
> Machine Extra Depends:
>      - I was using the core-minimal-image but wanted to have some of my
>        kernel modules installed. After finding the name that task-core-boot
>        is using I tried to do bitbake -cclean task-core-boot; bitbake the-image
>        but this didn't end up with a task-core-boot to carry my depends.
>        I had to resort to using bitbake -b task-core-boot.bb to build  it, I am not
>        sure why it failed when running from within the normal bitbake. IIRC it
>        continued to be like this even after I removed tmp/cache.


This is indeed a point where intuition has failed me as well. I remember
there was another machine specific task that I had to rebuild to trigger
getting the modules into the image. Unfortunatley I can't recall what it
was atm and "bitbake -g -u depexp core-image-minimal" isn't giving me
any hints either :/


> 
> I hope this point of view is helpful.
> 

Yes, thanks for sharing!

-- 
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel


  parent reply	other threads:[~2011-05-27 19:48 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-05-27 17:42 Impressions of using Poky to create a BSP Holger Freyther
2011-05-27 19:14 ` Bruce Ashfield
2011-05-27 19:48 ` Darren Hart [this message]
2011-05-27 20:06   ` Chris Larson
2011-05-27 20:19     ` Darren Hart
2011-05-27 20:23       ` Chris Larson
2011-05-28 18:35   ` Robert Berger
2011-05-29  4:08     ` Bruce Ashfield
2011-05-27 20:36 ` Khem Raj

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4DE0002B.2000206@linux.intel.com \
    --to=dvhart@linux.intel.com \
    --cc=holger@freyther.de \
    --cc=poky@pokylinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.