All of lore.kernel.org
 help / color / mirror / Atom feed
From: Madalin-cristian Bucur <madalin.bucur@nxp.com>
To: Andrew Lunn <andrew@lunn.ch>,
	"f.fainelli@gmail.com" <f.fainelli@gmail.com>,
	"netdev@vger.kernel.org" <netdev@vger.kernel.org>
Cc: "u-boot@lists.denx.de" <u-boot@lists.denx.de>,
	Bhaskar Upadhaya <bhaskar.upadhaya@nxp.com>
Subject: [RFC] Support for SGMII 2500
Date: Tue, 28 Nov 2017 07:25:48 +0000	[thread overview]
Message-ID: <DB3PR0402MB38492E028D1B09AFE15A5D4EEC3A0@DB3PR0402MB3849.eurprd04.prod.outlook.com> (raw)

Hi,

There is a disconnect between the SGMII 2500 support in u-boot and Linux.
Bhaskar is trying to add support for a SGMII interface working at 2.5Gbps
by using the PHY connection type "sgmii-2500" in the device tree:

	phy-connection-type = "sgmii-2500";

This is supported by u-boot, in include/phy.h:

	typedef enum {
	        PHY_INTERFACE_MODE_MII,
	        PHY_INTERFACE_MODE_GMII,
	        PHY_INTERFACE_MODE_SGMII,
	        PHY_INTERFACE_MODE_SGMII_2500,
	...

	static const char *phy_interface_strings[] = {
	        [PHY_INTERFACE_MODE_MII]                = "mii",
	        [PHY_INTERFACE_MODE_GMII]               = "gmii",
	        [PHY_INTERFACE_MODE_SGMII]              = "sgmii",
	        [PHY_INTERFACE_MODE_SGMII_2500]         = "sgmii-2500",
	...

since this commit:

	commit c35f8693942d8284c635592f263a0fe11abe1d1d	
	Author: Shengzhou Liu <Shengzhou.Liu@freescale.com>
	Date:   Thu Oct 23 17:20:57 2014 +0800

	    net/fm: add 2.5G SGMII support

	    As auto-negotiation is not supported for 2.5G SGMII, we need
	    to add a new type PHY_INTERFACE_MODE_SGMII_2500 to differentiate
	    SGMII-1G and SGMII-2.5G with different setting for auto-negotiation.

	    Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com>
	    Signed-off-by: Shengzhou Liu <Shengzhou.Liu@freescale.com>
	    Reviewed-by: York Sun <yorksun@freescale.com>

In the Linux kernel we do not have a separate define for SGMII_2500, should we add
something like the change below?

Thanks,
Madalin

---
diff --git a/include/linux/phy.h b/include/linux/phy.h
index dc82a07..086f7a3 100644
--- a/include/linux/phy.h
+++ b/include/linux/phy.h
@@ -68,6 +68,7 @@ typedef enum {
	PHY_INTERFACE_MODE_MII,
	PHY_INTERFACE_MODE_GMII,
	PHY_INTERFACE_MODE_SGMII,
+	PHY_INTERFACE_MODE_SGMII_2500,
	PHY_INTERFACE_MODE_TBI,
	PHY_INTERFACE_MODE_REVMII,
	PHY_INTERFACE_MODE_RMII,
@@ -123,6 +124,8 @@ static inline const char *phy_modes(phy_interface_t interface)
		return "gmii";
	case PHY_INTERFACE_MODE_SGMII:
		return "sgmii";
+	case PHY_INTERFACE_MODE_SGMII_2500:
+		return "sgmii-2500";
	case PHY_INTERFACE_MODE_TBI:
		return "tbi";
	case PHY_INTERFACE_MODE_REVMII:
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot

WARNING: multiple messages have this Message-ID (diff)
From: Madalin-cristian Bucur <madalin.bucur@nxp.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [RFC] Support for SGMII 2500
Date: Tue, 28 Nov 2017 07:25:48 +0000	[thread overview]
Message-ID: <DB3PR0402MB38492E028D1B09AFE15A5D4EEC3A0@DB3PR0402MB3849.eurprd04.prod.outlook.com> (raw)

Hi,

There is a disconnect between the SGMII 2500 support in u-boot and Linux.
Bhaskar is trying to add support for a SGMII interface working at 2.5Gbps
by using the PHY connection type "sgmii-2500" in the device tree:

	phy-connection-type = "sgmii-2500";

This is supported by u-boot, in include/phy.h:

	typedef enum {
	        PHY_INTERFACE_MODE_MII,
	        PHY_INTERFACE_MODE_GMII,
	        PHY_INTERFACE_MODE_SGMII,
	        PHY_INTERFACE_MODE_SGMII_2500,
	...

	static const char *phy_interface_strings[] = {
	        [PHY_INTERFACE_MODE_MII]                = "mii",
	        [PHY_INTERFACE_MODE_GMII]               = "gmii",
	        [PHY_INTERFACE_MODE_SGMII]              = "sgmii",
	        [PHY_INTERFACE_MODE_SGMII_2500]         = "sgmii-2500",
	...

since this commit:

	commit c35f8693942d8284c635592f263a0fe11abe1d1d	
	Author: Shengzhou Liu <Shengzhou.Liu@freescale.com>
	Date:   Thu Oct 23 17:20:57 2014 +0800

	    net/fm: add 2.5G SGMII support

	    As auto-negotiation is not supported for 2.5G SGMII, we need
	    to add a new type PHY_INTERFACE_MODE_SGMII_2500 to differentiate
	    SGMII-1G and SGMII-2.5G with different setting for auto-negotiation.

	    Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com>
	    Signed-off-by: Shengzhou Liu <Shengzhou.Liu@freescale.com>
	    Reviewed-by: York Sun <yorksun@freescale.com>

In the Linux kernel we do not have a separate define for SGMII_2500, should we add
something like the change below?

Thanks,
Madalin

---
diff --git a/include/linux/phy.h b/include/linux/phy.h
index dc82a07..086f7a3 100644
--- a/include/linux/phy.h
+++ b/include/linux/phy.h
@@ -68,6 +68,7 @@ typedef enum {
	PHY_INTERFACE_MODE_MII,
	PHY_INTERFACE_MODE_GMII,
	PHY_INTERFACE_MODE_SGMII,
+	PHY_INTERFACE_MODE_SGMII_2500,
	PHY_INTERFACE_MODE_TBI,
	PHY_INTERFACE_MODE_REVMII,
	PHY_INTERFACE_MODE_RMII,
@@ -123,6 +124,8 @@ static inline const char *phy_modes(phy_interface_t interface)
		return "gmii";
	case PHY_INTERFACE_MODE_SGMII:
		return "sgmii";
+	case PHY_INTERFACE_MODE_SGMII_2500:
+		return "sgmii-2500";
	case PHY_INTERFACE_MODE_TBI:
		return "tbi";
	case PHY_INTERFACE_MODE_REVMII:

             reply	other threads:[~2017-11-28  7:25 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-11-28  7:25 Madalin-cristian Bucur [this message]
2017-11-28  7:25 ` [U-Boot] [RFC] Support for SGMII 2500 Madalin-cristian Bucur
2017-11-28  7:27 ` Bhaskar Upadhaya
2017-11-28  7:27   ` [U-Boot] " Bhaskar Upadhaya
2017-11-28  8:16   ` Prabhakar Kushwaha
2017-11-28  8:16     ` [U-Boot] " Prabhakar Kushwaha
2017-11-28 13:30 ` Andrew Lunn
2017-11-28 13:30   ` [U-Boot] " Andrew Lunn
2017-11-28 13:55   ` Madalin-cristian Bucur
2017-11-28 13:55     ` [U-Boot] " Madalin-cristian Bucur
2017-11-28 14:13     ` Andrew Lunn
2017-11-28 14:13       ` [U-Boot] " Andrew Lunn
2017-11-28 15:37       ` Madalin-cristian Bucur
2017-11-28 15:37         ` [U-Boot] " Madalin-cristian Bucur
2017-11-28 17:51         ` Florian Fainelli
2017-11-28 17:51           ` [U-Boot] " Florian Fainelli

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=DB3PR0402MB38492E028D1B09AFE15A5D4EEC3A0@DB3PR0402MB3849.eurprd04.prod.outlook.com \
    --to=madalin.bucur@nxp.com \
    --cc=andrew@lunn.ch \
    --cc=bhaskar.upadhaya@nxp.com \
    --cc=f.fainelli@gmail.com \
    --cc=netdev@vger.kernel.org \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.