public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Vladimir Oltean <olteanv@gmail.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v3 2/9] net: tsec: Fix offset of MDIO registers for DM_ETH
Date: Fri, 19 Jul 2019 00:29:54 +0300	[thread overview]
Message-ID: <20190718213001.24815-3-olteanv@gmail.com> (raw)
In-Reply-To: <20190718213001.24815-1-olteanv@gmail.com>

By convention, the eTSEC MDIO controller nodes are defined in DT at
0x2d24000 and 0x2d50000, but actually U-Boot does not touch the
interrupt portion of the register map (MDIO_IEVENTM, MDIO_IMASKM,
MDIO_EMAPM).

That leaves only the MDIO bus registers (MDIO_MIIMCFG, MDIO_MIIMCOM,
MDIO_MIIMADD, MDIO_MIIMADD, MDIO_MIIMCON, MDIO_MIIMSTAT) which start at
the 0x520 offset.

So shift the DT-defined register map by the offset of MDIO_MIIMCFG when
mapping the MDIO bus registers.

Signed-off-by: Vladimir Oltean <olteanv@gmail.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
---
Changes from v2:

None.

Changes from v1:

None.

 drivers/net/tsec.c | 13 +++++++------
 include/tsec.h     |  4 +++-
 2 files changed, 10 insertions(+), 7 deletions(-)

diff --git a/drivers/net/tsec.c b/drivers/net/tsec.c
index 53eb5470f4c8..576398676af7 100644
--- a/drivers/net/tsec.c
+++ b/drivers/net/tsec.c
@@ -801,6 +801,7 @@ int tsec_probe(struct udevice *dev)
 	u32 tbiaddr = CONFIG_SYS_TBIPA_VALUE;
 	ofnode parent;
 	const char *phy_mode;
+	fdt_addr_t reg;
 	int ret;
 
 	pdata->iobase = (phys_addr_t)dev_read_addr(dev);
@@ -817,15 +818,15 @@ int tsec_probe(struct udevice *dev)
 	}
 
 	parent = ofnode_get_parent(phandle_args.node);
-	if (ofnode_valid(parent)) {
-		int reg = ofnode_get_addr_index(parent, 0);
-
-		priv->phyregs_sgmii = (struct tsec_mii_mng *)reg;
-	} else {
-		debug("No parent node for PHY?\n");
+	if (!ofnode_valid(parent)) {
+		printf("No parent node for PHY?\n");
 		return -ENOENT;
 	}
 
+	reg = ofnode_get_addr_index(parent, 0);
+	priv->phyregs_sgmii = (struct tsec_mii_mng *)
+			(reg + TSEC_MDIO_REGS_OFFSET);
+
 	ret = dev_read_phandle_with_args(dev, "tbi-handle", NULL, 0, 0,
 					 &phandle_args);
 	if (ret == 0)
diff --git a/include/tsec.h b/include/tsec.h
index e90095121bdd..b17fa957df5b 100644
--- a/include/tsec.h
+++ b/include/tsec.h
@@ -17,6 +17,8 @@
 #include <config.h>
 #include <phy.h>
 
+#define TSEC_MDIO_REGS_OFFSET	0x520
+
 #ifndef CONFIG_DM_ETH
 
 #ifdef CONFIG_ARCH_LS1021A
@@ -27,7 +29,7 @@
 #define TSEC_MDIO_OFFSET	0x01000
 #endif
 
-#define CONFIG_SYS_MDIO_BASE_ADDR (MDIO_BASE_ADDR + 0x520)
+#define CONFIG_SYS_MDIO_BASE_ADDR (MDIO_BASE_ADDR + TSEC_MDIO_REGS_OFFSET)
 
 #define TSEC_GET_REGS(num, offset) \
 	(struct tsec __iomem *)\
-- 
2.17.1

  parent reply	other threads:[~2019-07-18 21:29 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-07-18 21:29 [U-Boot] [PATCH v3 0/9] NXP LS1021A-TSN Board Vladimir Oltean
2019-07-18 21:29 ` [U-Boot] [PATCH v3 1/9] net: tsec: Refactor the readout of the tbi-handle property Vladimir Oltean
2019-07-25 18:42   ` [U-Boot] " Joe Hershberger
2019-07-18 21:29 ` Vladimir Oltean [this message]
2019-07-23  6:23   ` [U-Boot] [PATCH v3 2/9] net: tsec: Fix offset of MDIO registers for DM_ETH Bin Meng
2019-07-25 18:42   ` [U-Boot] " Joe Hershberger
2019-07-18 21:29 ` [U-Boot] [PATCH v3 3/9] net: tsec: Reverse Christmas tree notation Vladimir Oltean
2019-07-25 18:42   ` [U-Boot] " Joe Hershberger
2019-07-18 21:29 ` [U-Boot] [PATCH v3 4/9] net: tsec: Make errors visible Vladimir Oltean
2019-07-25 18:42   ` [U-Boot] " Joe Hershberger
2019-07-18 21:29 ` [U-Boot] [PATCH v3 5/9] net: tsec: Common handling of MAC station address for DM_ETH Vladimir Oltean
2019-07-25 18:42   ` [U-Boot] " Joe Hershberger
2019-07-18 21:29 ` [U-Boot] [PATCH v3 6/9] net: tsec: Change compatible strings to match Linux Vladimir Oltean
2019-07-23  3:30   ` Joe Hershberger
2019-07-25 18:42   ` [U-Boot] " Joe Hershberger
2019-07-18 21:29 ` [U-Boot] [PATCH v3 7/9] arm: ls1021atwr: Convert to use driver model TSEC driver Vladimir Oltean
2019-07-25 18:42   ` [U-Boot] " Joe Hershberger
2019-07-18 21:30 ` [U-Boot] [PATCH v3 8/9] configs: ls1021atwr: Fix distro_bootcmd for QSPI boot Vladimir Oltean
2019-07-23  3:31   ` Joe Hershberger
2019-07-25 18:42   ` [U-Boot] " Joe Hershberger
2019-07-18 21:30 ` [U-Boot] [PATCH v3 9/9] Add support for the NXP LS1021A-TSN board Vladimir Oltean
2019-07-23  3:35   ` Joe Hershberger
2019-07-23  6:25   ` Bin Meng
2019-07-25 18:42   ` [U-Boot] " Joe Hershberger
2019-07-25 20:30     ` Vladimir Oltean
2019-07-23  0:15 ` [U-Boot] [PATCH v3 0/9] NXP LS1021A-TSN Board Joe Hershberger
2019-07-23  6:07   ` Vladimir Oltean
2019-07-23  7:37     ` Joe Hershberger
2019-07-24 15:37       ` Vladimir Oltean
2019-07-24 18:56         ` Joe Hershberger
2019-07-24 20:54           ` Vladimir Oltean
2019-08-14  9:37           ` Prabhakar Kushwaha
2019-08-14  9:52             ` Vladimir Oltean

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190718213001.24815-3-olteanv@gmail.com \
    --to=olteanv@gmail.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox