From: Ansuel Smith <ansuelsmth@gmail.com>
To: Andrew Lunn <andrew@lunn.ch>,
Vivien Didelot <vivien.didelot@gmail.com>,
Florian Fainelli <f.fainelli@gmail.com>,
Vladimir Oltean <olteanv@gmail.com>,
"David S. Miller" <davem@davemloft.net>,
Jakub Kicinski <kuba@kernel.org>,
Rob Herring <robh+dt@kernel.org>,
Russell King <linux@armlinux.org.uk>,
netdev@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org
Cc: Ansuel Smith <ansuelsmth@gmail.com>
Subject: [net-next PATCH v4 07/13] net: dsa: qca8k: add explicit SGMII PLL enable
Date: Sun, 10 Oct 2021 13:15:50 +0200 [thread overview]
Message-ID: <20211010111556.30447-8-ansuelsmth@gmail.com> (raw)
In-Reply-To: <20211010111556.30447-1-ansuelsmth@gmail.com>
Support enabling PLL on the SGMII CPU port. Some device require this
special configuration or no traffic is transmitted and the switch
doesn't work at all. A dedicated binding is added to the CPU node
port to apply the correct reg on mac config.
Fail to correctly configure sgmii with qca8327 switch and warn if pll is
used on qca8337 with a revision greater than 1.
Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
---
drivers/net/dsa/qca8k.c | 16 ++++++++++++++--
1 file changed, 14 insertions(+), 2 deletions(-)
diff --git a/drivers/net/dsa/qca8k.c b/drivers/net/dsa/qca8k.c
index 126f20b0b94c..afdfbcbbdb52 100644
--- a/drivers/net/dsa/qca8k.c
+++ b/drivers/net/dsa/qca8k.c
@@ -1245,8 +1245,20 @@ qca8k_phylink_mac_config(struct dsa_switch *ds, int port, unsigned int mode,
if (ret)
return;
- val |= QCA8K_SGMII_EN_PLL | QCA8K_SGMII_EN_RX |
- QCA8K_SGMII_EN_TX | QCA8K_SGMII_EN_SD;
+ val |= QCA8K_SGMII_EN_SD;
+
+ if (of_property_read_bool(dp->dn, "qca,sgmii-enable-pll")) {
+ if (priv->switch_id == QCA8K_ID_QCA8327) {
+ dev_err(priv->dev, "SGMII PLL should NOT be enabled for qca8327. Aborting enabling");
+ return;
+ }
+
+ if (priv->switch_revision < 2)
+ dev_warn(priv->dev, "SGMII PLL should NOT be enabled for qca8337 with revision 2 or more.");
+
+ val |= QCA8K_SGMII_EN_PLL | QCA8K_SGMII_EN_RX |
+ QCA8K_SGMII_EN_TX;
+ }
if (dsa_is_cpu_port(ds, port)) {
/* CPU port, we're talking to the CPU MAC, be a PHY */
--
2.32.0
next prev parent reply other threads:[~2021-10-10 11:16 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-10-10 11:15 [net-next PATCH v4 00/13] Multiple improvement for qca8337 switch Ansuel Smith
2021-10-10 11:15 ` [net-next PATCH v4 01/13] net: dsa: qca8k: add mac_power_sel support Ansuel Smith
2021-10-10 19:42 ` Vladimir Oltean
2021-10-10 11:15 ` [net-next PATCH v4 02/13] net: dsa: qca8k: add support for sgmii falling edge Ansuel Smith
2021-10-10 12:05 ` Vladimir Oltean
2021-10-10 12:10 ` Ansuel Smith
2021-10-10 12:50 ` Vladimir Oltean
2021-10-10 11:15 ` [net-next PATCH v4 03/13] dt-bindings: net: dsa: qca8k: Add MAC swap and clock phase properties Ansuel Smith
2021-10-10 12:07 ` Vladimir Oltean
2021-10-10 12:11 ` Ansuel Smith
2021-10-10 11:15 ` [net-next PATCH v4 04/13] drivers: net: dsa: qca8k: add support for cpu port 6 Ansuel Smith
2021-10-10 12:42 ` Vladimir Oltean
2021-10-10 13:22 ` Ansuel Smith
2021-10-11 8:17 ` Jonathan McDowell
2021-10-10 11:15 ` [net-next PATCH v4 05/13] dt-bindings: net: dsa: qca8k: Document support for CPU " Ansuel Smith
2021-10-10 11:15 ` [net-next PATCH v4 06/13] net: dsa: qca8k: move rgmii delay detection to phylink mac_config Ansuel Smith
2021-10-10 12:47 ` Vladimir Oltean
2021-10-10 13:28 ` Ansuel Smith
2021-10-10 18:11 ` Vladimir Oltean
2021-10-10 18:18 ` Ansuel Smith
2021-10-10 15:18 ` Andrew Lunn
2021-10-10 15:53 ` Vladimir Oltean
2021-10-10 11:15 ` Ansuel Smith [this message]
2021-10-10 11:15 ` [net-next PATCH v4 08/13] dt-bindings: net: dsa: qca8k: Document qca,sgmii-enable-pll Ansuel Smith
2021-10-10 11:15 ` [net-next PATCH v4 09/13] drivers: net: dsa: qca8k: add support for pws config reg Ansuel Smith
2021-10-10 11:15 ` [net-next PATCH v4 10/13] dt-bindings: net: dsa: qca8k: document open drain binding Ansuel Smith
2021-10-10 12:54 ` Vladimir Oltean
2021-10-10 11:15 ` [net-next PATCH v4 11/13] drivers: net: dsa: qca8k: add support for QCA8328 Ansuel Smith
2021-10-10 11:15 ` [net-next PATCH v4 12/13] dt-bindings: net: dsa: qca8k: document support for qca8328 Ansuel Smith
2021-10-10 11:15 ` [net-next PATCH v4 13/13] drivers: net: dsa: qca8k: set internal delay also for sgmii Ansuel Smith
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=20211010111556.30447-8-ansuelsmth@gmail.com \
--to=ansuelsmth@gmail.com \
--cc=andrew@lunn.ch \
--cc=davem@davemloft.net \
--cc=devicetree@vger.kernel.org \
--cc=f.fainelli@gmail.com \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@armlinux.org.uk \
--cc=netdev@vger.kernel.org \
--cc=olteanv@gmail.com \
--cc=robh+dt@kernel.org \
--cc=vivien.didelot@gmail.com \
/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;
as well as URLs for NNTP newsgroup(s).