Re: [PATCH net v4] net: dsa: microchip: disable EEE for KSZ879x/KSZ877x/KSZ876x
From: Oleksij Rempel
Date: Sun Oct 20 2024 - 04:44:39 EST
On Fri, Oct 18, 2024 at 09:06:58AM -0700, Tim Harvey wrote:
> The well-known errata regarding EEE not being functional on various KSZ
> switches has been refactored a few times. Recently the refactoring has
> excluded several switches that the errata should also apply to.
>
> Disable EEE for additional switches with this errata and provide
> additional comments referring to the public errata document.
>
> The original workaround for the errata was applied with a register
> write to manually disable the EEE feature in MMD 7:60 which was being
> applied for KSZ9477/KSZ9897/KSZ9567 switch ID's.
>
> Then came commit 26dd2974c5b5 ("net: phy: micrel: Move KSZ9477 errata
> fixes to PHY driver") and commit 6068e6d7ba50 ("net: dsa: microchip:
> remove KSZ9477 PHY errata handling") which moved the errata from the
> switch driver to the PHY driver but only for PHY_ID_KSZ9477 (PHY ID)
> however that PHY code was dead code because an entry was never added
> for PHY_ID_KSZ9477 via MODULE_DEVICE_TABLE.
>
> This was apparently realized much later and commit 54a4e5c16382 ("net:
> phy: micrel: add Microchip KSZ 9477 to the device table") added the
> PHY_ID_KSZ9477 to the PHY driver but as the errata was only being
> applied to PHY_ID_KSZ9477 it's not completely clear what switches
> that relates to.
>
> Later commit 6149db4997f5 ("net: phy: micrel: fix KSZ9477 PHY issues
> after suspend/resume") breaks this again for all but KSZ9897 by only
> applying the errata for that PHY ID.
>
> Following that this was affected with commit 08c6d8bae48c("net: phy:
> Provide Module 4 KSZ9477 errata (DS80000754C)") which removes
> the blatant register write to MMD 7:60 and replaces it by
> setting phydev->eee_broken_modes = -1 so that the generic phy-c45 code
> disables EEE but this is only done for the KSZ9477_CHIP_ID (Switch ID).
>
> Lastly commit 0411f73c13af ("net: dsa: microchip: disable EEE for
> KSZ8567/KSZ9567/KSZ9896/KSZ9897.") adds some additional switches
> that were missing to the errata due to the previous changes.
>
> This commit adds an additional set of switches.
>
> Fixes: 0411f73c13af ("net: dsa: microchip: disable EEE for KSZ8567/KSZ9567/KSZ9896/KSZ9897.")
> Signed-off-by: Tim Harvey <tharvey@xxxxxxxxxxxxx>
Reviewed-by: Oleksij Rempel <o.rempel@xxxxxxxxxxxxxx>
Thank you!
--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |