From: Albert ARIBAUD <albert.u.boot@aribaud.net>
To: u-boot@lists.denx.de
Subject: [U-Boot] Separately compile Master boot loader
Date: Wed, 10 Jul 2013 14:23:01 +0200 [thread overview]
Message-ID: <20130710142301.666459d8@lilith> (raw)
In-Reply-To: <CAONsvZXoceB7NLSd7xUCqQmhAquXSX-Wdpgb3iUcLdWra5jAXQ@mail.gmail.com>
Hi Rajdeep,
On Wed, 10 Jul 2013 15:04:12 +0530, Rajdeep Vaghasia
<rajdeep.vaghasia@gmail.com> wrote:
> Waiting for a reply.
Well, maybe if you had not e-mailed your 8:32 AM answer to me but to
the list... :)
Here it is, with my comments.
> On Tue, Jul 9, 2013 at 5:31 PM, Albert ARIBAUD <albert.u.boot@aribaud.net>wrote:
>
> > Hi Rajdeep,
> >
> > On Tue, 9 Jul 2013 16:12:14 +0530, Rajdeep Vaghasia
> > <rajdeep.vaghasia@gmail.com> wrote:
> >
> > > Hi
> > > I am working on one board with an arm11 based cpu, NOR flash and DDR2
> > SDRAM.
> > > When I compile u-boot source code, I get u-boot.bin image generated.
> > > This image has primary(second stage) and secondary(third stage)
> > bootloader
> > > combined.
> > >
> > > I have following queries:
> > > 1) The question that still eats me everyday is, How can I compile
> > > primary(Master) boot loader and secondary boot loader separately?
> > > 2) I want to Flash only initial 4kb of code (Master boot loader or second
> > > stage). The remaining code I want to keep at another partition in the
> > > Flash. How can I achieve this?
> > > 3) Is there any separate code available for Master boot loader, which
> > > copies the third stage bootloader to SDRAM and then transfers control to
> > > that third stage boot loader(u-boot)?
> > >
> > > I am unable to find a way to do this.
> > >
> > > Can anyone help me please?
> >
> > Since you do not indicate exactly which target you're building, I'll
> > assume it is one with SPL (what you describe as master or second stage,
> > with third stage being u-boot itself).
> >
> > I don't know of a way to build SPL alone.
> >
> > As for building separate U-Boot and SPL, you'll find them in ELF format
> > in file ./u-boot and ./spl/u-boot-spl. You can then use
> > $(CROSS_COMPILE)objcopy to convert from ELF to .bin.
> >
> > Note that your target may need a specific format different from the
> > pure binary that objcopy can produce.
> >
> > Can you tell us more about your target?
> >
> > Amicalement,
> > --
> > Albert.
> >
>
> Sorry, My target board is not with SPL.
Then your question does not make sense, since a target without SPL has
no "second" and "third" stage, only a single standalone U-Boot stage.
> According to my understanding, SPL is required when we want to use NAND or
> oneNAND flash. And even in that case, the image generated, is combined of
> u-boot.bin+nand_driver.
This is quite reductive and partly wrong.
SPL is required when you cannot directly boot into U-boot, one of the
cases being when you boot from NAND as it usually only allows very small
binaries; but NAND is far from the only case where SPL is needed or
useful.
Also, as I said, the image generated in the SPL case is not "u-boot +
NAND driver", it is "complete SPL + complete U-Boot" (although you can
have them separate as I explained), and the "complete SPL" part is not
itself an "U-Boot plus NAND driver".
> I am using NOR flash.
Ok.
> Actually, I am building firmware upgrade procedure.
> For that I need 3 partitions for u-boot.
> One with master u-boot.
> Other two with u-boot-1 and u-boot-2. (One contains current working u-boot,
> whereas another is with upgraded u-boot code).
> For that I need one Master uboot which contains code that initializes the
> SDRAM, choses one of the 2 secondary u-boot with the help of an environment
> variable (Or fixed jump to the start address of u-boot-1 or u-boot-2) and
> then copies u-boot(Secondary boot loader) to SDRAM and executes it from
> there.
Ok, so "secondary" is a concept specific to your design. No wonder I
could not understand it properly until you explained.
> These steps of initializing SDRAM and copying of u-boot code there, are
> already implemented in u-boot code. I just want to separate it from the
> main source code and want to generate binary of that much code only.
>
> Is there any way to achieve this?
Several; and then there is an infinity of other possible approaches,
depending, not on *what* you want to do, but on *why* you want to do
it. Can you give more details on why your firmware upgrade procedure
needs to boot two different U-Boots ?
> or
> Is there any resource of information available which can help me to
> understand this?
The source code and the Denx website, at this point; once you explain
the goal you are trying to reach, people on the list might point you
to more specific resources.
> Rajdeep.
Amicalement,
--
Albert.
next prev parent reply other threads:[~2013-07-10 12:23 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-07-09 10:42 [U-Boot] Separately compile Master boot loader Rajdeep Vaghasia
2013-07-09 12:01 ` Albert ARIBAUD
2013-07-10 9:34 ` Rajdeep Vaghasia
2013-07-10 12:23 ` Albert ARIBAUD [this message]
2013-07-11 5:27 ` Rajdeep Vaghasia
2013-07-11 8:35 ` Albert ARIBAUD
2013-07-11 9:11 ` [U-Boot] [RFC] Multiple binaries per U-Boot target (was: Separately compile Master boot loader) Albert ARIBAUD
2013-07-19 15:27 ` [U-Boot] [RFC] Multiple binaries per U-Boot target Sascha Silbe
2013-07-19 16:53 ` Simon Glass
2013-07-19 18:12 ` Albert ARIBAUD
2013-07-19 18:14 ` Simon Glass
2013-07-19 19:27 ` Wolfgang Denk
2013-07-19 21:09 ` Albert ARIBAUD
2013-07-19 22:32 ` Wolfgang Denk
2013-07-20 7:15 ` Albert ARIBAUD
2013-07-19 19:26 ` Wolfgang Denk
2013-07-11 10:08 ` [U-Boot] Separately compile Master boot loader Wolfgang Denk
2013-07-11 10:25 ` Albert ARIBAUD
2013-07-11 9:58 ` Wolfgang Denk
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=20130710142301.666459d8@lilith \
--to=albert.u.boot@aribaud.net \
--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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.