From: John Crispin <john@phrozen.org> To: "David S. Miller" <davem@davemloft.net> Cc: Felix Fietkau <nbd@openwrt.org>, Sean Wang <keyhaede@gmail.com>, netdev@vger.kernel.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org, John Crispin <john@phrozen.org> Subject: [PATCH V4 4/4] net-next: mediatek: properly handle RGMII modes Date: Fri, 3 Jun 2016 10:17:09 +0200 [thread overview] Message-ID: <1464941829-38712-5-git-send-email-john@phrozen.org> (raw) In-Reply-To: <1464941829-38712-1-git-send-email-john@phrozen.org> If an external Gigabit PHY is connected to either of the MACs we need to be able to tell the PHY to use a delay. Not doing so will result in heavy packet loss and/or data corruption when using PHYs such as the IC+ IP1001. We tell the PHY which MII delay mode to use via the devictree. The ethernet driver needs to be adapted to handle all 3 rgmii-*id modes in the same way as normal rgmii when setting up the MAC. Reviewed-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: John Crispin <john@phrozen.org> --- drivers/net/ethernet/mediatek/mtk_eth_soc.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/net/ethernet/mediatek/mtk_eth_soc.c b/drivers/net/ethernet/mediatek/mtk_eth_soc.c index 231d284..4763252 100644 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c @@ -236,6 +236,9 @@ static int mtk_phy_connect(struct mtk_mac *mac) return -ENODEV; switch (of_get_phy_mode(np)) { + case PHY_INTERFACE_MODE_RGMII_TXID: + case PHY_INTERFACE_MODE_RGMII_RXID: + case PHY_INTERFACE_MODE_RGMII_ID: case PHY_INTERFACE_MODE_RGMII: ge_mode = 0; break; -- 1.7.10.4
WARNING: multiple messages have this Message-ID (diff)
From: John Crispin <john-Pj+rj9U5foFAfugRpC6u6w@public.gmane.org> To: "David S. Miller" <davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org> Cc: Felix Fietkau <nbd-p3rKhJxN3npAfugRpC6u6w@public.gmane.org>, Sean Wang <keyhaede-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>, netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-mediatek-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org, John Crispin <john-Pj+rj9U5foFAfugRpC6u6w@public.gmane.org> Subject: [PATCH V4 4/4] net-next: mediatek: properly handle RGMII modes Date: Fri, 3 Jun 2016 10:17:09 +0200 [thread overview] Message-ID: <1464941829-38712-5-git-send-email-john@phrozen.org> (raw) In-Reply-To: <1464941829-38712-1-git-send-email-john-Pj+rj9U5foFAfugRpC6u6w@public.gmane.org> If an external Gigabit PHY is connected to either of the MACs we need to be able to tell the PHY to use a delay. Not doing so will result in heavy packet loss and/or data corruption when using PHYs such as the IC+ IP1001. We tell the PHY which MII delay mode to use via the devictree. The ethernet driver needs to be adapted to handle all 3 rgmii-*id modes in the same way as normal rgmii when setting up the MAC. Reviewed-by: Andrew Lunn <andrew-g2DYL2Zd6BY@public.gmane.org> Signed-off-by: John Crispin <john-Pj+rj9U5foFAfugRpC6u6w@public.gmane.org> --- drivers/net/ethernet/mediatek/mtk_eth_soc.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/net/ethernet/mediatek/mtk_eth_soc.c b/drivers/net/ethernet/mediatek/mtk_eth_soc.c index 231d284..4763252 100644 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c @@ -236,6 +236,9 @@ static int mtk_phy_connect(struct mtk_mac *mac) return -ENODEV; switch (of_get_phy_mode(np)) { + case PHY_INTERFACE_MODE_RGMII_TXID: + case PHY_INTERFACE_MODE_RGMII_RXID: + case PHY_INTERFACE_MODE_RGMII_ID: case PHY_INTERFACE_MODE_RGMII: ge_mode = 0; break; -- 1.7.10.4
next prev parent reply other threads:[~2016-06-03 8:18 UTC|newest] Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top 2016-06-03 8:17 [PATCH V4 0/4] net-next: mediatek: improve phy support John Crispin 2016-06-03 8:17 ` [PATCH V4 1/4] net-next: mediatek: use mdiobus_free() in favour of kfree() John Crispin 2016-06-03 8:17 ` [PATCH V4 2/4] net-next: mediatek: fix gigabit and flow control advertisement John Crispin 2016-06-03 8:17 ` John Crispin 2016-06-03 8:17 ` [PATCH V4 3/4] net-next: mediatek: add fixed-phy support John Crispin 2016-06-03 8:17 ` John Crispin 2016-06-03 8:17 ` John Crispin [this message] 2016-06-03 8:17 ` [PATCH V4 4/4] net-next: mediatek: properly handle RGMII modes John Crispin 2016-06-03 23:54 ` [PATCH V4 0/4] net-next: mediatek: improve phy support David Miller
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=1464941829-38712-5-git-send-email-john@phrozen.org \ --to=john@phrozen.org \ --cc=davem@davemloft.net \ --cc=keyhaede@gmail.com \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-mediatek@lists.infradead.org \ --cc=nbd@openwrt.org \ --cc=netdev@vger.kernel.org \ /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: linkBe 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.