[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <cd0413bb-105e-4c84-93f5-c1a5af5b4158@lunn.ch>
Date: Mon, 10 Feb 2025 14:49:42 +0100
From: Andrew Lunn <andrew@...n.ch>
To: Raju Rangoju <Raju.Rangoju@....com>
Cc: netdev@...r.kernel.org, kuba@...nel.org, pabeni@...hat.com,
edumazet@...gle.com, davem@...emloft.net, andrew+netdev@...n.ch,
Shyam Sundar S K <Shyam-sundar.S-k@....com>
Subject: Re: [PATCH net-next] amd-xgbe: re-initiate auto-negotiation for
Broadcom PHYs
On Mon, Feb 10, 2025 at 05:39:33PM +0530, Raju Rangoju wrote:
> Some PHYs on certain platforms may show a successful link after setting
> the speed to 100Mbps through auto-negotiation (AN) even when
> 10M/100M/1G concurrent speed is configured. However, they may not be
> able to transmit or receive data. These PHYs need an "additional
> auto-negotiation (AN) cycle" after the speed change, to function correctly.
>
> A quirk for these PHYs is that if the outcome of the AN leads to a
> change in speed, the AN should be re-initiated at the new speed.
Are you sure it is the PHY which is broken, not the MAC? Is there an
errata from Broadcom?
> +static bool xgbe_phy_broadcom_phy_quirks(struct xgbe_prv_data *pdata)
> +{
> + struct xgbe_phy_data *phy_data = pdata->phy_data;
> + unsigned int phy_id = phy_data->phydev->phy_id;
> + unsigned int ver;
> +
> + ver = XGMAC_GET_BITS(pdata->hw_feat.version, MAC_VR, SNPSVER);
> +
> + /* For Broadcom PHY, use the extra AN flag */
> + if (ver == SNPS_MAC_VER_0x21 && (phy_id & 0xffffffff) == 0x600d8595) {
Please add this ID to include/linux/brcmphy.h.
Also, is it specifically revision 5 of this PHY which is broken?
Andrew
Powered by blists - more mailing lists