[U-Boot] [RFC PATCH] dm: Add support for all targets which requires MANUAL_RELOC

Simon Glass
2015-02-05T03:07:20Z

Hi Michal,

On 3 February 2015 at 17:40, Simon Glass <sjg@chromium.org> wrote:
> Hi Michal,
>
> On 3 February 2015 at 02:11, Michal Simek <michal.simek@xilinx.com> wrote:
>> Hi Simon,
>>
>> On 02/03/2015 03:02 AM, Masahiro Yamada wrote:
>>> Hi.
>>>
>>>
>>> On Mon, 2 Feb 2015 16:57:15 -0700
>>> Simon Glass <sjg@chromium.org> wrote:
>>>
>>>> Hi Michal,
>>>>
>>>> On 2 February 2015 at 08:31, Michal Simek <michal.simek@xilinx.com> wrote:
>>>>> Targets with CONFIG_NEEDS_MANUAL_RELOC do not use REL/RELA
>>>>> relocation (mostly only GOT) where functions aray are not
>>>>> updated. This patch is fixing function pointers for DM core
>>>>> and serial-uclass to ensure that relocated functions are called.
>>>>>
>>>>> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
>>>>> ---
>>>>>
>>>>> drivers/core/root.c | 64 ++++++++++++++++++++++++++++++++++++++++++
>>>>> drivers/serial/serial-uclass.c | 16 +++++++++++
>>>>> 2 files changed, 80 insertions(+)
>>>>
>>>> How long will we have to carry this patch? It seems that if we add any
>>>> new driver we will have to add more code like this?
>>>
>>>
>>>
>>> This patch is unfortunate.
>>> Can we discontinue CONFIG_NEEDS_MANUAL_RELOC some day?
>>
>> This patch (or similar one) has to be alive when we have platform
>> which requires CONFIG_NEEDS_MANUAL_RELOC for full u-boot.
>> There is an option to move to REL/RELA but the question is if
>> all platforms have it/support it. Unfortunately I think that
>> it will be in the tree for a long time.
>>
>>>
>>> If we use SPL, we do not have to relocate code, I think.
>>
>> SPL doesn't have relocation that's why this code is not used there.
>
> Maybe I asked this before, but when can we remove
> CONFIG_NEEDS_MANUAL_RELOC? What platforms need it?

Sorry if you answered these questions but can you please resend if so
as I missed it.

Thanks,
Simon