[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <c9b5858d-5356-4ae4-b492-9bdd95152fde@gmail.com>
Date: Fri, 20 Dec 2024 19:02:50 +0100
From: Heiner Kallweit <hkallweit1@...il.com>
To: Oleksij Rempel <o.rempel@...gutronix.de>
Cc: Russell King - ARM Linux <linux@...linux.org.uk>,
Andrew Lunn <andrew@...n.ch>, Paolo Abeni <pabeni@...hat.com>,
Jakub Kicinski <kuba@...nel.org>, Eric Dumazet <edumazet@...gle.com>,
David Miller <davem@...emloft.net>, Simon Horman <horms@...nel.org>,
Woojung Huh <woojung.huh@...rochip.com>,
Microchip Linux Driver Support <UNGLinuxDriver@...rochip.com>,
Tim Harvey <tharvey@...eworks.com>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>
Subject: Re: [PATCH net-next 1/2] net: phy: micrel: disable EEE on
KSZ9477-type PHY
On 20.12.2024 15:40, Oleksij Rempel wrote:
> On Fri, Dec 20, 2024 at 02:51:32PM +0100, Heiner Kallweit wrote:
>> On several supported switches the integrated PHY's have buggy EEE.
>> On the GBit-capable ones it's always the same type of PHY with PHY ID
>> 0x00221631. So we can simplify the erratum handling by simply clearing
>> phydev->supported_eee for this PHY type.
>>
>> Note: The KSZ9477 PHY driver also covers e.g. the internal PHY of
>> KSZ9563 (ID: 0x00221637), which is unaffected by the EEE issue.
>> Therefore check for the exact PHY ID.
>>
>> Signed-off-by: Heiner Kallweit <hkallweit1@...il.com>
>> ---
>> drivers/net/phy/micrel.c | 12 ++++++------
>> 1 file changed, 6 insertions(+), 6 deletions(-)
>>
>> diff --git a/drivers/net/phy/micrel.c b/drivers/net/phy/micrel.c
>> index 3ef508840..ece6d026e 100644
>> --- a/drivers/net/phy/micrel.c
>> +++ b/drivers/net/phy/micrel.c
>> @@ -1522,6 +1522,12 @@ static int ksz9477_get_features(struct phy_device *phydev)
>> if (ret)
>> return ret;
>>
>> + /* See KSZ9477 Errata DS80000754C Module 4 */
>> + if (phydev->phy_id == PHY_ID_KSZ9477) {
>> + linkmode_zero(phydev->supported_eee);
>> + return 0;
>> + }
>
> Hm.. with this change, we won't be able to disable EEE. Zeroed
> supported_eee will avoid writing to the EEE advertisement register.
>
Indeed, genphy_c45_write_eee_adv() would become a no-op.
We have to do it differently.
Powered by blists - more mailing lists