public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Albert ARIBAUD <albert.aribaud@free.fr>
To: u-boot@lists.denx.de
Subject: [U-Boot] ARM relocation, question to Heiko
Date: Mon, 04 Oct 2010 11:10:06 +0200	[thread overview]
Message-ID: <4CA999EE.5030309@free.fr> (raw)
In-Reply-To: <OF05779DA1.EF3C4954-ONC12577B2.00307A0D-C12577B2.0030B9C0@transmode.se>

Le 04/10/2010 10:52, Joakim Tjernlund a ?crit :
> Albert ARIBAUD<albert.aribaud@free.fr>  wrote on 2010/10/04 10:33:05:
>>
>> Le 04/10/2010 10:28, Joakim Tjernlund a ?crit :
>>>>
>>>> Le 04/10/2010 09:36, Joakim Tjernlund a ?crit :
>>>>
>>>>> However, I think we will loose the possibility to add "link once, burn and
>>>> run anywhere"
>>>>> feature I impl. once(but it was at the time deemed to intrusive) if
>>>>> we skip -fPIC and go for the linker -pie relocation.
>>>>
>>>> On ARM at least, I don't think so. From what I see, the -pie ld option
>>>> without the -fPIC/-fPIE compiler option alone builds a .rel.syn table
>>>> that contains all necessary fixes to mve the code anywhere.
>>>
>>> hmm, maybe my memory fails me but doesn't these relocs change the
>>> code to relocate accesses? While in flash you can't do that.
>>> Perhaps this is fixable too with the LINK_OFF method I impl.
>>> but memory fails me as it was quite some time ago.
>>>
>>>      Jocke
>>
>> Actually the principle is to link with TEXT_BASE equal to the NOR FLASH
>> location of the image [1] so that relocation is not needed there. Only
>> when you move the code to RAM do you need relocation.
>
> Yes, that is there today. I am talking about linking to any TEXT_BASE(say 0)
> but burn and run into another address. I impl. this quite some time
> ago for PPC(search for LINK_OFF)

I am ultimately looking for same here on ARM.

Note however that linking for base address 0 is not mandatory for 
achieving true position independence. What is required is that the code 
which runs from power-up until relocation be able to run anywhere, i.e., 
this code should not require any relocation fixup. That can be achieved 
on ARM by using only relative branches and accessing data only relative 
to pc (e.g. literals) or truly absolute (e.g. HW registers etc).

Amicalement,
-- 
Albert.

  reply	other threads:[~2010-10-04  9:10 UTC|newest]

Thread overview: 113+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-09-30 13:57 [U-Boot] ARM relocation, probably trivial mistake Reinhard Meyer
2010-09-30 14:08 ` Stefano Babic
2010-09-30 14:20   ` Reinhard Meyer
2010-09-30 15:39     ` Heiko Schocher
2010-09-30 16:06       ` Reinhard Meyer
2010-09-30 15:38 ` Heiko Schocher
2010-09-30 17:43   ` Wolfgang Denk
2010-10-01  5:25     ` Heiko Schocher
2010-10-01  5:40       ` Albert ARIBAUD
2010-10-01  5:53         ` Heiko Schocher
2010-10-01  6:39           ` Reinhard Meyer
2010-10-01  6:57             ` Heiko Schocher
2010-10-01  8:45               ` Wolfgang Denk
2010-10-01  7:01             ` Albert ARIBAUD
2010-10-01  7:42               ` [U-Boot] ARM relocation, probably trivial mistake - back to original problem Reinhard Meyer
2010-10-01  8:27                 ` Heiko Schocher
2010-10-01 10:44                   ` Reinhard Meyer
2010-10-01 10:55                     ` Wolfgang Denk
2010-10-01 11:03                       ` Reinhard Meyer
2010-10-01 11:21                         ` Wolfgang Denk
2010-10-01 11:37                           ` Reinhard Meyer
2010-10-01 11:59                             ` Wolfgang Denk
2010-10-01 12:22                               ` Reinhard Meyer
2010-10-01 12:47                                 ` Reinhard Meyer
2010-10-01 12:55                                   ` Wolfgang Denk
2010-10-01 14:55                                     ` Reinhard Meyer
2010-10-02  8:53                                       ` Heiko Schocher
2010-10-01 15:47                                     ` Steve Sakoman
2010-10-02  7:15                                       ` [U-Boot] ARM relocation, question to Heiko Reinhard Meyer
     [not found]                                         ` <4CA6E517.9040701@fr<1286167382.22760.19.camel@ptyser-laptop>
2010-10-02  7:53                                         ` Albert ARIBAUD
2010-10-02  8:10                                           ` Reinhard Meyer
2010-10-02  8:26                                             ` Albert ARIBAUD
2010-10-03 18:04                                               ` Wolfgang Denk
2010-10-02  9:08                                             ` Heiko Schocher
2010-10-02  9:29                                               ` Albert ARIBAUD
2010-10-03 18:05                                                 ` Wolfgang Denk
2010-10-02 10:17                                               ` Joakim Tjernlund
2010-10-02 16:21                                                 ` J. William Campbell
2010-10-02 18:33                                                   ` Reinhard Meyer
2010-10-03 18:22                                                     ` Wolfgang Denk
2010-10-02 20:39                                                   ` Reinhard Meyer
2010-10-02 21:09                                                     ` Albert ARIBAUD
2010-10-02 23:07                                                       ` Graeme Russ
2010-10-03  7:10                                                         ` Albert ARIBAUD
2010-10-03  8:44                                                           ` Graeme Russ
2010-10-03  8:58                                                             ` Albert ARIBAUD
2010-10-03 15:36                                                               ` J. William Campbell
2010-10-03 16:47                                                                 ` Albert ARIBAUD
2010-10-03 17:54                                                                   ` Albert ARIBAUD
2010-10-03 18:43                                                                 ` Wolfgang Denk
2010-10-04  5:41                                                       ` Heiko Schocher
2010-10-03 18:29                                                     ` Wolfgang Denk
2010-10-03 19:26                                                       ` J. William Campbell
2010-10-04  5:52                                                       ` Heiko Schocher
2010-10-03 18:14                                                   ` Wolfgang Denk
2010-10-03 18:54                                                     ` J. William Campbell
2010-10-03 19:52                                                       ` Albert ARIBAUD
2010-10-03 18:03                                             ` Wolfgang Denk
2010-10-03 18:34                                               ` Albert ARIBAUD
2010-10-03 18:45                                                 ` Wolfgang Denk
2010-10-04  6:08                                                 ` Heiko Schocher
2010-10-04  6:40                                                   ` Albert ARIBAUD
2010-10-04  7:27                                                     ` Reinhard Meyer
2010-10-04  8:28                                                       ` Albert ARIBAUD
2010-10-04  8:57                                                         ` Heiko Schocher
2010-10-04  9:27                                                           ` Albert ARIBAUD
2010-10-04 10:01                                                             ` Joakim Tjernlund
2010-10-04  9:58                                                         ` Graeme Russ
2010-10-04 14:17                                                           ` Albert ARIBAUD
2010-10-04 14:25                                                             ` Rogan Dawes
2010-10-04 15:24                                                               ` Albert ARIBAUD
2010-10-04 16:31                                                                 ` Stefan Roese
2010-10-04 21:31                                                                   ` Albert ARIBAUD
2010-10-04  7:44                                                     ` Albert ARIBAUD
2010-10-04  4:43                                               ` Peter Tyser
2010-10-04  6:08                                                 ` Wolfgang Denk
2010-10-04  7:36                                                 ` Joakim Tjernlund
2010-10-04  8:08                                                   ` Albert ARIBAUD
2010-10-04  8:28                                                     ` Joakim Tjernlund
2010-10-04  8:33                                                       ` Albert ARIBAUD
     [not found]                                                         ` <OF05779DA1.EF3C4954-ONC12577B2.00307A0D-C12577B2.0030B9C0@tran <4CAA1613.80002@comcast.net>
2010-10-04  8:52                                                         ` Joakim Tjernlund
2010-10-04  9:10                                                           ` Albert ARIBAUD [this message]
2010-10-04 10:13                                                             ` Wolfgang Denk
2010-10-04 15:28                                                               ` J. William Campbell
2010-10-04 15:52                                                                 ` Albert ARIBAUD
2010-10-04 17:06                                                                 ` Wolfgang Denk
2010-10-04 17:59                                                                   ` J. William Campbell
2010-10-04 18:43                                                                     ` Joakim Tjernlund
2010-10-04 21:10                                                                       ` Wolfgang Denk
2010-10-05  7:26                                                                         ` Joakim Tjernlund
2010-10-04 17:04                                                               ` Graeme Russ
2010-10-04 17:14                                                                 ` Wolfgang Denk
2010-10-04  8:27                                                   ` Wolfgang Denk
2010-10-02  8:49                                     ` [U-Boot] ARM relocation, probably trivial mistake - back to original problem Heiko Schocher
2010-10-01 12:49                                 ` Wolfgang Denk
2010-10-01 14:48                                   ` Reinhard Meyer
2010-10-04  7:44                                     ` [U-Boot] AT91 clock and timer cleanups (was: ARM relocation, probably trivial mistake - back to original problem) Reinhard Meyer
2010-10-04  8:32                                       ` Wolfgang Denk
2010-10-04  8:42                                         ` [U-Boot] AT91 clock and timer cleanups Reinhard Meyer
2010-10-04  8:49                                           ` Wolfgang Denk
2010-10-04  8:52                                             ` Reinhard Meyer
2010-10-04  9:03                                               ` Wolfgang Denk
2010-10-04  9:12                                                 ` Reinhard Meyer
2010-10-04 14:58                                                   ` Reinhard Meyer
2010-10-04 17:00                                                     ` Wolfgang Denk
2010-10-04 17:15                                                       ` Reinhard Meyer
2010-10-04 17:32                                                         ` Wolfgang Denk
2010-10-04 19:22                                                           ` Reinhard Meyer
2010-10-01  8:48                 ` [U-Boot] ARM relocation, probably trivial mistake - back to original problem Wolfgang Denk
2010-10-01  9:50                   ` Reinhard Meyer
2010-10-01  8:03             ` [U-Boot] ARM relocation, probably trivial mistake Wolfgang Denk
2010-10-01  7:51           ` Wolfgang Denk
2010-10-01  8:28             ` Heiko Schocher

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=4CA999EE.5030309@free.fr \
    --to=albert.aribaud@free.fr \
    --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