diff options
author | Marek Vasut | 2020-03-21 16:45:29 +0100 |
---|---|---|
committer | marex | 2020-03-30 03:49:23 +0200 |
commit | 061ef41fcf7744a56e0778f16e390fc8323e3383 (patch) | |
tree | 20f81dcd330f9fc8a9e65d98e7b53d4e28f5b746 /drivers/clk/renesas/clk-rcar-gen2.c | |
parent | f455d78a197d7d30b0ffe2c5a94878d9e3abc782 (diff) |
clk: renesas: Switch to fdtdec_get_addr_size_auto_noparent() on Gen2
The fdtdec_get_addr() does not take into account values set in #address-cells
and #size-cells , but assumes them to be 1 for 32bit systems and 2 for 64bit
systems. This is true for most DTs, however there are exceptions. Switch to
fdtdec_get_addr_size_auto_noparent(), which takes the #address/size-cells
values into consideration, otherwise the reset controller node register
offset is incorrectly parsed.
Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
Diffstat (limited to 'drivers/clk/renesas/clk-rcar-gen2.c')
-rw-r--r-- | drivers/clk/renesas/clk-rcar-gen2.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/clk/renesas/clk-rcar-gen2.c b/drivers/clk/renesas/clk-rcar-gen2.c index 13111b341af..bfd7620dae1 100644 --- a/drivers/clk/renesas/clk-rcar-gen2.c +++ b/drivers/clk/renesas/clk-rcar-gen2.c @@ -291,7 +291,8 @@ int gen2_clk_probe(struct udevice *dev) if (ret < 0) return ret; - rst_base = fdtdec_get_addr(gd->fdt_blob, ret, "reg"); + rst_base = fdtdec_get_addr_size_auto_noparent(gd->fdt_blob, ret, "reg", + 0, NULL, false); if (rst_base == FDT_ADDR_T_NONE) return -EINVAL; |