[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Tue, 5 May 2015 12:54:10 +0000
From: John Linn <john.linn@...inx.com>
To: Michal Simek <michals@...inx.com>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>
CC: Srikanth Thokala <srikanth.thokala@...inx.com>,
Soren Brinkmann <sorenb@...inx.com>,
"monstr@...str.eu" <monstr@...str.eu>,
Anirudha Sarangi <anirudh@...inx.com>
Subject: RE: [PATCH 01/12] net: axienet: Support for RGMII
Hi Michal,
I removed the mailing lists.
One of the issues we see in the field is that the value of PHY_INTERFACE_MODE_RGMII_ID causes a delay on the RX and TX side in the PHY to align the clock and the data. Yet this does not work on every board such that PHY_INTERFACE_MODE_RGMII_RXID or PHY_INTERFACE_MODE_RGMII_TXID must be used.
I realize that's a pain. Sometimes the PHY driver allows register values (like Marvell) to be setup on the PHY node which helps, but not always. It seems that the information in the device tree is not adequate to describe the hardware. I've not looked to see what others do as maybe this is a common problem, just thought I should pass on the problem.
Thanks
John
-----Original Message-----
From: Michal Simek [mailto:monstr@...str.eu] On Behalf Of Michal Simek
Sent: Tuesday, May 05, 2015 4:26 AM
To: netdev@...r.kernel.org
Cc: Srikanth Thokala; Soren Brinkmann; monstr@...str.eu; John Linn; Anirudha Sarangi; linux-kernel@...r.kernel.org; linux-arm-kernel@...ts.infradead.org
Subject: [PATCH 01/12] net: axienet: Support for RGMII
From: Srikanth Thokala <srikanth.thokala@...inx.com>
This patch adds support for the RGMII. The h/w configuration parameter C_PHY_TYPE, which represents the interface configured in the design, is used to differentiate various interfaces supported by AXI Ethernet.
Signed-off-by: Srikanth Thokala <sthokal@...inx.com>
Signed-off-by: Michal Simek <michal.simek@...inx.com>
---
drivers/net/ethernet/xilinx/xilinx_axienet_main.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/xilinx/xilinx_axienet_main.c b/drivers/net/ethernet/xilinx/xilinx_axienet_main.c
index 28b7e7d9c272..0ab607732bb4 100644
--- a/drivers/net/ethernet/xilinx/xilinx_axienet_main.c
+++ b/drivers/net/ethernet/xilinx/xilinx_axienet_main.c
@@ -925,9 +925,16 @@ static int axienet_open(struct net_device *ndev)
return ret;
if (lp->phy_node) {
- lp->phy_dev = of_phy_connect(lp->ndev, lp->phy_node,
+ if (lp->phy_type == XAE_PHY_TYPE_GMII) {
+ lp->phy_dev = of_phy_connect(lp->ndev, lp->phy_node,
axienet_adjust_link, 0,
PHY_INTERFACE_MODE_GMII);
+ } else if (lp->phy_type == XAE_PHY_TYPE_RGMII_2_0) {
+ lp->phy_dev = of_phy_connect(lp->ndev, lp->phy_node,
+ axienet_adjust_link, 0,
+ PHY_INTERFACE_MODE_RGMII_ID);
+ }
+
if (!lp->phy_dev) {
dev_err(lp->dev, "of_phy_connect() failed\n");
return -ENODEV;
--
2.3.5
This email and any attachments are intended for the sole use of the named recipient(s) and contain(s) confidential information that may be proprietary, privileged or copyrighted under applicable law. If you are not the intended recipient, do not read, copy, or forward this email message or any attachments. Delete this email message and any attachments immediately.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists