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

Michal Simek
2015-02-10T09:55:29Z

On 02/09/2015 11:14 PM, Simon Glass wrote:
> Hi MIchal,
>
> On 9 February 2015 at 03:27, Michal Simek <michal.simek@xilinx.com> wrote:
>> Hi Simon,
>>
>> On 02/06/2015 06:45 AM, Simon Glass wrote:
>>> On 4 February 2015 at 23:31, Michal Simek <michal.simek@xilinx.com> wrote:
>>>> Hi,
>>>>
>>>> On 02/05/2015 04:07 AM, Simon Glass wrote:
>>>>> 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.
>>>>
>>>> Graeme has answered it + my response here.
>>>> http://lists.denx.de/pipermail/u-boot/2015-February/203911.html
>>>>
>>>> removing: When all platforms are moved to REL/RELA we can remove this
>>>> manual reloc option.
>>>
>>> With a heavy heart:
>>>
>>> Acked-by: Simon Glass <sjg@chromium.org>
>>>
>>
>> Are you going to take this patch to your DM tree?
>
> I'm hoping to bring in the Kconfig patches and send a pull request
> this week, so could do that if it suits. But it is up to you, so let's
> do whatever makes your life easier. Let me know.

works for me. Taking it via your tree is the right way to reach master branch.

Thanks,
Michal