aboutsummaryrefslogtreecommitdiff
path: root/drivers/clk
diff options
context:
space:
mode:
authorMarek Vasut <marek.vasut+renesas@gmail.com>2020-03-21 16:45:29 +0100
committermarex <marex@desktop.lan>2020-03-30 03:49:23 +0200
commit061ef41fcf7744a56e0778f16e390fc8323e3383 (patch)
tree20f81dcd330f9fc8a9e65d98e7b53d4e28f5b746 /drivers/clk
parentf455d78a197d7d30b0ffe2c5a94878d9e3abc782 (diff)
downloadu-boot-061ef41fcf7744a56e0778f16e390fc8323e3383.zip
u-boot-061ef41fcf7744a56e0778f16e390fc8323e3383.tar.gz
u-boot-061ef41fcf7744a56e0778f16e390fc8323e3383.tar.bz2
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')
-rw-r--r--drivers/clk/renesas/clk-rcar-gen2.c3
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 13111b3..bfd7620 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;