From: Siarhei Siamashka <siarhei.siamashka@gmail.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [RFC PATCH 2/2] sunxi: add "fel" boot target
Date: Mon, 14 Sep 2015 13:33:53 +0300 [thread overview]
Message-ID: <20150914133353.1e1658c4@i7> (raw)
In-Reply-To: <55F29F86.5050901@web.de>
On Fri, 11 Sep 2015 11:31:50 +0200
Bernhard Nortmann <bernhard.nortmann@web.de> wrote:
> Hi!
>
> Am 10.09.2015 um 20:36 schrieb Hans de Goede:
> > Hi,
> >
> > I would prefer to have this like this:
> >
> > "bootcmd_fel=" \
> > "if test -n ${fel_booted} && test -n ${fel_data_addr}; then " \
> > "echo '(FEL boot)';" \
> > "source ${fel_data_addr}; " \
> > "fi\0"
> >
>
> Sure, we could do that. I wanted to make clear that ${fel_booted} is
> independent of a script being present (and thus ${fel_data_addr} set).
> If the user feels inclined to do so, he might e.g. tweak bootcmd_fel
> to override some defaults even with no boot.scr involved.
>
> > Also if we are not using fel_data_size, then why do we even
> > have it ?
> >
>
> I thought it unnecessary to restrict ourselves to not being able to
> pass the size information, and kept it optional deliberately.
>
> Admittedly it's pointless in the "standard" case of boot.scr, as that
> is expected to be an image with a well-defined header (including data
> size). I could imagine other uses, e.g. a customized fel utility
> passing uEnv.txt-style data, and integrating that via bootcmd_fel
> "import -t ${fel_data_addr} ${fel_data_size}".
We could probably have this data represented in the following way
in the SPL header:
union {
struct {
uint32_t fel_boot_script_address;
uint32_t must_be_zero;
};
struct {
uint32_t fel_uenv_txt_address;
uint32_t fel_uenv_txt_size;
};
};
So that if 'fel_uenv_txt_size' is non-zero, then we can do
"import -t ${fel_uenv_txt_address} ${fel_uenv_txt_size}".
And if it is zero, then treat this pointer as boot.scr data.
And we don't even need to use the union if we don't want to. This all
data could be also stored in a straightforward way (at the expense
of using additional 4 bytes in the SPL header):
uint32_t fel_boot_script_address;
uint32_t fel_uenv_txt_address;
uint32_t fel_uenv_txt_size;
And because it takes more storage space, we would need to increase
the SPL header size. But this can be easily done.
> Personally I like to do this when testing; I find it easier to
> simply edit a text file (without having to go through a mkimage
> .scr on each cycle).
Supporting both boot.scr and uEnv.txt for FEL boot seems to be
reasonably simple to me. You can even do it in a single patch
series. As Hans suggests, please take care of the boot.scr case
first. Then maybe introduce uEnv.txt support with an additional
patch.
--
Best regards,
Siarhei Siamashka
next prev parent reply other threads:[~2015-09-14 10:33 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-09-03 14:11 [U-Boot] [RFC PATCH 0/2] sunxi: support FEL-provided environment vars and "fel" boot target Bernhard Nortmann
2015-09-03 14:11 ` [U-Boot] [RFC PATCH 1/2] sunxi: retrieve FEL-provided values to environment variables Bernhard Nortmann
2015-09-10 18:34 ` Hans de Goede
2015-09-11 9:08 ` Bernhard Nortmann
2015-09-12 11:58 ` Ian Campbell
2015-09-12 12:24 ` Hans de Goede
2015-09-14 13:12 ` Bernhard Nortmann
2015-09-03 14:12 ` [U-Boot] [RFC PATCH 2/2] sunxi: add "fel" boot target Bernhard Nortmann
2015-09-10 18:36 ` Hans de Goede
2015-09-11 9:31 ` Bernhard Nortmann
2015-09-12 12:48 ` Hans de Goede
2015-09-13 7:15 ` Ian Campbell
2015-09-14 10:33 ` Siarhei Siamashka [this message]
2015-09-14 11:42 ` Hans de Goede
2015-09-14 11:46 ` Hans de Goede
2015-09-26 21:03 ` Siarhei Siamashka
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=20150914133353.1e1658c4@i7 \
--to=siarhei.siamashka@gmail.com \
--cc=u-boot@lists.denx.de \
/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