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 2/3] net: mediatek: sgmii: autonegotiation is required
Date: Thu, 19 Jan 2023 17:21:57 +0000	[thread overview]
Message-ID: <Y8l8NRmFfm/a8LFv@shell.armlinux.org.uk> (raw)
In-Reply-To: <20230119171248.3882021-3-bjorn@mork.no>

On Thu, Jan 19, 2023 at 06:12:47PM +0100, Bjørn Mork wrote:
> sgmii mode fails if autonegotiation is disabled.
> 
> Signed-off-by: Bjørn Mork <bjorn@mork.no>
> ---
>  drivers/net/ethernet/mediatek/mtk_sgmii.c | 11 +++--------
>  1 file changed, 3 insertions(+), 8 deletions(-)
> 
> diff --git a/drivers/net/ethernet/mediatek/mtk_sgmii.c b/drivers/net/ethernet/mediatek/mtk_sgmii.c
> index 481f2f1e39f5..d1f2bcb21242 100644
> --- a/drivers/net/ethernet/mediatek/mtk_sgmii.c
> +++ b/drivers/net/ethernet/mediatek/mtk_sgmii.c
> @@ -62,14 +62,9 @@ static int mtk_pcs_config(struct phylink_pcs *pcs, unsigned int mode,
>  	 * other words, 1000Mbps or 2500Mbps).
>  	 */
>  	if (interface == PHY_INTERFACE_MODE_SGMII) {
> -		sgm_mode = SGMII_IF_MODE_SGMII;
> -		if (phylink_autoneg_inband(mode)) {
> -			sgm_mode |= SGMII_REMOTE_FAULT_DIS |
> -				    SGMII_SPEED_DUPLEX_AN;
> -			use_an = true;
> -		} else {
> -			use_an = false;
> -		}
> +		sgm_mode = SGMII_IF_MODE_SGMII | SGMII_REMOTE_FAULT_DIS |
> +			   SGMII_SPEED_DUPLEX_AN;
> +		use_an = true;

I wasn't actually suggesting in our discussion that this is something
which should be changed.

The reference implementation for the expected behaviour is
phylink_mii_c22_pcs_config(), and it only enables in-band if "mode"
says so. If we have a PHY which has in-band disabled (yes, they do
exist) then having SGMII in-band unconditionally enabled breaks them,
and yes, those PHYs appear on SFP modules.

The proper answer is to use 'managed = "in-band-status";' in your DT
to have in-band used with SGMII.

-- 
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:22 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)
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) [this message]
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=Y8l8NRmFfm/a8LFv@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.