diff options
Diffstat (limited to 'include/dm/read.h')
-rw-r--r-- | include/dm/read.h | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/include/dm/read.h b/include/dm/read.h index 487ec9e9c93..cac7dd5f187 100644 --- a/include/dm/read.h +++ b/include/dm/read.h @@ -878,14 +878,16 @@ static inline int dev_count_phandle_with_args(const struct udevice *dev, static inline int dev_read_addr_cells(const struct udevice *dev) { - /* NOTE: this call should walk up the parent stack */ - return fdt_address_cells(gd->fdt_blob, dev_of_offset(dev)); + int parent = fdt_parent_offset(gd->fdt_blob, dev_of_offset(dev)); + + return fdt_address_cells(gd->fdt_blob, parent); } static inline int dev_read_size_cells(const struct udevice *dev) { - /* NOTE: this call should walk up the parent stack */ - return fdt_size_cells(gd->fdt_blob, dev_of_offset(dev)); + int parent = fdt_parent_offset(gd->fdt_blob, dev_of_offset(dev)); + + return fdt_size_cells(gd->fdt_blob, parent); } static inline int dev_read_simple_addr_cells(const struct udevice *dev) |