All of lore.kernel.org
 help / color / mirror / Atom feed
From: Wolfgang Wegner <wolfgang@leila.ping.de>
To: u-boot@lists.denx.de
Subject: [U-Boot] FPGA relocation/C environment
Date: Thu, 29 Oct 2009 13:04:52 +0100	[thread overview]
Message-ID: <20091029120452.GG3216@leila.ping.de> (raw)
In-Reply-To: <20091029110000.EA98F19F73@gemini.denx.de>

Dear Wolfgang Denk,

On Thu, Oct 29, 2009 at 12:00:00PM +0100, Wolfgang Denk wrote:
> Dear Wolfgang Wegner,
> 
> In message <20091029082113.GE3216@leila.ping.de> you wrote:
> > 
> > Now I recognized that commit 6385b28116f775da4771b768ba9bf93c3aaaf26e
> > removed FPGA relocation, which of course breaks FPGA code for my
> > Coldfire board.
> 
> This is an out-of-tree port, right? If your code had been in mainline,
> this would not have happened.

I know, as I mentioned in the first place, I am right now updating to
get it integrated. (see below for the footnote)

> > What is the "proper relocation for PPC boards" that is mentioned
> > by Peter in his commit log? I found this test patch by him:
> ...
> > - I do not understand how the compiler could know about the
> >   relocation for the FPGA (and possibly other) functions when the
> >   actual relocation is done during U-Boot run time?
> 
> The compiler / linker  create  a  Global  Offset  Table  (GOT)  which
> basicly  is  a  list of offsets to the image, where address constants
> need to be updated to relocate the image to a new  address.  This  is
> what the U-Boot relocation code does: add a (fixed) relocation offset
> (target  address - source address) to all the locations listed in the
> GOT. The problem was, that certain  types  of  addresses  (statically
> initialized function pointers) did not get listed in the GOT. This is
> now fixed.

Thank you for the clarification! I will see if I can find out in which
state gcc and U-Boot for coldfire are in this respect.

Best regards,
Wolfgang

[At the time of the original port, MCF532x/7x was not present in U-Boot;
my own port had quite many conflicts (probably because of me being still
very unfamiliar with U-Boot and its concepts) with the upcoming official
port, which in turn had some severe problems at least with my setup. This
and the fact that I needed some time to get at least a bit familiar with
git led to me sticking with my old out-of-tree port. Now as the official
MCF537x port is settled I am in the process of doing my homework...]

  reply	other threads:[~2009-10-29 12:04 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-10-29  8:21 [U-Boot] FPGA relocation/C environment Wolfgang Wegner
2009-10-29 11:00 ` Wolfgang Denk
2009-10-29 12:04   ` Wolfgang Wegner [this message]
2009-10-29 13:08   ` Joakim Tjernlund
2009-10-29 13:41     ` Wolfgang Wegner
2009-10-29 14:22       ` Joakim Tjernlund
2009-10-29 15:00         ` Wolfgang Wegner
2009-10-29 15:44           ` Wolfgang Wegner
2009-10-29 16:39             ` Joakim Tjernlund
2009-10-30 13:11               ` Wolfgang Wegner
2009-10-30 23:16                 ` Graeme Russ
2009-10-29 15:47           ` Joakim Tjernlund

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=20091029120452.GG3216@leila.ping.de \
    --to=wolfgang@leila.ping.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.