Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 6 Apr 2013 15:03:30 -0600
From:      Warner Losh <imp@bsdimp.com>
To:        Tim Kientzle <kientzle@freebsd.org>
Cc:        "freebsd-arm@freebsd.org" <freebsd-arm@freebsd.org>
Subject:   Re: "Beyond Buildworld" (was Re: RFC: "Crochet" build tool)
Message-ID:  <50CC112D-2B90-4E66-9D5F-829274D041D7@bsdimp.com>
In-Reply-To: <8FCD7391-B9E3-478A-86E8-4414F750804D@freebsd.org>
References:  <CFBA557F-3DB9-40BA-B222-8E8C67707C9B@freebsd.org> <5DFA61DB-70E4-4C3D-ACA0-995A175706C8@neville-neil.com> <5151B454.9090402@ceetonetechnology.com> <1CBF1416-3237-4DCE-8D61-7E998265C887@neville-neil.com> <1364311809.36972.27.camel@revolution.hippie.lan> <CAJ-Vmomcaoe4cBFtFbXHSe2ygWA9JZnMkE_zoy80unuT-L1Axg@mail.gmail.com> <5151D045.80305@thieprojects.ch> <CAJ-Vmomk0aGykV2Zv_9nW9Lg9THHspkfjHhiu7dEz1k1nPAibw@mail.gmail.com> <5151D9DB.7050001@thieprojects.ch> <167CF57D-01E3-4857-BF0E-C40B00FED226@netgate.com> <CAJ-VmokxSYqy4Zr1wtN=Ln4-2wJybqGeh_LSAC1tNM44DjTF1w@mail.gmail.com> <515ADB81.7090908@freebsd.org> <C271E400-CAE1-4118-ADF8-A8CA72B25972@kientzle.com> <515DF177.9060907@freebsd.org> <4DC4C47C-D503-4155-8FAF-6D5C88D8F67C@freebsd.org> <CAJ-Vmon7dB3h3pX3x4GS0rJB1zeszQubo7L4ahPAqCkFRpe2Aw@mail.gmail.com> <8FCD7391-B9E3-478A-86E8-4414F750804D@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help

On Apr 6, 2013, at 11:45 AM, Tim Kientzle wrote:

>=20
> On Apr 4, 2013, at 10:40 PM, Adrian Chadd wrote:
>=20
>> Hm, how about something a bit more modular?
>>=20
>> As in, adding hooks to make release / nanobsd / tinybsd to let us tie
>> in the embedded platform requirements, like building bootloaders and
>> such;
>=20
> George is setting up a DevSummit track for BSDCan (the
> "Beyond Buildworld" WG) about this exact issue.
> Will you be there?

I'll be there.

> I'll be there and here are a few of the issues I'd like to discuss:
>=20
> * What hooks are appropriate?   In part, Crochet is an experiment
>   to explore ways of factoring these issues, but I don't know
>   release or nanobsd well enough to judge whether the
>   ideas I'm coming up with would fit well into those.

Most of the ones that NanoBSD has are quite useful... I'm sure there are =
many others that would be good in addition, since NanoBSD hasn't kept =
pace.

> * How do boot loaders get managed?  Crochet has been
>   downloading, patching, and building directly from upstream
>   sources, but that's getting tedious fast.  Can we maintain boot
>   loaders as ports?[1]

I think that we can and should, to the extent we need to do so. Most =
boards have a perfectly good boot loader already, but some like the =
popular RPi don't.  Thankfully, the images for the boot loaders tend to =
be separable from the main image that people load on them and run/boot.

> * What policy should FreeBSD project use to determine which
>   specific boards to release official images for?  For that matter,
>   should the project release "official images" at all?  Or should
>   we leave that in the hands of other parties?

In general, we shouldn't be aiming to release a general loader / kernel =
that runs everywhere. To release lots of other images will get difficult =
quickly. Alas, the current kernel infrastructure is a little weak to do =
this (actually it is impossible at the moment). We should have clear =
goals here, though, otherwise we'll quickly get bogged down. If we =
require multiple images, then we should automate the snot out of that, =
or if a popular board requires custom hacks.

To this end, I think we should examine making ubldr position independent =
code. Once we have this, it can relocate itself and load the actual =
kernel at a board specific location it can determine from the FDT...

> I'm not expecting to come up with final answers to these
> at BSDCan, but I'm hoping to get enough people involved to
> at least enumerate some of the avenues to explore.

Yea, if we can get a good consensus on a direction, we can all pull in =
that direction, rather in the somewhat fractured different directions we =
have been pulling in to doate.

> [1]   If someone wants to try creating a port of some boot loader
> as an experiment, I'm happy to collaborate on integrating it into
> Crochet to see how well that works.  I would suggest trying
> to build a port for RPi U-Boot as a first proof-of-concept.

That would be cool... Again, I worry about getting in the business of =
too many board support, but we may want to do that for the most popular =
ones.

Warner=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?50CC112D-2B90-4E66-9D5F-829274D041D7>