All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jerry Ray <jerry.ray@microchip.com>
To: Andrew Lunn <andrew@lunn.ch>,
	Florian Fainelli <f.fainelli@gmail.com>,
	Vladimir Oltean <olteanv@gmail.com>,
	"David S. Miller" <davem@davemloft.net>,
	Eric Dumazet <edumazet@google.com>,
	Jakub Kicinski <kuba@kernel.org>,
	"Paolo Abeni" <pabeni@redhat.com>,
	Russell King <linux@armlinux.org.uk>, <jbe@pengutronix.de>,
	<netdev@vger.kernel.org>, <linux-kernel@vger.kernel.org>,
	Jerry Ray <jerry.ray@microchip.com>
Subject: [PATCH net-next v6 2/6] dsa: lan9303: move Turbo Mode bit init
Date: Mon, 9 Jan 2023 15:18:45 -0600	[thread overview]
Message-ID: <20230109211849.32530-3-jerry.ray@microchip.com> (raw)
In-Reply-To: <20230109211849.32530-1-jerry.ray@microchip.com>

In preparing to remove the .adjust_link api, I am moving the one-time
initialization of the device's Turbo Mode bit into a different execution
path. This code clears (disables) the Turbo Mode bit which is never used
by this driver. Turbo Mode is a non-standard mode that would allow the
100Mbps RMII interface to run at 200Mbps.

Signed-off-by: Jerry Ray <jerry.ray@microchip.com>
---
 drivers/net/dsa/lan9303-core.c | 15 ++++++---------
 1 file changed, 6 insertions(+), 9 deletions(-)

diff --git a/drivers/net/dsa/lan9303-core.c b/drivers/net/dsa/lan9303-core.c
index 5a21fc96d479..50470fb09cb4 100644
--- a/drivers/net/dsa/lan9303-core.c
+++ b/drivers/net/dsa/lan9303-core.c
@@ -886,6 +886,12 @@ static int lan9303_check_device(struct lan9303 *chip)
 		return ret;
 	}
 
+	/* Virtual Phy: Remove Turbo 200Mbit mode */
+	lan9303_read(chip->regmap, LAN9303_VIRT_SPECIAL_CTRL, &reg);
+
+	reg &= ~LAN9303_VIRT_SPECIAL_TURBO;
+	regmap_write(chip->regmap, LAN9303_VIRT_SPECIAL_CTRL, reg);
+
 	return 0;
 }
 
@@ -1050,7 +1056,6 @@ static int lan9303_phy_write(struct dsa_switch *ds, int phy, int regnum,
 static void lan9303_adjust_link(struct dsa_switch *ds, int port,
 				struct phy_device *phydev)
 {
-	struct lan9303 *chip = ds->priv;
 	int ctl;
 
 	if (!phy_is_pseudo_fixed_link(phydev))
@@ -1073,14 +1078,6 @@ static void lan9303_adjust_link(struct dsa_switch *ds, int port,
 		ctl &= ~BMCR_FULLDPLX;
 
 	lan9303_phy_write(ds, port, MII_BMCR, ctl);
-
-	if (port == chip->phy_addr_base) {
-		/* Virtual Phy: Remove Turbo 200Mbit mode */
-		lan9303_read(chip->regmap, LAN9303_VIRT_SPECIAL_CTRL, &ctl);
-
-		ctl &= ~LAN9303_VIRT_SPECIAL_TURBO;
-		regmap_write(chip->regmap, LAN9303_VIRT_SPECIAL_CTRL, ctl);
-	}
 }
 
 static int lan9303_port_enable(struct dsa_switch *ds, int port,
-- 
2.17.1


  parent reply	other threads:[~2023-01-09 21:19 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-01-09 21:18 [PATCH net-next v6 0/6] dsa: lan9303: Move to PHYLINK Jerry Ray
2023-01-09 21:18 ` [PATCH net-next v6 1/6] dsa: lan9303: align dsa_switch_ops members Jerry Ray
2023-01-11 22:04   ` Vladimir Oltean
2023-01-11 22:07   ` Florian Fainelli
2023-01-09 21:18 ` Jerry Ray [this message]
2023-01-14 20:49   ` [PATCH net-next v6 2/6] dsa: lan9303: move Turbo Mode bit init Vladimir Oltean
2023-01-16 18:03     ` Jerry.Ray
2023-01-16 18:06     ` Jerry.Ray
2023-01-09 21:18 ` [PATCH net-next v6 3/6] dsa: lan9303: Add exception logic for read failure Jerry Ray
2023-01-09 21:18 ` [PATCH net-next v6 4/6] dsa: lan9303: write reg only if necessary Jerry Ray
2023-01-09 21:18 ` [PATCH net-next v6 5/6] dsa: lan9303: Port 0 is xMII port Jerry Ray
2023-01-14 20:53   ` Vladimir Oltean
2023-01-16 18:05     ` Jerry.Ray
2023-01-09 21:18 ` [PATCH net-next v6 6/6] dsa: lan9303: Migrate to PHYLINK Jerry Ray
2023-01-12  5:22   ` Arun.Ramadoss
2023-01-16 17:33     ` Jerry.Ray
2023-01-12 11:48   ` Russell King (Oracle)
2023-01-16 17:22     ` Jerry.Ray
2023-01-16 18:03       ` Russell King (Oracle)
2023-01-16 22:48         ` Jerry.Ray
2023-01-17 18:19           ` Russell King (Oracle)

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=20230109211849.32530-3-jerry.ray@microchip.com \
    --to=jerry.ray@microchip.com \
    --cc=andrew@lunn.ch \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=f.fainelli@gmail.com \
    --cc=jbe@pengutronix.de \
    --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=pabeni@redhat.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 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.