[PATCH 1/2] blspec: allow board files to overwrite config file settings

Marco Felsch m.felsch at pengutronix.de
Wed Jan 20 08:26:54 EST 2021


On 21-01-20 13:31, Michael Olbrich wrote:
> On Wed, Jan 20, 2021 at 11:54:22AM +0100, Marco Felsch wrote:
> > On 21-01-20 10:03, Sascha Hauer wrote:
> > > On Tue, Jan 19, 2021 at 12:42:08PM +0100, Marco Felsch wrote:
> > > > Hi Sascha,
> > > > 
> > > > On 21-01-19 12:01, Sascha Hauer wrote:
> > > > > Hi Marco,
> > > > > On Mon, Jan 18, 2021 at 09:48:49PM +0100, Marco Felsch wrote:
> > > > > > This commit adds the support to overwrite and/or adapt blspec config
> > > > > > files by the following global variables:
> > > > > >   - global.blspec.fixup.devicetree
> > > > > >   - global.blspec.fixup.initrd
> > > > > >   - global.blspec.fixup.options
> > > > > >   - global.blspec.fixup.linux
> > > > > >   - global.blspec.fixup.devicetree-overlay.
> > > > > > 
> > > > > > Overwriting blspec-config's shouldn't be the normal case but there are
> > > > > > cases where this support is needed. One use-case can be a special
> > > > > > handling during update. E.g. the normal boot-flow don't need the initrd
> > > > > > but the update-flow uses it because the update system is on the initrd.
> > > > > 
> > > > > When you have an update system and a regular system on the same
> > > > > filesystem then I would expect an additional bootspec entry for the
> > > > > update system.
> > > > 
> > > > AFAIK, barebox tries to find the correct entry by checking all config
> > > > files and loads the first matching config file. Is there a way to
> > > > specify an explicite config file?
> > > 
> > > Not yet, but maybe we are at a point where a way should be added.
> > 
> > Maybe but how do you decide it? Also IMHO this wouldn't be that flexible
> > as this solution.
> 
> Maybe allow globing?
> 
> So I can say I want to boot 'default.conf' and create that as a symlink in
> the filesystem. That would be for the desktop use-case with multiple kernel
> versions.

That would be a solution. But...

> Or I could switch between '*-regular.conf' and '*-update.conf'. And then
> provide two entries for each device-tree.

.. if I wanna cover all platforms I have at least 2 platform confs for
each platform. The reason for that is because different platforms using
different overlays. By platform I mean a different variant of the same
platform family. Therefore I use my abbroach to patch the needed
overlays live and the platform is always the same.

Regards,
  Marco



More information about the barebox mailing list