[U-Boot] [PATCH] fdt: add new fdt address parsing functions

Simon Glass sjg at chromium.org
Tue Sep 15 21:17:26 CEST 2015


On 15 September 2015 at 01:55, Mugunthan V N <mugunthanvnm at ti.com> wrote:
> On Friday 11 September 2015 04:24 PM, Mugunthan V N wrote:
>> On Wednesday 09 September 2015 11:38 PM, Simon Glass wrote:
>>> Hi,
>>>
>>> On Monday, 7 September 2015, Mugunthan V N <mugunthanvnm at ti.com> wrote:
>>>>
>>>> On Friday 07 August 2015 03:01 AM, Stephen Warren wrote:
>>>>> From: Stephen Warren <swarren at nvidia.com>
>>>>>
>>>>> fdtdec_get_addr_size() hard-codes the number of cells used to represent
>>>>> an address or size in DT. This is incorrect in many cases depending on
>>>>> the DT binding for a particular node or property (e.g. it is incorrect
>>>>> for the "reg" property). In most cases, DT parsing code must use the
>>>>> properties #address-cells and #size-cells to parse addres properties.
>>>>>
>>>>> This change splits up the implementation of fdtdec_get_addr_size() so
>>>>> that the core logic can be used for both hard-coded and non-hard-coded
>>>>> cases. Various wrapper functions are implemented that support cases
>>>>> where hard-coded cell counts should or should not be used, and where
>>>>> the client does and doesn't know the parent node ID that contains the
>>>>> properties #address-cells and #size-cells.
>>>>>
>>>>> dev_get_addr() is updated to use the new functions.
>>>>>
>>>>> Core functionality in fdtdec_get_addr_size_fixed() is widely tested via
>>>>> fdtdec_get_addr_size(). I tested fdtdec_get_addr_size_auto_noparent() and
>>>>> dev_get_addr() by manually modifying the Tegra I2C driver to invoke them.
>>>>>
>>>>> Much of the core implementation of fdtdec_get_addr_size_fixed(),
>>>>> fdtdec_get_addr_size_auto_parent(), and
>>>>> fdtdec_get_addr_size_auto_noparent() comes from Thierry Reding's
>>>>> previous commit "fdt: Fix fdtdec_get_addr_size() for 64-bit".
>>>>
>>>> Tested this patch for cpsw ethernet dt migration to getting cpsw address
>>>> space. Also dropped *#define DEBUG* in lib/fdtdev.c file.
>>>>
>>>> Tested-by: Mugunthan V N <mugunthanvnm at ti.com>
>>>>
>>> Thanks for testing this. I would like to apply this - are there any
>>> other comments?
>>>
>>
>> There is no other comments apart from removing #define DEBUG
>>
>
> Simon
>
> Are you applying this patch?

Applied to u-boot-fdt.


More information about the U-Boot mailing list