net: dsa: microchip: update the ksz_phylink_get_caps
This patch assigns the phylink_get_caps in ksz8795 and ksz9477 to ksz_phylink_get_caps. And update their mac_capabilities in the respective ksz_dev_ops. Signed-off-by: Arun Ramadoss <arun.ramadoss@microchip.com> Reviewed-by: Vladimir Oltean <olteanv@gmail.com> Signed-off-by: Paolo Abeni <pabeni@redhat.com>
This commit is contained in:
parent
e593df51ff
commit
7012033ce1
@ -1348,13 +1348,9 @@ static int ksz8_setup(struct dsa_switch *ds)
|
||||
return ksz8_handle_global_errata(ds);
|
||||
}
|
||||
|
||||
static void ksz8_get_caps(struct dsa_switch *ds, int port,
|
||||
static void ksz8_get_caps(struct ksz_device *dev, int port,
|
||||
struct phylink_config *config)
|
||||
{
|
||||
struct ksz_device *dev = ds->priv;
|
||||
|
||||
ksz_phylink_get_caps(ds, port, config);
|
||||
|
||||
config->mac_capabilities = MAC_10 | MAC_100;
|
||||
|
||||
/* Silicon Errata Sheet (DS80000830A):
|
||||
@ -1376,7 +1372,7 @@ static const struct dsa_switch_ops ksz8_switch_ops = {
|
||||
.setup = ksz8_setup,
|
||||
.phy_read = ksz_phy_read16,
|
||||
.phy_write = ksz_phy_write16,
|
||||
.phylink_get_caps = ksz8_get_caps,
|
||||
.phylink_get_caps = ksz_phylink_get_caps,
|
||||
.phylink_mac_link_down = ksz_mac_link_down,
|
||||
.port_enable = ksz_enable_port,
|
||||
.get_strings = ksz_get_strings,
|
||||
@ -1458,6 +1454,7 @@ static const struct ksz_dev_ops ksz8_dev_ops = {
|
||||
.vlan_del = ksz8_port_vlan_del,
|
||||
.mirror_add = ksz8_port_mirror_add,
|
||||
.mirror_del = ksz8_port_mirror_del,
|
||||
.get_caps = ksz8_get_caps,
|
||||
.shutdown = ksz8_reset_switch,
|
||||
.init = ksz8_switch_init,
|
||||
.exit = ksz8_switch_exit,
|
||||
|
@ -1068,11 +1068,9 @@ static void ksz9477_phy_errata_setup(struct ksz_device *dev, int port)
|
||||
ksz9477_port_mmd_write(dev, port, 0x1c, 0x20, 0xeeee);
|
||||
}
|
||||
|
||||
static void ksz9477_get_caps(struct dsa_switch *ds, int port,
|
||||
static void ksz9477_get_caps(struct ksz_device *dev, int port,
|
||||
struct phylink_config *config)
|
||||
{
|
||||
ksz_phylink_get_caps(ds, port, config);
|
||||
|
||||
config->mac_capabilities = MAC_10 | MAC_100 | MAC_1000FD |
|
||||
MAC_ASYM_PAUSE | MAC_SYM_PAUSE;
|
||||
}
|
||||
@ -1302,7 +1300,7 @@ static const struct dsa_switch_ops ksz9477_switch_ops = {
|
||||
.phy_read = ksz_phy_read16,
|
||||
.phy_write = ksz_phy_write16,
|
||||
.phylink_mac_link_down = ksz_mac_link_down,
|
||||
.phylink_get_caps = ksz9477_get_caps,
|
||||
.phylink_get_caps = ksz_phylink_get_caps,
|
||||
.port_enable = ksz_enable_port,
|
||||
.get_strings = ksz_get_strings,
|
||||
.get_ethtool_stats = ksz_get_ethtool_stats,
|
||||
@ -1400,6 +1398,7 @@ static const struct ksz_dev_ops ksz9477_dev_ops = {
|
||||
.vlan_del = ksz9477_port_vlan_del,
|
||||
.mirror_add = ksz9477_port_mirror_add,
|
||||
.mirror_del = ksz9477_port_mirror_del,
|
||||
.get_caps = ksz9477_get_caps,
|
||||
.shutdown = ksz9477_reset_switch,
|
||||
.init = ksz9477_switch_init,
|
||||
.exit = ksz9477_switch_exit,
|
||||
|
@ -469,6 +469,9 @@ void ksz_phylink_get_caps(struct dsa_switch *ds, int port,
|
||||
if (dev->info->internal_phy[port])
|
||||
__set_bit(PHY_INTERFACE_MODE_INTERNAL,
|
||||
config->supported_interfaces);
|
||||
|
||||
if (dev->dev_ops->get_caps)
|
||||
dev->dev_ops->get_caps(dev, port, config);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(ksz_phylink_get_caps);
|
||||
|
||||
|
@ -193,6 +193,8 @@ struct ksz_dev_ops {
|
||||
bool ingress, struct netlink_ext_ack *extack);
|
||||
void (*mirror_del)(struct ksz_device *dev, int port,
|
||||
struct dsa_mall_mirror_tc_entry *mirror);
|
||||
void (*get_caps)(struct ksz_device *dev, int port,
|
||||
struct phylink_config *config);
|
||||
void (*freeze_mib)(struct ksz_device *dev, int port, bool freeze);
|
||||
void (*port_init_cnt)(struct ksz_device *dev, int port);
|
||||
int (*shutdown)(struct ksz_device *dev);
|
||||
|
Loading…
Reference in New Issue
Block a user