diff options
author | Mario Six <mario.six@gdsys.cc> | 2018-04-27 14:52:57 +0200 |
---|---|---|
committer | Joe Hershberger <joe.hershberger@ni.com> | 2018-06-13 13:54:15 -0500 |
commit | 5e9d9abe08745b54262fb26e2d6fcccbea61e409 (patch) | |
tree | cfe78b75441e5800caa678a500aa4b90dbec7274 | |
parent | 3ce4304205eac2bc19b9fd67651d65f7d19d3cf2 (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.c | 5 |
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; |