[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <4bb28f98-7e2f-4413-9d5e-c8ad5498be03@gmail.com>
Date: Tue, 7 Jan 2025 21:08:02 +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 v2 2/2] net: dsa: microchip: remove MICREL_NO_EEE
workaround
On 07.01.2025 08:42, Oleksij Rempel wrote:
> On Mon, Jan 06, 2025 at 02:23:36PM +0100, Heiner Kallweit wrote:
>> The integrated PHY's on all these switch types have the same PHY ID.
>> So we can assume that the issue is related to the PHY type, not the
>> switch type. After having disabled EEE for this PHY type, we can remove
>> the workaround code here.
>>
>> Note: On the fast ethernet models listed here the integrated PHY has
>> PHY ID 0x00221550, which is handled by PHY driver
>> "Micrel KSZ87XX Switch". This PHY driver doesn't handle flag
>> MICREL_NO_EEE, therefore setting the flag for these models
>> results in a no-op.
>
> Yes, it feels like no one is using KSZ87XX switches with the kernel DSA
> driver.
>
>> Signed-off-by: Heiner Kallweit <hkallweit1@...il.com>
>> ---
>> drivers/net/dsa/microchip/ksz_common.c | 25 -------------------------
>> include/linux/micrel_phy.h | 1 -
>> 2 files changed, 26 deletions(-)
>>
>> diff --git a/drivers/net/dsa/microchip/ksz_common.c b/drivers/net/dsa/microchip/ksz_common.c
>> index e3512e324..4871bb1fc 100644
>> --- a/drivers/net/dsa/microchip/ksz_common.c
>> +++ b/drivers/net/dsa/microchip/ksz_common.c
>> @@ -3008,31 +3008,6 @@ static u32 ksz_get_phy_flags(struct dsa_switch *ds, int port)
>> if (!port)
>> return MICREL_KSZ8_P1_ERRATA;
>> break;
>> - case KSZ8567_CHIP_ID:
>> - /* KSZ8567R Errata DS80000752C Module 4 */
>> - case KSZ8765_CHIP_ID:
>> - case KSZ8794_CHIP_ID:
>> - case KSZ8795_CHIP_ID:
>> - /* KSZ879x/KSZ877x/KSZ876x Errata DS80000687C Module 2 */
>> - case KSZ9477_CHIP_ID:
>> - /* KSZ9477S Errata DS80000754A Module 4 */
>> - case KSZ9567_CHIP_ID:
>> - /* KSZ9567S Errata DS80000756A Module 4 */
>> - case KSZ9896_CHIP_ID:
>> - /* KSZ9896C Errata DS80000757A Module 3 */
>> - case KSZ9897_CHIP_ID:
>> - case LAN9646_CHIP_ID:
>> - /* KSZ9897R Errata DS80000758C Module 4 */
>> - /* Energy Efficient Ethernet (EEE) feature select must be manually disabled
>> - * The EEE feature is enabled by default, but it is not fully
>> - * operational. It must be manually disabled through register
>> - * controls. If not disabled, the PHY ports can auto-negotiate
>> - * to enable EEE, and this feature can cause link drops when
>> - * linked to another device supporting EEE.
>> - *
>> - * The same item appears in the errata for all switches above.
>> - */
>
> I have two problems with current patch set:
> - dropped documentation, not all switches are officially broken, so
> keeping it documented is important.
> - not all KSZ9xxx based switches are officially broken. All 3 port
> switches are not broken but still match against the KSZ9477 PHY
> driver:
> KSZ8563_CHIP_ID - 0x00221631
> KSZ9563_CHIP_ID - 0x00221631
> KSZ9893_CHIP_ID - 0x00221631
>
OK, thanks for the clarification. Then we have to go another way.
> Best Regards,
> Oleksij
Powered by blists - more mailing lists