Lines Matching refs:ds
552 qca8k_phy_write(struct dsa_switch *ds, int port, int regnum, u16 data) in qca8k_phy_write() argument
554 struct qca8k_priv *priv = ds->priv; in qca8k_phy_write()
560 qca8k_phy_read(struct dsa_switch *ds, int port, int regnum) in qca8k_phy_read() argument
562 struct qca8k_priv *priv = ds->priv; in qca8k_phy_read()
592 if (!dsa_is_user_port(priv->ds, reg)) in qca8k_setup_mdio_bus()
639 qca8k_setup(struct dsa_switch *ds) in qca8k_setup() argument
641 struct qca8k_priv *priv = (struct qca8k_priv *)ds->priv; in qca8k_setup()
646 if (!dsa_is_cpu_port(ds, 0)) { in qca8k_setup()
654 priv->regmap = devm_regmap_init(ds->dev, NULL, priv, in qca8k_setup()
664 phy_mode = of_get_phy_mode(ds->ports[QCA8K_CPU_PORT].dn); in qca8k_setup()
697 if (dsa_is_user_port(ds, i)) in qca8k_setup()
710 if (dsa_is_cpu_port(ds, i)) { in qca8k_setup()
712 QCA8K_PORT_LOOKUP_MEMBER, dsa_user_ports(ds)); in qca8k_setup()
716 if (dsa_is_user_port(ds, i)) { in qca8k_setup()
745 qca8k_adjust_link(struct dsa_switch *ds, int port, struct phy_device *phy) in qca8k_adjust_link() argument
747 struct qca8k_priv *priv = ds->priv; in qca8k_adjust_link()
776 if (dsa_is_cpu_port(ds, port)) in qca8k_adjust_link()
786 qca8k_get_strings(struct dsa_switch *ds, int port, u32 stringset, uint8_t *data) in qca8k_get_strings() argument
799 qca8k_get_ethtool_stats(struct dsa_switch *ds, int port, in qca8k_get_ethtool_stats() argument
802 struct qca8k_priv *priv = (struct qca8k_priv *)ds->priv; in qca8k_get_ethtool_stats()
820 qca8k_get_sset_count(struct dsa_switch *ds, int port, int sset) in qca8k_get_sset_count() argument
829 qca8k_set_mac_eee(struct dsa_switch *ds, int port, struct ethtool_eee *eee) in qca8k_set_mac_eee() argument
831 struct qca8k_priv *priv = (struct qca8k_priv *)ds->priv; in qca8k_set_mac_eee()
848 qca8k_get_mac_eee(struct dsa_switch *ds, int port, struct ethtool_eee *e) in qca8k_get_mac_eee() argument
855 qca8k_port_stp_state_set(struct dsa_switch *ds, int port, u8 state) in qca8k_port_stp_state_set() argument
857 struct qca8k_priv *priv = (struct qca8k_priv *)ds->priv; in qca8k_port_stp_state_set()
884 qca8k_port_bridge_join(struct dsa_switch *ds, int port, struct net_device *br) in qca8k_port_bridge_join() argument
886 struct qca8k_priv *priv = (struct qca8k_priv *)ds->priv; in qca8k_port_bridge_join()
891 if (dsa_to_port(ds, i)->bridge_dev != br) in qca8k_port_bridge_join()
910 qca8k_port_bridge_leave(struct dsa_switch *ds, int port, struct net_device *br) in qca8k_port_bridge_leave() argument
912 struct qca8k_priv *priv = (struct qca8k_priv *)ds->priv; in qca8k_port_bridge_leave()
916 if (dsa_to_port(ds, i)->bridge_dev != br) in qca8k_port_bridge_leave()
934 qca8k_port_enable(struct dsa_switch *ds, int port, in qca8k_port_enable() argument
937 struct qca8k_priv *priv = (struct qca8k_priv *)ds->priv; in qca8k_port_enable()
939 if (!dsa_is_user_port(ds, port)) in qca8k_port_enable()
951 qca8k_port_disable(struct dsa_switch *ds, int port) in qca8k_port_disable() argument
953 struct qca8k_priv *priv = (struct qca8k_priv *)ds->priv; in qca8k_port_disable()
972 qca8k_port_fdb_add(struct dsa_switch *ds, int port, in qca8k_port_fdb_add() argument
975 struct qca8k_priv *priv = (struct qca8k_priv *)ds->priv; in qca8k_port_fdb_add()
982 qca8k_port_fdb_del(struct dsa_switch *ds, int port, in qca8k_port_fdb_del() argument
985 struct qca8k_priv *priv = (struct qca8k_priv *)ds->priv; in qca8k_port_fdb_del()
995 qca8k_port_fdb_dump(struct dsa_switch *ds, int port, in qca8k_port_fdb_dump() argument
998 struct qca8k_priv *priv = (struct qca8k_priv *)ds->priv; in qca8k_port_fdb_dump()
1019 qca8k_get_tag_protocol(struct dsa_switch *ds, int port) in qca8k_get_tag_protocol() argument
1080 priv->ds = dsa_switch_alloc(&mdiodev->dev, QCA8K_NUM_PORTS); in qca8k_sw_probe()
1081 if (!priv->ds) in qca8k_sw_probe()
1084 priv->ds->priv = priv; in qca8k_sw_probe()
1086 priv->ds->ops = &priv->ops; in qca8k_sw_probe()
1090 return dsa_register_switch(priv->ds); in qca8k_sw_probe()
1102 dsa_unregister_switch(priv->ds); in qca8k_sw_remove()
1125 return dsa_switch_suspend(priv->ds); in qca8k_suspend()
1134 return dsa_switch_resume(priv->ds); in qca8k_resume()