net: dsa: mv88e6xxx: fix marvell 6350 switch probing
authorGreg Ungerer <gerg@kernel.org>
Fri, 24 Nov 2023 04:15:28 +0000 (14:15 +1000)
committerDavid S. Miller <davem@davemloft.net>
Sun, 26 Nov 2023 11:35:34 +0000 (11:35 +0000)
commitb3f1a164c7f742503dc7159011f7ad6b092b660e
tree719effc308d4160bed7d8c4a43ea7232604de793
parente2b706c691905fe78468c361aaabc719d0a496f1
net: dsa: mv88e6xxx: fix marvell 6350 switch probing

As of commit de5c9bf40c45 ("net: phylink: require supported_interfaces to
be filled") Marvell 88e6350 switches fail to be probed:

    ...
    mv88e6085 d0072004.mdio-mii:11: switch 0x3710 detected: Marvell 88E6350, revision 2
    mv88e6085 d0072004.mdio-mii:11: phylink: error: empty supported_interfaces
    error creating PHYLINK: -22
    mv88e6085: probe of d0072004.mdio-mii:11 failed with error -22
    ...

The problem stems from the use of mv88e6185_phylink_get_caps() to get
the device capabilities. Create a new dedicated phylink_get_caps for the
6351 family (which the 6350 is one of) to properly support their set of
capabilities.

According to chip.h the 6351 switch family includes the 6171, 6175, 6350
and 6351 switches, so update each of these to use the correct
phylink_get_caps.

Fixes: de5c9bf40c45 ("net: phylink: require supported_interfaces to be filled")
Signed-off-by: Greg Ungerer <gerg@kernel.org>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/dsa/mv88e6xxx/chip.c