mail archive of the barebox mailing list
 help / color / mirror / Atom feed
From: Juergen Beisert <jbe@pengutronix.de>
To: barebox@lists.infradead.org
Subject: Re: [PATCH] omap: use 512k barebox partition
Date: Mon, 30 Jul 2012 10:11:32 +0200	[thread overview]
Message-ID: <201207301011.32695.jbe@pengutronix.de> (raw)
In-Reply-To: <20120730074040.GG30009@pengutronix.de>

Hi Sascha,

Sascha Hauer wrote:
> On Fri, Jul 27, 2012 at 06:54:16PM +0200, Juergen Beisert wrote:
> > Sascha Hauer wrote:
> > > On Fri, Jul 27, 2012 at 01:09:07PM +0200, Jan Weitzel wrote:
> > > > Use 512k NAND Partion for barebox. Problem is we don't know the size
> > > > of the barebox inside xload. Set it also to 512k
> > > > Fix enviroment for boards with size in config
> > >
> > > The barebox binary has the size encoded into it at offset 0x2c. We
> > > could use this to transfer the correct size.
> >
> > Will this be a reliable "API" to the outerworld? Also in future versions
> > of Barebox?
>
> Yes, definitely.
>
> That said, it is not a feature you can generally rely upon, because some
> SoCs may require some special image layout conflicting with this.

This would require a "movable marker" inside the binary image.

> If your SoC can support this header, barebox will support it in the future
> aswell.

Okay.

> The header is in arch/arm/include/asm/barebox-arm-head.h. As you can see
> it also contains the ascii string 'barebox' which means that you can
> test for it, and if you find it, the next word will contain the address
> this binary should be copied to (only used to skip copying the binary to
> the correct place, it's not mandatory to start the image there). The
> word after it will contain the image size.
>
> This means, what you can do is:
>
> - Test if the image contains 'barebox'

This might be very dangerous, as this kind of string can be part of the binary 
more than one times, if it is used as part of an output string for example 
("Hi, barebox here").

> - if yes, use the encoded image size
> - if no, fall back to whatever suitable size (It could be a U-Boot image
>   for example)

What we need for this "movable marker" is:
 - a string like "barebox" as its start indication
 - in-between some payload data we want to know
   - size of the "payload"
   - version marker
   - real data
 - something that indicates the end of the whole marker to verify, this entry
   is not a phantom (for example the string "xoberab" ;) )

jbe

-- 
Pengutronix e.K.                              | Juergen Beisert             |
Linux Solutions for Science and Industry      | http://www.pengutronix.de/  |

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

  reply	other threads:[~2012-07-30  8:12 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-07-27 11:09 Jan Weitzel
2012-07-27 15:19 ` Sascha Hauer
2012-07-27 16:54   ` Juergen Beisert
2012-07-30  7:40     ` Sascha Hauer
2012-07-30  8:11       ` Juergen Beisert [this message]
2012-07-30  8:52         ` Sascha Hauer
2012-07-30  9:16           ` Juergen Beisert
2012-07-30  9:33             ` Sascha Hauer

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=201207301011.32695.jbe@pengutronix.de \
    --to=jbe@pengutronix.de \
    --cc=barebox@lists.infradead.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