summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMario Six <mario.six@gdsys.cc>2018-04-27 14:52:57 +0200
committerJoe Hershberger <joe.hershberger@ni.com>2018-06-13 13:54:15 -0500
commit5e9d9abe08745b54262fb26e2d6fcccbea61e409 (patch)
treecfe78b75441e5800caa678a500aa4b90dbec7274
parent3ce4304205eac2bc19b9fd67651d65f7d19d3cf2 (diff)
tsec: Fix reading phy registers from DT
Bus translations should be applied when reading the address of the sgmii phy registers from the DT. Use ofnode_get_addr_index instead of the plain ofnode_read_u32_default to fix this. Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
-rw-r--r--drivers/net/tsec.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/net/tsec.c b/drivers/net/tsec.c
index 37840420fa3..03a46da2f8a 100644
--- a/drivers/net/tsec.c
+++ b/drivers/net/tsec.c
@@ -796,8 +796,9 @@ int tsec_probe(struct udevice *dev)
parent = ofnode_get_parent(phandle_args.node);
if (ofnode_valid(parent)) {
- int reg = ofnode_read_u32_default(parent, "reg", 0);
- priv->phyregs_sgmii = (struct tsec_mii_mng *)(reg + 0x520);
+ int reg = ofnode_get_addr_index(parent, 0);
+
+ priv->phyregs_sgmii = (struct tsec_mii_mng *)reg;
} else {
debug("No parent node for PHY?\n");
return -ENOENT;