From: Marek Vasut <marex@denx.de>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v2 01/11] ARM: fix relocation on ARM926EJS
Date: Mon, 17 Sep 2012 19:48:18 +0200 [thread overview]
Message-ID: <201209171948.18442.marex@denx.de> (raw)
In-Reply-To: <20120917173513.GD16252@bill-the-cat>
Dear Tom Rini,
> On Mon, Sep 17, 2012 at 07:26:06PM +0200, Marek Vasut wrote:
> > Dear Tom Rini,
> >
> > > On Sun, Sep 16, 2012 at 05:36:47PM +0200, Marek Vasut wrote:
> > > > Dear Jos? Miguel Gon?alves,
> > > >
> > > > > On 09/16/2012 11:06 AM, Marek Vasut wrote:
> > > > > > Dear Jos? Miguel Gon?alves,
> > > > > >
> > > > > >> On 09/15/2012 07:03 PM, Marek Vasut wrote:
> > > > > >>> Dear Jos? Miguel Gon?alves,
> > > > > >>>
> > > > > >>>> Jumping to board_init_r is not performed due to a bug on
> > > > > >>>> address computation.
> > > > > >>>
> > > > > >>> Is your CONFIG_SYS_TEXT_BASE configured correctly? I don't
> > > > > >>> detect any misbehavior on my arm926 boards.
> > > > > >>
> > > > > >> Maybe because you are not using it to build an SPL?
> > > > > >
> > > > > > I do ... and I use CONFIG_SPL_TEXT_BASE properly .
> > > > > >
> > > > > >> Please check the same chunk of code in other start.S for arm1176
> > > > > >> and armv7. They have the same code that I put for arm926ejs.
> > > > > >
> > > > > > Please wait and please first explain what is the issue.
> > > > >
> > > > > The issue is what I've explained in the patch comments.
> > > >
> > > > "Jumping to board_init_r is not performed due to a bug on address
> > > > computation."
> > > >
> > > > Ok, I don't know how to replicate the bug from this comment or what
> > > > effects it causes or ... well, anything. So please, try to be more
> > > > elaborate in your patch description next time. Anyway ..
> > > >
> > > > > Without this
> > > > > change the code never reaches board_init_r in the SPL and I think I
> > > > > have all the configurations correctly set.
> > > >
> > > > I wonder why you'd ever want to reach board_init_r in the SPL. SPL is
> > > > there only to load the real U-Boot from whatever media, so you
> > > > usually use either NAND SPL
> > >
> > > Here's a good point for me to jump in, I think. There's two things to
> > > understand:
> > > - In the current in-tree SPL implementations the code flow is
> > >
> > > board_init_f calls relocate_code() to clear the BSS _and_ get our
> > > jump to board_init_r. It does not actually relocate the running
> > > U-Boot, just clears the BSS. board_init_r is what calls the things
> > > to load and boot the next stage (U-Boot or Linux).
> > >
> > > - In my series this has been changed slightly to be board_init_f calls
> > >
> > > memset and then board_init_r directly. So this patch should not be
> > > needed once rebased on that series.
> >
> > Do we need to do all the relocation in assembler code btw? Can it not be
> > moved into C code and made generic across all platforms (module the
> > stack adjustment and a few minor things) ?
>
> I think people have posted patches for this before and yes, once
> CONFIG_NEEDS_MANUAL_RELOC dies it should be all possible to do in C, so
> long as it doesn't grow in size or doesn't grow in size that would be
> problematic (remember the 4kb people).
How does MANUAL_RELOC interfere with that? Eg. on ARM, it can already be shifted
to C. Then if we made it generic enough, those MANUAL_RELOC platforms could
simply adopt the C code.
Best regards,
Marek Vasut
next prev parent reply other threads:[~2012-09-17 17:48 UTC|newest]
Thread overview: 84+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-09-14 17:28 [U-Boot] [PATCH v2 00/11] S3C24XX: Add support to MINI2416 board José Miguel Gonçalves
2012-09-14 17:28 ` [U-Boot] [PATCH v2 01/11] ARM: fix relocation on ARM926EJS José Miguel Gonçalves
2012-09-15 18:03 ` Marek Vasut
2012-09-16 9:45 ` José Miguel Gonçalves
2012-09-16 10:06 ` Marek Vasut
2012-09-16 10:16 ` José Miguel Gonçalves
2012-09-16 15:36 ` Marek Vasut
2012-09-16 16:26 ` José Miguel Gonçalves
2012-09-16 17:17 ` Marek Vasut
2012-09-17 6:28 ` Christian Riesch
2012-09-17 8:34 ` José Miguel Gonçalves
2012-09-17 9:03 ` Christian Riesch
2012-09-17 9:20 ` José Miguel Gonçalves
2012-09-17 17:18 ` Tom Rini
2012-09-17 17:23 ` Scott Wood
2012-09-17 17:32 ` Tom Rini
2012-09-17 17:26 ` Marek Vasut
2012-09-17 17:35 ` Tom Rini
2012-09-17 17:48 ` Marek Vasut [this message]
2012-09-17 18:00 ` Tom Rini
2012-09-17 17:27 ` José Miguel Gonçalves
2012-10-04 14:24 ` Albert ARIBAUD
2012-09-14 17:28 ` [U-Boot] [PATCH v2 02/11] S3C24XX: Add core support for Samsung's S3C24XX SoCs José Miguel Gonçalves
2012-09-14 18:03 ` Marek Vasut
[not found] ` <505375E3.6050005@inov.pt>
2012-09-14 18:25 ` Marek Vasut
2012-09-14 19:01 ` Scott Wood
2012-09-14 19:07 ` Marek Vasut
2012-09-14 19:17 ` Scott Wood
2012-09-14 18:39 ` Tom Rini
2012-09-14 17:28 ` [U-Boot] [PATCH v2 03/11] serial: Add support to 4 ports in serial_s3c24x0 José Miguel Gonçalves
2012-09-14 17:28 ` [U-Boot] [PATCH v2 04/11] serial: Use a more precise baud rate generation for serial_s3c24x0 José Miguel Gonçalves
2012-09-14 18:05 ` Marek Vasut
2012-09-14 17:28 ` [U-Boot] [PATCH v2 05/11] serial: Remove unnecessary delay in serial_s3c24x0 José Miguel Gonçalves
2012-09-14 18:05 ` Marek Vasut
2012-09-14 17:28 ` [U-Boot] [PATCH v2 06/11] rtc: Improve rtc_get() on s3c24x0_rtc José Miguel Gonçalves
2012-09-14 18:06 ` Marek Vasut
2012-09-14 17:28 ` [U-Boot] [PATCH v2 07/11] rtc: Fix rtc_reset() " José Miguel Gonçalves
2012-09-14 18:07 ` Marek Vasut
2012-09-14 17:28 ` [U-Boot] [PATCH v2 08/11] rtc: Don't allow setting unsuported years " José Miguel Gonçalves
2012-09-14 18:08 ` Marek Vasut
2012-09-14 17:29 ` [U-Boot] [PATCH v2 09/11] S3C24XX: Add NAND Flash driver José Miguel Gonçalves
2012-09-14 18:21 ` Marek Vasut
2012-09-14 18:45 ` José Miguel Gonçalves
2012-09-14 19:01 ` Tom Rini
2012-09-16 9:16 ` José Miguel Gonçalves
2012-09-17 16:57 ` Tom Rini
2012-09-17 17:03 ` Scott Wood
2012-09-17 17:08 ` Tom Rini
2012-09-17 17:13 ` Scott Wood
2012-09-17 17:08 ` José Miguel Gonçalves
2012-09-17 17:56 ` Tom Rini
2012-09-17 18:05 ` José Miguel Gonçalves
2012-09-17 18:27 ` Tom Rini
2012-09-17 18:34 ` José Miguel Gonçalves
2012-09-17 18:56 ` Tom Rini
2012-09-14 19:24 ` Scott Wood
2012-09-14 20:20 ` Tom Rini
2012-09-14 20:29 ` Scott Wood
2012-09-17 11:11 ` José Miguel Gonçalves
2012-09-14 18:47 ` Tom Rini
2012-09-14 17:29 ` [U-Boot] [PATCH v2 10/11] Add u-boot-ubl.bin target to the Makefile José Miguel Gonçalves
2012-09-14 18:22 ` Marek Vasut
2012-09-14 19:08 ` Tom Rini
2012-09-16 9:27 ` José Miguel Gonçalves
2012-09-17 6:47 ` Christian Riesch
2012-09-17 8:30 ` José Miguel Gonçalves
2012-09-17 9:10 ` Christian Riesch
2012-09-17 9:24 ` José Miguel Gonçalves
2012-09-17 14:45 ` Tom Rini
2012-09-17 16:29 ` Marek Vasut
2012-09-17 16:35 ` Tom Rini
2012-09-17 16:27 ` Scott Wood
2012-09-17 16:51 ` Tom Rini
2012-09-17 17:32 ` Scott Wood
2012-09-17 17:53 ` Tom Rini
2012-09-17 18:16 ` Scott Wood
2012-09-17 19:52 ` Wolfgang Denk
2012-09-14 17:29 ` [U-Boot] [PATCH v2 11/11] S3C24XX: Add support to MINI2416 board José Miguel Gonçalves
2012-09-14 18:58 ` Tom Rini
2012-09-16 9:11 ` José Miguel Gonçalves
2012-09-17 14:39 ` Tom Rini
2012-09-17 14:47 ` José Miguel Gonçalves
2012-09-17 15:11 ` Tom Rini
2012-09-18 12:11 ` José Miguel Gonçalves
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=201209171948.18442.marex@denx.de \
--to=marex@denx.de \
--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.