[Buildroot] [PATCH v2] barebox: add an option to embed environment image
Arnout Vandecappelle
arnout at mind.be
Tue Mar 1 23:02:20 UTC 2016
On 02/28/16 23:50, Yegor Yefremov wrote:
> On Sat, Feb 27, 2016 at 9:40 PM, Arnout Vandecappelle <arnout at mind.be> wrote:
>> Note that this patch conflicts with Pieter's dual-config series, so it would be
>> good to combine both in a single series.
>
> I'll rebase my patches on top of dual-config series. This patch was
> more proof of concept.
>
>> On 02/17/16 09:42, yegorslists at googlemail.com wrote:
>>> From: Yegor Yefremov <yegorslists at googlemail.com>
>>>
>>> Barebox provides an option to embed a custom environment image into
>>> barebox.bin. This image will be used, when the environment found in
>>> the environment sector is invalid.
>>>
>>> This patch sets barebox Kconfig option CONFIG_DEFAULT_ENVIRONMENT_PATH to user
>>> specified path. This way one can use BR's variables like BR2_EXTERNAL, TOPDIR
>>> etc. to provide paths to custom environment folders.
>>
>> I don't understand this comment. I mean, it seems obvious that you'd have a
>> config option for it, and that you can use BR2_EXTERNAL in it, no?
>
> What I mean is, that with this BR option one would change Barebox's
> own option. Because if you specify the path in Barebox Kconfig
> directly using BR2_EXTERNAL, it won't be expanded, so that Barebox
> build process would fail. How would you formulate this?
Hm, now I read your commit log a second time, it was perfectly clear...
>
>> Also, commit log should be wrapped at 72 columns.
>
> ACK
>
>>>
>>> Cc: Pieter Smith <pieter at boesman.nl>
>>> Signed-off-by: Yegor Yefremov <yegorslists at googlemail.com>
>>> ---
>>> Changes:
>>> v2: - remove qstrip
>>> - add detailed patch description
>>> - improve help texts
>>>
>>> boot/barebox/Config.in | 19 +++++++++++++++++++
>>> boot/barebox/barebox.mk | 6 ++++++
>>> 2 files changed, 25 insertions(+)
>>>
>>> diff --git a/boot/barebox/Config.in b/boot/barebox/Config.in
>>> index 39cb5d2..ae52b2a 100644
>>> --- a/boot/barebox/Config.in
>>> +++ b/boot/barebox/Config.in
>>> @@ -121,4 +121,23 @@ config BR2_TARGET_BAREBOX_CUSTOM_ENV_PATH
>>> barebox devfs format, stored in the images directory, with
>>> the same name as the directory name given here.
>>>
>>> +config BR2_TARGET_BAREBOX_CUSTOM_EMBEDDED_ENV
>>> + bool "Embed custom environment"
>>> + help
>>> + Embed a custom environment image into barebox.bin. In order
>>> + to use this option you need to enable CONFIG_DEFAULT_ENVIRONMENT
>>> + and setup desired compression type for embedded images in barebox
>>> + itself.
>>
>> I don't know a lot about barebox, but wouldn't it be more appropriate to select
>> those options automatically?
>
> I can add CONFIG_DEFAULT_ENVIRONMENT, but leave compression type
> selection to Barebox config.
Sounds good.
>
>>> +
>>> +config BR2_TARGET_BAREBOX_CUSTOM_EMBEDDED_ENV_PATH
>>> + string "Embedded environment path"
>>> + depends on BR2_TARGET_BAREBOX_CUSTOM_EMBEDDED_ENV
>>> + help
>>> + Barebox CONFIG_DEFAULT_ENVIRONMENT_PATH
>>> + will be set to the path containing custom barebox
>>> + environment. Depending on your setup, it will probably be
>>> + based on either the content of the defaultenv or
>>> + defaultenv-2 directories in the barebox source code, plus
>>> + the additions needed.
>>
>> How much sense does it make to have an embedded env that is different from the
>> custom environment specified above?
>
> For example you can have an embedded env for production stage, that
> fetches kernel from tftp, where systems flash is empty and the real
> env comes during the production stage and will be used the next time
> the system boots. So I would keep them both separately.
Doesn't sound like a very strong case to me, but OK, why not.
>
>> If I understand correctly, barebox always has a built-in default environment.
>
> AFAIK CONFIG_DEFAULT_ENVIRONMENTdecides whether you have a built-in
> default environment or not.
Ah of course.
Regards,
Arnout
[snip]
--
Arnout Vandecappelle arnout at mind be
Senior Embedded Software Architect +32-16-286500
Essensium/Mind http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint: 7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF
More information about the buildroot
mailing list