Openembedded Core Discussions
 help / color / mirror / Atom feed
From: Darren Hart <dvhart@linux.intel.com>
To: Patches and discussions about the oe-core layer
	<openembedded-core@lists.openembedded.org>
Cc: Koen Kooi <koen@dominion.thruhere.net>
Subject: Re: Updating u-boot for oe-core or meta-yocto
Date: Thu, 26 May 2011 11:07:44 -0700	[thread overview]
Message-ID: <4DDE96F0.9030608@linux.intel.com> (raw)
In-Reply-To: <BANLkTimH3Dp_kec8RdHTzicHS5jn5iGG7w@mail.gmail.com>

Hi Jason,

On 05/25/2011 04:31 PM, Jason Kridner wrote:
> This thread got pretty long pretty fast, but I am imagining there is some
> place still here for me to chime in and build my own understanding of what
> we are doing...

Of course, thanks for the input...

> 
> On Wed, May 25, 2011 at 5:51 PM, Richard Purdie <
> richard.purdie@linuxfoundation.org> wrote:
> 
>> On Wed, 2011-05-25 at 09:36 -0700, Khem Raj wrote:
>>> On Wed, May 25, 2011 at 8:51 AM, Richard Purdie
>>> <richard.purdie@linuxfoundation.org> wrote:
>>>> I did a little research and I'd like to try and help us move forward.
>>>>
>>>> The "problem" at the moment is both oe-core and meta-ti have u-boot
>>>> recipes. If Yocto were to merge in the meta-ti recipe to meta-yocto it
>>>> would overshadow the oe-core recipe. I believe Yocto wants to encourage
>>>> sharing a core on codebases like u-boot which are receptive and working
>>>> to facilitate collaboration (not unlike Yocto itself).
>>
> 
> I like the bootloader living in the BSP layer, but if the mainline recipe is
> something we can all build upon in a reasonable fashion, I can see value in
> having it in oe-core.  It would seem an ugly duplicate to put it in
> meta-yocto and I'm still quite confused on what is meant to live there.
> What is done across the other ISAs?  Are they all living in meta-yocto or do
> they pull in from their own BSP layers?


AFAIK, meta-yocto should only contain support for 4 example hardware
platforms, one for each architecure (arm, mips, ppc, x86). What we're
running into here, I think, is that the board we've selected for arm
also has a mature BSP in meta-ti.


>>>
>>>> Valid questions are therefore:
>>>>
>>>> a) What can we do to the u-boot recipe in core to make it customisable
>>>> from layers like meta-ti
>>
> 
> To confirm, this means that building Yocto for BeagleBoard including meta-ti
> is *not* an issue outside of the conflicting recipes?  This was something
> we'd have needed to resolve anyway, no?


My current thinking on this is that for meta-yocto we want to have a
reasonably functional self-contained example BSP for ARM. Beagleboard
was the board selected for that. meta-yocto should be able to build the
core-image-* images and have them work on Beagleboard without needing to
pull in the meta-ti layer.

For additional Beagleboard support and perhaps more state-of-the-art
features, people looking to develop for the Beagleboard should also
include the meta-ti layer.

Having said this, I'm leaning toward just using the oe-core virgin uboot
recipe in meta-yocto as it is adequate to boot the Beagleboard. Then the
meta-ti layer provides the backports that provide some polish and usability.

Does anyone disagree with my thinking outlined here?


> 
> 
>>>>
>>>> b) Is it possible for the u-boot recipe in meta-ti to be a .bbappend
>>>> rather than a recipe which overwrites the default.
>>
> 
> You said this recipe is an unpatched mainline, correct?  Creating BSPs with
> .bbappend on top of mainline recipes in oe-core seems like a nice approach
> from my perspective.  Is that what is being suggested here?  Will all 4
> non-qemu BSPs in Yocto's core validation take this approach?


Currently Beagleboard is the only one that uses u-boot. The MPC8315E
could use it... but we're "having technical difficulties" with that at
the moment, so we're using the factory u-boot for the time being. Once
that is resolved, my goal would be for both Beagleboard and the MPC8315
to boot using a stock u-boot if at all possible.


> 
> 
>>>>
>>>> For a), I know Darren has some patches which drop the
>> COMPATIBLE_MACHINE
>>>> usage for example and instead raise the skip parsing exception when
>>>> UBOOT_MACHINE isn't set which is a step in the right direction. If we
>>>> find other issues, lets fix them.
>>>>
>>>> For b), I talked to Koen and he's going to see how feasible this is
>>>> although as always with this kind of issue there are various
>>>> complicating factors.
>>
>>>
>>>> Hopefully if we work both sides of the problem we can get this
>> resolved.
>>>> Darren, if you could send out some of your patches so far (e.g. for
>>>> COMPATIBLE_MACHINE) that might be helpful.
>>>>
>>>> If the ultimate answer is that no, meta-ti has so many changes or
>>>> specific requirements that mean it needs to stay a .bb file then lets
>>>> cross that bridge if we come to it but I think this discussion makes
>>>> sense before reaching that conclusion. Its possible the last release of
>>>> u-boot has sufficient beagle support for yocto's needs and we could use
>>>> that instead.
>>
> 
> The mainline u-boot works pretty well for Beagle, as Darren has confirmed,
> but I think there are a few useful patches as part of the validation image
> for BeagleBoard that have yet to make it upstream due to their platform
> specificity.  I am working those as I have time, but I think it is
> reasonable to have an approach BSP-specific patches temporarily, no?


Agreed.


>  I'd
> hate to get in a situation where we cannot produce the BeagleBoard
> experience that we want.


I think this is consistent with my approach outlined above, meta-yocto
uses oe-core's recipe for a functional bootloader and meta-ti improves
upon that experience via a bbappend.


>>>>
>>>> Just on a more general note, the agreement on resolving the beagleboard
>>>> issue stands as is. The plan is to make beagleboard support in
>>>> meta-yocto as near a copy of the meta-ti pieces as possible with the
>>>> exception of the kernel where linux-yocto will import the needed
>> patches
>>>> to demo the kernel tooling functionality. The layer tooling under
>>>> development will automate the process of syncing those pieces. I think
>>>> everyone is happy with the agreement and we just need to address some
>>>> corner cases like u-boot.
>>>>
>>>
>>> so is it just a question of beagleboard support or a broader support
>>> for all machines ?
>>
>> I'm hoping there are some machines out there which have merged support
>> into the upstream so simply setting UBOOT_MACHINE = "xxx" in the machine
>> config file is enough to get them working.
>>
> 
> I've used mainline with the BeagleBoard, but I'd prefer if we kept control
> over the experience on our platforms and welcome regular encouragement to
> eliminate patches.


nod


>>
>> Basing the system on the premise that every bootloader needs to be
>> custom isn't really where we want to be :/.
>>
> 
> Agreed, but what is "the system" in this respect?  I believe "the system" is
> meant to simplify creation of BSPs for every new platform under the sun, so
> having a way to work with these customizations seems to be a critical part
> of what the system should be.  That said, I take it seriously that after all
> this time there are still out-of-tree patches to u-boot that we are using to
> support the BeagleBoard and that needs to be resolved ASAP.
> 
> 
>>
>>> I know various boards use very different versions
>>> of u-boot so is oe-core going to bring that support
>>> to u-boot in oe-core and maintain that ?
>>
>> No, the idea would be to make it easy to add missing pieces in
>> a .bbappend though.
>>
>>> IMO keeping oe-core relatively free of machine dependent stuff would be
>> better.
>>
>> I'm still in agreement with this.
>>
> 
> What confuses me is that this seemed more directed at using meta-yocto or
> meta-ti for support of the BeagleBoard, not if we wanted to put
> board-dependent stuff in oe-core where I think we all agreed we want to keep
> it clean of machine dependent stuff, unless I missed something.  I still
> wonder if BeagleBoard doesn't belong in a less vendor-specific repository to
> make sure that community developers can adjust it as necessary outside of
> TI.  Though, as long as Koen is happy with it living in meta-ti for
> Angstrom, it seems suitable to me.


I've sent an initial set of u-boot recipe patches that work toward the
approach I've described above. I'll address the points raised and send
out V2 soon.

Thanks!

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



  reply	other threads:[~2011-05-26 18:10 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-05-24 16:36 Updating u-boot for oe-core or meta-yocto Darren Hart
2011-05-24 17:13 ` Koen Kooi
2011-05-24 18:04   ` Darren Hart
2011-05-24 17:23 ` Khem Raj
2011-05-24 17:51   ` adding meta-intel layers breaks parsing, was " Koen Kooi
2011-05-24 18:07     ` Tom Zanussi
2011-05-25 14:28       ` Tom Zanussi
2011-05-25 14:31         ` Koen Kooi
2011-05-25 14:38         ` Phil Blundell
2011-05-25 14:52           ` Tom Zanussi
2011-05-25 18:56           ` Darren Hart
2011-05-25 19:11             ` Phil Blundell
2011-05-25 20:04               ` Darren Hart
2011-05-25 21:31                 ` Richard Purdie
2011-05-25 23:18                   ` Darren Hart
2011-05-24 18:23   ` Darren Hart
2011-05-24 18:35     ` Khem Raj
2011-05-24 18:48       ` Phil Blundell
2011-05-24 19:33       ` Darren Hart
2011-05-24 17:33 ` Martin Jansa
2011-05-25 15:51 ` Richard Purdie
2011-05-25 16:36   ` Khem Raj
2011-05-25 16:49     ` Henning Heinold
2011-05-25 18:40       ` Darren Hart
2011-05-26  6:12         ` Anders Darander
2011-05-26 13:54           ` Darren Hart
2011-05-25 21:51     ` Richard Purdie
2011-05-25 23:31       ` Jason Kridner
2011-05-26 18:07         ` Darren Hart [this message]
2011-05-27  5:36           ` Anders Darander

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=4DDE96F0.9030608@linux.intel.com \
    --to=dvhart@linux.intel.com \
    --cc=koen@dominion.thruhere.net \
    --cc=openembedded-core@lists.openembedded.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox