mail archive of the barebox mailing list
 help / color / mirror / Atom feed
From: Sascha Hauer <s.hauer@pengutronix.de>
To: Erwin Rol <mailinglists@erwinrol.com>
Cc: Barebox List <barebox@lists.infradead.org>
Subject: Re: powerfail safe env save
Date: Mon, 26 Nov 2018 10:48:56 +0100	[thread overview]
Message-ID: <20181126094856.7nlcoikiolt7eqpy@pengutronix.de> (raw)
In-Reply-To: <1543058064.5085.4.camel@erwinrol.com>

On Sat, Nov 24, 2018 at 12:14:24PM +0100, Erwin Rol wrote:
> Hallo Sascha,
> 
> On Wed, 2018-11-21 at 09:18 +0100, Sascha Hauer wrote:
> > Hi Erwin,
> > 
> > On Tue, Nov 20, 2018 at 09:08:01PM +0100, Erwin Rol wrote:
> > > Hallo,
> > > 
> > > as long time u-boot user I have several projects where we have a dual
> > > dataflash "sector" in wich we store our env variables. And dual so we
> > > always have or the correct old version or the correct new version even
> > > if there is a power fail during saveenv.
> > > 
> > > Is powerfail robust env writing also available in barebox. Or what
> > > would be the barebox equifelant of a number of config variables?
> > 
> > We do not have redundant environment right now.
> > 
> > There have been attempts in the past, but they fell short in flexibility
> > and/or robustness. Nowadays we normally do not use environment in
> > products anymore, so this isn't much of an issue.
> 
> So what do you use? Some sort of configuration (mac addresses, serial
> numbers, etc.) will still be needed, or ?
> 
> > 
> > If you have flash I would consider using UBI for the environment. With
> > atomic LEB change a robust environment could be implemented fairly
> > easily.
> 
> It is a phycore imx6 module with NAND, so that should be possible. But
> I rather stay as close by "mainline" as possible, so I would rather use
> what ever feature Barebox hhas to offer out of the box.
> 
> What I have in U-boot is that we have 2 kernels (and rootfs) and after
> an update I write in the uboot env which kernel/rootfs is active. This
> is something that happens in the field and so the writing to the uboot
> env must be so robuste that the system will not be bricked.
> 
> What would be the equivalent of such a setup in Barebox ?

We use the state frameowork and bootchooser for this task, see:

https://barebox.org/doc/latest/user/state.html
https://www.barebox.org/doc/latest/devicetree/bindings/barebox/barebox,state.html
https://barebox.org/doc/latest/user/bootchooser.html?highlight=bootchooser

Sascha

-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

      reply	other threads:[~2018-11-26  9:49 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-11-20 20:08 Erwin Rol
2018-11-21  8:18 ` Sascha Hauer
2018-11-24 11:14   ` Erwin Rol
2018-11-26  9:48     ` Sascha Hauer [this message]

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=20181126094856.7nlcoikiolt7eqpy@pengutronix.de \
    --to=s.hauer@pengutronix.de \
    --cc=barebox@lists.infradead.org \
    --cc=mailinglists@erwinrol.com \
    /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