net: dsa: replace phylink_get_interfaces() with phylink_get_caps()
Phylink needs slightly more information than phylink_get_interfaces() allows us to get from the DSA drivers - we need the MAC capabilities. Replace the phylink_get_interfaces() method with phylink_get_caps() to allow DSA drivers to fill in the phylink_config MAC capabilities field as well. Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk> Reviewed-by: Marek Behún <kabel@kernel.org> Reviewed-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
21bd64bd71
commit
072eea6c22
|
@ -645,8 +645,8 @@ struct dsa_switch_ops {
|
||||||
/*
|
/*
|
||||||
* PHYLINK integration
|
* PHYLINK integration
|
||||||
*/
|
*/
|
||||||
void (*phylink_get_interfaces)(struct dsa_switch *ds, int port,
|
void (*phylink_get_caps)(struct dsa_switch *ds, int port,
|
||||||
unsigned long *supported_interfaces);
|
struct phylink_config *config);
|
||||||
void (*phylink_validate)(struct dsa_switch *ds, int port,
|
void (*phylink_validate)(struct dsa_switch *ds, int port,
|
||||||
unsigned long *supported,
|
unsigned long *supported,
|
||||||
struct phylink_link_state *state);
|
struct phylink_link_state *state);
|
||||||
|
|
|
@ -1091,9 +1091,8 @@ int dsa_port_phylink_create(struct dsa_port *dp)
|
||||||
if (err)
|
if (err)
|
||||||
mode = PHY_INTERFACE_MODE_NA;
|
mode = PHY_INTERFACE_MODE_NA;
|
||||||
|
|
||||||
if (ds->ops->phylink_get_interfaces)
|
if (ds->ops->phylink_get_caps)
|
||||||
ds->ops->phylink_get_interfaces(ds, dp->index,
|
ds->ops->phylink_get_caps(ds, dp->index, &dp->pl_config);
|
||||||
dp->pl_config.supported_interfaces);
|
|
||||||
|
|
||||||
dp->pl = phylink_create(&dp->pl_config, of_fwnode_handle(dp->dn),
|
dp->pl = phylink_create(&dp->pl_config, of_fwnode_handle(dp->dn),
|
||||||
mode, &dsa_port_phylink_mac_ops);
|
mode, &dsa_port_phylink_mac_ops);
|
||||||
|
|
Loading…
Reference in New Issue