All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Russell King (Oracle)" <linux@armlinux.org.uk>
To: "Bjørn Mork" <bjorn@mork.no>
Cc: netdev@vger.kernel.org, Felix Fietkau <nbd@nbd.name>,
	John Crispin <john@phrozen.org>,
	Sean Wang <sean.wang@mediatek.com>,
	Mark Lee <Mark-MC.Lee@mediatek.com>,
	Lorenzo Bianconi <lorenzo@kernel.org>,
	Daniel Golle <daniel@makrotopia.org>,
	Alexander Couzens <lynxis@fe80.eu>
Subject: Re: [PATCH net 1/3] net: mediatek: sgmii: ensure the SGMII PHY is powered down on configuration
Date: Thu, 19 Jan 2023 17:17:47 +0000	[thread overview]
Message-ID: <Y8l7Oz9gpslb3IwH@shell.armlinux.org.uk> (raw)
In-Reply-To: <20230119171248.3882021-2-bjorn@mork.no>

On Thu, Jan 19, 2023 at 06:12:46PM +0100, Bjørn Mork wrote:
> From: Alexander Couzens <lynxis@fe80.eu>
> 
> The code expect the PHY to be in power down which is only true after reset.
> Allow changes of the SGMII parameters more than once.
> 
> There are cases when the SGMII_PHYA_PWD register contains 0x9 which
> prevents SGMII from working. The SGMII still shows link but no traffic
> can flow. Writing 0x0 to the PHYA_PWD register fix the issue. 0x0 was
> taken from a good working state of the SGMII interface.
> 
> Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
> [ bmork: rebased and squashed into one patch ]
> Signed-off-by: Bjørn Mork <bjorn@mork.no>
> ---
>  drivers/net/ethernet/mediatek/mtk_sgmii.c | 18 +++++++++++++++---
>  1 file changed, 15 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/net/ethernet/mediatek/mtk_sgmii.c b/drivers/net/ethernet/mediatek/mtk_sgmii.c
> index 5c286f2c9418..481f2f1e39f5 100644
> --- a/drivers/net/ethernet/mediatek/mtk_sgmii.c
> +++ b/drivers/net/ethernet/mediatek/mtk_sgmii.c
> @@ -88,6 +88,10 @@ static int mtk_pcs_config(struct phylink_pcs *pcs, unsigned int mode,
>  		bmcr = 0;
>  	}
>  
> +	/* PHYA power down */
> +	regmap_update_bits(mpcs->regmap, SGMSYS_QPHY_PWR_STATE_CTRL,
> +			   SGMII_PHYA_PWD, SGMII_PHYA_PWD);
> +

Doing this unconditionally means that the link will drop - even when
we aren't doing any reconfiguration (except changing the advertisement).
That's why I made it conditional in the version of the patch I sent
(which failed due to the unknown bits 3 and 0.)

We should always avoid bouncing the link when there's no reason to.

-- 
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTP is here! 40Mbps down 10Mbps up. Decent connectivity at last!

  reply	other threads:[~2023-01-19 17:17 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-01-19 17:12 [PATCH net 0/3] fixes for mtk_eth_soc Bjørn Mork
2023-01-19 17:12 ` [PATCH net 1/3] net: mediatek: sgmii: ensure the SGMII PHY is powered down on configuration Bjørn Mork
2023-01-19 17:17   ` Russell King (Oracle) [this message]
2023-01-19 19:03     ` Bjørn Mork
2023-01-19 17:12 ` [PATCH net 2/3] net: mediatek: sgmii: autonegotiation is required Bjørn Mork
2023-01-19 17:21   ` Russell King (Oracle)
2023-01-19 19:33     ` Bjørn Mork
2023-01-19 21:53       ` Russell King (Oracle)
2023-01-20  7:56         ` Bjørn Mork
2023-01-19 17:12 ` [PATCH net 3/3] net: mediatek: sgmii: fix duplex configuration Bjørn Mork
2023-01-19 17:14   ` 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=Y8l7Oz9gpslb3IwH@shell.armlinux.org.uk \
    --to=linux@armlinux.org.uk \
    --cc=Mark-MC.Lee@mediatek.com \
    --cc=bjorn@mork.no \
    --cc=daniel@makrotopia.org \
    --cc=john@phrozen.org \
    --cc=lorenzo@kernel.org \
    --cc=lynxis@fe80.eu \
    --cc=nbd@nbd.name \
    --cc=netdev@vger.kernel.org \
    --cc=sean.wang@mediatek.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.