[PATCH net v2 1/3] net: stmmac: propagate platform mac_finish errors
Lorenzo Bianconi
lorenzo.bianconi at oss.qualcomm.com
Fri Sep 18 00:07:50 PDT 2026
> From: Thomas Karpiniec <tom at wendy.sh>
>
> stmmac_mac_finish() discards the platform callback's return value and
> always reports success to phylink. For example, the Qualcomm ETHQOS
> callback can return an error from phy_set_mode_ext() if SerDes
> configuration fails. Phylink then treats the interface as successfully
> configured and can report carrier even though the SerDes is not ready.
>
> Return the platform callback's result so that phylink can report the
> failure and keep the link down until a subsequent configuration succeeds.
> Keep returning zero when no platform callback is installed.
>
> Fixes: e654cfc718d4 ("net: stmmac: configure SerDes on mac_finish")
> Cc: stable at vger.kernel.org
> Assisted-by: LLM sparse
> Signed-off-by: Thomas Karpiniec <tom at wendy.sh>
> Acked-by: Mohd Ayaan Anwar <mohd.anwar at oss.qualcomm.com>
> Reviewed-by: Maxime Chevallier <maxime.chevallier at bootlin.com>
Acked-by: Lorenzo Bianconi <lorenzo.bianconi at oss.qualcomm.com>
> ---
> drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
> index 1fb5f804ea23..1350e92943ac 100644
> --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
> +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
> @@ -1048,8 +1048,8 @@ static int stmmac_mac_finish(struct phylink_config *config, unsigned int mode,
> struct stmmac_priv *priv = netdev_priv(ndev);
>
> if (priv->plat->mac_finish)
> - priv->plat->mac_finish(ndev, priv->plat->bsp_priv, mode,
> - interface);
> + return priv->plat->mac_finish(ndev, priv->plat->bsp_priv, mode,
> + interface);
>
> return 0;
> }
> --
> 2.54.0 (Apple Git-157)
>
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 228 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20260918/b5d9599e/attachment-0001.sig>
More information about the linux-arm-kernel
mailing list