Message ID | 1541396866-4425-1-git-send-email-j-keerthy@ti.com |
---|---|
State | Superseded |
Delegated to: | Tom Rini |
Headers | show |
Series | [U-Boot,1/2] core: ofnode: Fix ofnode_get_addr_size_index function | expand |
On 4 November 2018 at 22:47, Keerthy <j-keerthy@ti.com> wrote: > Currently the else part of ofnode_get_addr_size_index function > does not fetch addresses based on the index but rather just > returns the base address. Fix that. > > Signed-off-by: Keerthy <j-keerthy@ti.com> > --- > drivers/core/ofnode.c | 13 ++++++++----- > 1 file changed, 8 insertions(+), 5 deletions(-) Reviewed-by: Simon Glass <sjg@chromium.org> This should really have a sandbox test, e.g. see dm_test_fdt_remap_addr_flat,() for a test that relies on flagtree.
On Tue, 13 Nov 2018 at 12:53, Simon Glass <sjg@chromium.org> wrote: > > On 4 November 2018 at 22:47, Keerthy <j-keerthy@ti.com> wrote: > > Currently the else part of ofnode_get_addr_size_index function > > does not fetch addresses based on the index but rather just > > returns the base address. Fix that. > > > > Signed-off-by: Keerthy <j-keerthy@ti.com> > > --- > > drivers/core/ofnode.c | 13 ++++++++----- > > 1 file changed, 8 insertions(+), 5 deletions(-) > > Reviewed-by: Simon Glass <sjg@chromium.org> > > This should really have a sandbox test, e.g. see > dm_test_fdt_remap_addr_flat,() for a test that relies on flagtree. Reviewed-by: Simon Glass <sjg@chromium.org>
Hi Keerthy, On Fri, 16 Nov 2018 at 17:09, Simon Glass <sjg@chromium.org> wrote: > > On Tue, 13 Nov 2018 at 12:53, Simon Glass <sjg@chromium.org> wrote: > > > > On 4 November 2018 at 22:47, Keerthy <j-keerthy@ti.com> wrote: > > > Currently the else part of ofnode_get_addr_size_index function > > > does not fetch addresses based on the index but rather just > > > returns the base address. Fix that. > > > > > > Signed-off-by: Keerthy <j-keerthy@ti.com> > > > --- > > > drivers/core/ofnode.c | 13 ++++++++----- > > > 1 file changed, 8 insertions(+), 5 deletions(-) > > > > Reviewed-by: Simon Glass <sjg@chromium.org> > > > > This should really have a sandbox test, e.g. see > > dm_test_fdt_remap_addr_flat,() for a test that relies on flagtree. > > Reviewed-by: Simon Glass <sjg@chromium.org> Unfortunately this patch causes build errors with sandbox. Can you please take a look? I skip the second patch in this series too, since it depends on this one. Regards, Simon
On 11/19/2018 2:59 AM, Simon Glass wrote: > Hi Keerthy, > > On Fri, 16 Nov 2018 at 17:09, Simon Glass <sjg@chromium.org> wrote: >> >> On Tue, 13 Nov 2018 at 12:53, Simon Glass <sjg@chromium.org> wrote: >>> >>> On 4 November 2018 at 22:47, Keerthy <j-keerthy@ti.com> wrote: >>>> Currently the else part of ofnode_get_addr_size_index function >>>> does not fetch addresses based on the index but rather just >>>> returns the base address. Fix that. >>>> >>>> Signed-off-by: Keerthy <j-keerthy@ti.com> >>>> --- >>>> drivers/core/ofnode.c | 13 ++++++++----- >>>> 1 file changed, 8 insertions(+), 5 deletions(-) >>> >>> Reviewed-by: Simon Glass <sjg@chromium.org> >>> >>> This should really have a sandbox test, e.g. see >>> dm_test_fdt_remap_addr_flat,() for a test that relies on flagtree. >> >> Reviewed-by: Simon Glass <sjg@chromium.org> > > Unfortunately this patch causes build errors with sandbox. Can you > please take a look? I skip the second patch in this series too, since > it depends on this one. Sure. Thanks for catching it. > > Regards, > Simon >
On 11/19/2018 10:47 AM, J, KEERTHY wrote: > > > On 11/19/2018 2:59 AM, Simon Glass wrote: >> Hi Keerthy, >> >> On Fri, 16 Nov 2018 at 17:09, Simon Glass <sjg@chromium.org> wrote: >>> >>> On Tue, 13 Nov 2018 at 12:53, Simon Glass <sjg@chromium.org> wrote: >>>> >>>> On 4 November 2018 at 22:47, Keerthy <j-keerthy@ti.com> wrote: >>>>> Currently the else part of ofnode_get_addr_size_index function >>>>> does not fetch addresses based on the index but rather just >>>>> returns the base address. Fix that. >>>>> >>>>> Signed-off-by: Keerthy <j-keerthy@ti.com> >>>>> --- >>>>> drivers/core/ofnode.c | 13 ++++++++----- >>>>> 1 file changed, 8 insertions(+), 5 deletions(-) >>>> >>>> Reviewed-by: Simon Glass <sjg@chromium.org> >>>> >>>> This should really have a sandbox test, e.g. see >>>> dm_test_fdt_remap_addr_flat,() for a test that relies on flagtree. >>> >>> Reviewed-by: Simon Glass <sjg@chromium.org> >> >> Unfortunately this patch causes build errors with sandbox. Can you >> please take a look? I skip the second patch in this series too, since >> it depends on this one. > > Sure. Thanks for catching it. Simon, Sent a v3 with sandbox_defconfig warnings fixed. Please let me know if they are fine. Thanks, Keerthy > >> >> Regards, >> Simon >>
diff --git a/drivers/core/ofnode.c b/drivers/core/ofnode.c index b7b7ad3..c80e1cb 100644 --- a/drivers/core/ofnode.c +++ b/drivers/core/ofnode.c @@ -253,12 +253,12 @@ int ofnode_read_size(ofnode node, const char *propname) fdt_addr_t ofnode_get_addr_index(ofnode node, int index) { + int na, ns; + u64 size; + if (ofnode_is_np(node)) { const __be32 *prop_val; uint flags; - u64 size; - int na; - int ns; prop_val = of_get_address(ofnode_to_np(node), index, &size, &flags); @@ -274,8 +274,11 @@ fdt_addr_t ofnode_get_addr_index(ofnode node, int index) return of_read_number(prop_val, na); } } else { - return fdt_get_base_address(gd->fdt_blob, - ofnode_to_offset(node)); + na = ofnode_read_simple_addr_cells(ofnode_get_parent(node)); + ns = ofnode_read_simple_size_cells(ofnode_get_parent(node)); + return fdtdec_get_addr_size_fixed(gd->fdt_blob, + ofnode_to_offset(node), "reg", + index, na, ns, &size, true); } return FDT_ADDR_T_NONE;
Currently the else part of ofnode_get_addr_size_index function does not fetch addresses based on the index but rather just returns the base address. Fix that. Signed-off-by: Keerthy <j-keerthy@ti.com> --- drivers/core/ofnode.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-)