Lines Matching full:ds
34 struct dsa_switch *ds = bus->priv; in dsa_slave_phy_read() local
36 if (ds->phys_mii_mask & (1 << addr)) in dsa_slave_phy_read()
37 return ds->ops->phy_read(ds, addr, reg); in dsa_slave_phy_read()
44 struct dsa_switch *ds = bus->priv; in dsa_slave_phy_write() local
46 if (ds->phys_mii_mask & (1 << addr)) in dsa_slave_phy_write()
47 return ds->ops->phy_write(ds, addr, reg, val); in dsa_slave_phy_write()
52 void dsa_slave_mii_bus_init(struct dsa_switch *ds) in dsa_slave_mii_bus_init() argument
54 ds->slave_mii_bus->priv = (void *)ds; in dsa_slave_mii_bus_init()
55 ds->slave_mii_bus->name = "dsa slave smi"; in dsa_slave_mii_bus_init()
56 ds->slave_mii_bus->read = dsa_slave_phy_read; in dsa_slave_mii_bus_init()
57 ds->slave_mii_bus->write = dsa_slave_phy_write; in dsa_slave_mii_bus_init()
58 snprintf(ds->slave_mii_bus->id, MII_BUS_ID_SIZE, "dsa-%d.%d", in dsa_slave_mii_bus_init()
59 ds->dst->index, ds->index); in dsa_slave_mii_bus_init()
60 ds->slave_mii_bus->parent = ds->dev; in dsa_slave_mii_bus_init()
61 ds->slave_mii_bus->phy_mask = ~ds->phys_mii_mask; in dsa_slave_mii_bus_init()
262 struct dsa_switch *ds = p->dp->ds; in dsa_slave_ioctl() local
268 if (ds->ops->port_hwtstamp_get) in dsa_slave_ioctl()
269 return ds->ops->port_hwtstamp_get(ds, port, ifr); in dsa_slave_ioctl()
272 if (ds->ops->port_hwtstamp_set) in dsa_slave_ioctl()
273 return ds->ops->port_hwtstamp_set(ds, port, ifr); in dsa_slave_ioctl()
372 struct dsa_switch *ds = dp->ds; in dsa_slave_port_attr_get() local
373 struct dsa_switch_tree *dst = ds->dst; in dsa_slave_port_attr_get()
407 struct dsa_switch *ds = p->dp->ds; in dsa_skb_tx_timestamp() local
415 if (!ds->ops->port_txtstamp) in dsa_skb_tx_timestamp()
422 if (ds->ops->port_txtstamp(ds, p->dp->index, clone, type)) in dsa_skb_tx_timestamp()
482 struct dsa_switch *ds = dp->ds; in dsa_slave_get_regs_len() local
484 if (ds->ops->get_regs_len) in dsa_slave_get_regs_len()
485 return ds->ops->get_regs_len(ds, dp->index); in dsa_slave_get_regs_len()
494 struct dsa_switch *ds = dp->ds; in dsa_slave_get_regs() local
496 if (ds->ops->get_regs) in dsa_slave_get_regs()
497 ds->ops->get_regs(ds, dp->index, regs, _p); in dsa_slave_get_regs()
510 struct dsa_switch *ds = dp->ds; in dsa_slave_get_eeprom_len() local
512 if (ds->cd && ds->cd->eeprom_len) in dsa_slave_get_eeprom_len()
513 return ds->cd->eeprom_len; in dsa_slave_get_eeprom_len()
515 if (ds->ops->get_eeprom_len) in dsa_slave_get_eeprom_len()
516 return ds->ops->get_eeprom_len(ds); in dsa_slave_get_eeprom_len()
525 struct dsa_switch *ds = dp->ds; in dsa_slave_get_eeprom() local
527 if (ds->ops->get_eeprom) in dsa_slave_get_eeprom()
528 return ds->ops->get_eeprom(ds, eeprom, data); in dsa_slave_get_eeprom()
537 struct dsa_switch *ds = dp->ds; in dsa_slave_set_eeprom() local
539 if (ds->ops->set_eeprom) in dsa_slave_set_eeprom()
540 return ds->ops->set_eeprom(ds, eeprom, data); in dsa_slave_set_eeprom()
549 struct dsa_switch *ds = dp->ds; in dsa_slave_get_strings() local
558 if (ds->ops->get_strings) in dsa_slave_get_strings()
559 ds->ops->get_strings(ds, dp->index, stringset, in dsa_slave_get_strings()
570 struct dsa_switch *ds = dp->ds; in dsa_slave_get_ethtool_stats() local
591 if (ds->ops->get_ethtool_stats) in dsa_slave_get_ethtool_stats()
592 ds->ops->get_ethtool_stats(ds, dp->index, data + 4); in dsa_slave_get_ethtool_stats()
598 struct dsa_switch *ds = dp->ds; in dsa_slave_get_sset_count() local
604 if (ds->ops->get_sset_count) in dsa_slave_get_sset_count()
605 count += ds->ops->get_sset_count(ds, dp->index, sset); in dsa_slave_get_sset_count()
616 struct dsa_switch *ds = dp->ds; in dsa_slave_get_wol() local
620 if (ds->ops->get_wol) in dsa_slave_get_wol()
621 ds->ops->get_wol(ds, dp->index, w); in dsa_slave_get_wol()
627 struct dsa_switch *ds = dp->ds; in dsa_slave_set_wol() local
632 if (ds->ops->set_wol) in dsa_slave_set_wol()
633 ret = ds->ops->set_wol(ds, dp->index, w); in dsa_slave_set_wol()
641 struct dsa_switch *ds = dp->ds; in dsa_slave_set_eee() local
648 if (!ds->ops->set_mac_eee) in dsa_slave_set_eee()
651 ret = ds->ops->set_mac_eee(ds, dp->index, e); in dsa_slave_set_eee()
661 struct dsa_switch *ds = dp->ds; in dsa_slave_get_eee() local
668 if (!ds->ops->get_mac_eee) in dsa_slave_get_eee()
671 ret = ds->ops->get_mac_eee(ds, dp->index, e); in dsa_slave_get_eee()
768 struct dsa_switch *ds = dp->ds; in dsa_slave_add_cls_matchall() local
774 if (!ds->ops->port_mirror_add) in dsa_slave_add_cls_matchall()
805 err = ds->ops->port_mirror_add(ds, dp->index, mirror, ingress); in dsa_slave_add_cls_matchall()
822 struct dsa_switch *ds = dp->ds; in dsa_slave_del_cls_matchall() local
824 if (!ds->ops->port_mirror_del) in dsa_slave_del_cls_matchall()
835 ds->ops->port_mirror_del(ds, dp->index, &mall_tc_entry->mirror); in dsa_slave_del_cls_matchall()
956 struct dsa_switch *ds = dp->ds; in dsa_slave_get_rxnfc() local
958 if (!ds->ops->get_rxnfc) in dsa_slave_get_rxnfc()
961 return ds->ops->get_rxnfc(ds, dp->index, nfc, rule_locs); in dsa_slave_get_rxnfc()
968 struct dsa_switch *ds = dp->ds; in dsa_slave_set_rxnfc() local
970 if (!ds->ops->set_rxnfc) in dsa_slave_set_rxnfc()
973 return ds->ops->set_rxnfc(ds, dp->index, nfc); in dsa_slave_set_rxnfc()
980 struct dsa_switch *ds = p->dp->ds; in dsa_slave_get_ts_info() local
982 if (!ds->ops->get_ts_info) in dsa_slave_get_ts_info()
985 return ds->ops->get_ts_info(ds, p->dp->index, ts); in dsa_slave_get_ts_info()
1069 struct dsa_switch *ds = dp->ds; in dsa_slave_phylink_validate() local
1071 if (!ds->ops->phylink_validate) in dsa_slave_phylink_validate()
1074 ds->ops->phylink_validate(ds, dp->index, supported, state); in dsa_slave_phylink_validate()
1081 struct dsa_switch *ds = dp->ds; in dsa_slave_phylink_mac_link_state() local
1084 if (!ds->ops->phylink_mac_link_state) in dsa_slave_phylink_mac_link_state()
1087 return ds->ops->phylink_mac_link_state(ds, dp->index, state); in dsa_slave_phylink_mac_link_state()
1095 struct dsa_switch *ds = dp->ds; in dsa_slave_phylink_mac_config() local
1097 if (!ds->ops->phylink_mac_config) in dsa_slave_phylink_mac_config()
1100 ds->ops->phylink_mac_config(ds, dp->index, mode, state); in dsa_slave_phylink_mac_config()
1106 struct dsa_switch *ds = dp->ds; in dsa_slave_phylink_mac_an_restart() local
1108 if (!ds->ops->phylink_mac_an_restart) in dsa_slave_phylink_mac_an_restart()
1111 ds->ops->phylink_mac_an_restart(ds, dp->index); in dsa_slave_phylink_mac_an_restart()
1119 struct dsa_switch *ds = dp->ds; in dsa_slave_phylink_mac_link_down() local
1121 if (!ds->ops->phylink_mac_link_down) { in dsa_slave_phylink_mac_link_down()
1122 if (ds->ops->adjust_link && dev->phydev) in dsa_slave_phylink_mac_link_down()
1123 ds->ops->adjust_link(ds, dp->index, dev->phydev); in dsa_slave_phylink_mac_link_down()
1127 ds->ops->phylink_mac_link_down(ds, dp->index, mode, interface); in dsa_slave_phylink_mac_link_down()
1136 struct dsa_switch *ds = dp->ds; in dsa_slave_phylink_mac_link_up() local
1138 if (!ds->ops->phylink_mac_link_up) { in dsa_slave_phylink_mac_link_up()
1139 if (ds->ops->adjust_link && dev->phydev) in dsa_slave_phylink_mac_link_up()
1140 ds->ops->adjust_link(ds, dp->index, dev->phydev); in dsa_slave_phylink_mac_link_up()
1144 ds->ops->phylink_mac_link_up(ds, dp->index, mode, interface, phydev); in dsa_slave_phylink_mac_link_up()
1156 void dsa_port_phylink_mac_change(struct dsa_switch *ds, int port, bool up) in dsa_port_phylink_mac_change() argument
1158 const struct dsa_port *dp = dsa_to_port(ds, port); in dsa_port_phylink_mac_change()
1168 struct dsa_switch *ds = dp->ds; in dsa_slave_phylink_fixed_state() local
1173 ds->ops->phylink_fixed_state(ds, dp->index, state); in dsa_slave_phylink_fixed_state()
1180 struct dsa_switch *ds = dp->ds; in dsa_slave_phy_connect() local
1182 slave_dev->phydev = mdiobus_get_phy(ds->slave_mii_bus, addr); in dsa_slave_phy_connect()
1195 struct dsa_switch *ds = dp->ds; in dsa_slave_phy_setup() local
1215 if (ds->ops->phylink_fixed_state) in dsa_slave_phy_setup()
1218 if (ds->ops->get_phy_flags) in dsa_slave_phy_setup()
1219 phy_flags = ds->ops->get_phy_flags(ds, dp->index); in dsa_slave_phy_setup()
1222 if (ret == -ENODEV && ds->slave_mii_bus) { in dsa_slave_phy_setup()
1285 .switch_number = dp->ds->index, in dsa_slave_notify()
1298 struct dsa_switch *ds = port->ds; in dsa_slave_create() local
1304 if (!ds->num_tx_queues) in dsa_slave_create()
1305 ds->num_tx_queues = 1; in dsa_slave_create()
1309 ds->num_tx_queues, 1); in dsa_slave_create()
1327 SET_NETDEV_DEV(slave_dev, port->ds->dev); in dsa_slave_create()