[U-Boot] [PATCH] dm: core: Kconfig: set OF_TRANSLATE default value to n

Mugunthan V N mugunthanvnm at ti.com
Thu Nov 12 10:38:56 CET 2015


On Friday 06 November 2015 09:11 PM, Stephen Warren wrote:
> On 11/06/2015 05:19 AM, Stefan Roese wrote:
>> +Stephan Warren & Thomas Chou
>>
>> On 06.11.2015 13:08, Simon Glass wrote:
>>> +Stefan
>>>
>>> Hi Mugunthan,
>>>
>>> On 4 November 2015 at 07:25, Mugunthan V N <mugunthanvnm at ti.com> wrote:
>>>> Based on the OF_TRANSLATE Kconfig description, this is required
>>>> only on platforms with complex "ranges" in the DT nodes. For
>>>> simpler platforms using SIMPLE_BUS should be sufficient. Since
>>>> this a set to default y, simple bus is never used in any
>>>> platform. So make the default value as "n" and enable
>>>> OF_TRANSLATE only on required platform.
>>>
>>> How do you know it is not used? This is surprising because Stefan
>>> presumably added it to fix something.
>>
>> I assume Mugunthan meant, that simple bus is never used. This
>> is not quite correct, as its at least used per default in the
>> SPL (because of size reasons).
>>
>> And yes, this translation via fdt_translate_address() is needed.
>> At least for some platforms, like mvebu & nios2 (IIRC). Stephen
>> also made some quite striking comments about this a few weeks
>> ago. And I really think that we should make use of this function
>> per default. Platforms that know for sure that they don't need
>> this functionality can always disable it selectively.
>>
>> Mugunthan, why do you want to disable this functionality? Does
>> it cause problems on your platform? If yes, which ones?
> 
> Processing of ranges is a fundamental part of handling DT in general. It
> should be enabled by default. If there are well-researched cases where
> (a) including the code is problematic (e.g. due to code size
> restrictions) and (b) someone is watching the DTs processed on those
> platforms like a hawk to ensure no ranges properties are introduced into
> the DT, *then* we could make a special-case exception to disable the
> feature in those specific cases. As such, I think enable-by-default,
> disable-when-chosen is the appropriate default.

In the Kconfig help it is mentioned that this is needed only on some
platforms which uses complex ranges, so when I tried disabling
OF_TRANSLATE on omap platform it still works.

Since OF_TRANSLATE is defined as 'y' as default, SIMPLE_BUS is never
used until OF_TRANSLATE is set to 'n' in defconfig. So I thought of
making the default kconfig option as 'n' and select this which ever
platform needs it like mvebu and nios2.

But if community wants OF_TRANSLATE to be used by default, I am okay to
drop this patch.

Regards
Mugunthan V N


More information about the U-Boot mailing list