RE: [PATCH] net: phy: use generic clause 45 autonegotiation done

From: Camelia Alexandra Groza
Date: Fri Jul 27 2018 - 09:42:08 EST


> -----Original Message-----
> From: Camelia Groza [mailto:camelia.groza@xxxxxxx]
> Sent: Wednesday, July 18, 2018 16:12
> To: andrew@xxxxxxx; f.fainelli@xxxxxxxxx; davem@xxxxxxxxxxxxx
> Cc: netdev@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; Camelia
> Alexandra Groza <camelia.groza@xxxxxxx>
> Subject: [PATCH] net: phy: use generic clause 45 autonegotiation done
>
> Only Clause 22 PHYs can use genphy_aneg_done(). Use
> genphy_c45_aneg_done() for PHYs that implement Clause 45 without the
> Clause 22 register set.
>
> This change follows the model of phy_restart_aneg() which differentiates
> between the two implementations in a similar way.
>
> Fixes: 41408ad519f7 ("net: phy: avoid genphy_aneg_done() for PHYs without
> clause 22 support")
> Signed-off-by: Camelia Groza <camelia.groza@xxxxxxx>
> ---
> drivers/net/phy/phy.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/net/phy/phy.c b/drivers/net/phy/phy.c index
> 537297d..4fcc703 100644
> --- a/drivers/net/phy/phy.c
> +++ b/drivers/net/phy/phy.c
> @@ -151,7 +151,7 @@ int phy_aneg_done(struct phy_device *phydev)
> * implement Clause 22 registers
> */
> if (phydev->is_c45 && !(phydev->c45_ids.devices_in_package &
> BIT(0)))
> - return -EINVAL;
> + return genphy_c45_aneg_done(phydev);
>
> return genphy_aneg_done(phydev);
> }
> --
> 1.9.1

Hi

A reminder for the original patch above. Since I sent the second patch for phy_config_aneg() against a different tree [1], I didn't see the need to resubmit this patch. If you need me to resubmit it, please let me know.

[1] https://patchwork.ozlabs.org/patch/947831/

Thank you,
Camelia