• Oleksij Rempel's avatar
    net: phy: micrel: Fix forced link mode for KSZ886X switches · 510f02fe
    Oleksij Rempel authored
    Address a link speed detection issue in KSZ886X PHY driver when in
    forced link mode. Previously, link partners like "ASIX AX88772B"
    with KSZ8873 could fall back to 10Mbit instead of configured 100Mbit.
    
    The issue arises as KSZ886X PHY continues sending Fast Link Pulses (FLPs)
    even with autonegotiation off, misleading link partners in autoneg mode,
    leading to incorrect link speed detection.
    
    Now, when autonegotiation is disabled, the driver sets the link state
    forcefully using KSZ886X_CTRL_FORCE_LINK bit. This action, beyond just
    disabling autonegotiation, makes the PHY state more reliably detected by
    link partners using parallel detection, thus fixing the link speed
    misconfiguration.
    
    With autonegotiation enabled, link state is not forced, allowing proper
    autonegotiation process participation.
    Signed-off-by: default avatarOleksij Rempel <o.rempel@pengutronix.de>
    Reviewed-by: default avatarVladimir Oltean <vladimir.oltean@nxp.com>
    Reviewed-by: default avatarDivya Koppera <divya.koppera@microchip.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    510f02fe
micrel.c 134 KB