/linux/include/net/ |
H A D | dsa.h | 92 struct dsa_switch; 99 int (*connect)(struct dsa_switch *ds); 100 void (*disconnect)(struct dsa_switch *ds); 257 struct dsa_switch *ds; 378 struct dsa_switch { struct 512 static inline struct dsa_port *dsa_to_port(struct dsa_switch *ds, int p) in dsa_to_port() argument 550 static inline bool dsa_is_unused_port(struct dsa_switch *ds, int p) in dsa_is_unused_port() 555 static inline bool dsa_is_cpu_port(struct dsa_switch *ds, int p) in dsa_is_cpu_port() 560 static inline bool dsa_is_dsa_port(struct dsa_switch *ds, int p) in dsa_is_dsa_port() 565 static inline bool dsa_is_user_port(struct dsa_switch *d 384 dstdsa_switch global() argument 385 indexdsa_switch global() argument 391 setupdsa_switch global() argument 396 vlan_filtering_is_globaldsa_switch global() argument 399 needs_standalone_vlan_filteringdsa_switch global() argument 406 configure_vlan_while_not_filteringdsa_switch global() argument 412 untag_bridge_pviddsa_switch global() argument 419 untag_vlan_aware_bridge_pviddsa_switch global() argument 424 assisted_learning_on_cpu_portdsa_switch global() argument 429 vlan_filteringdsa_switch global() argument 435 mtu_enforcement_ingressdsa_switch global() argument 442 fdb_isolationdsa_switch global() argument 468 opsdsa_switch global() argument 473 phylink_mac_opsdsa_switch global() argument 478 phys_mii_maskdsa_switch global() argument 479 user_mii_busdsa_switch global() argument 482 ageing_time_mindsa_switch global() argument 483 ageing_time_maxdsa_switch global() argument 486 tag_8021q_ctxdsa_switch global() argument [all...] |
/linux/drivers/net/dsa/sja1105/ |
H A D | sja1105_ptp.h | 93 int sja1105_ptp_clock_register(struct dsa_switch *ds); 95 void sja1105_ptp_clock_unregister(struct dsa_switch *ds); 103 int sja1105_get_ts_info(struct dsa_switch *ds, int port, 106 void sja1105_ptp_txtstamp_skb(struct dsa_switch *ds, int slot, 109 bool sja1105_port_rxtstamp(struct dsa_switch *ds, int port, 112 void sja1105_port_txtstamp(struct dsa_switch *ds, int port, 115 int sja1105_hwtstamp_get(struct dsa_switch *ds, int port, 118 int sja1105_hwtstamp_set(struct dsa_switch *ds, int port, 122 int __sja1105_ptp_gettimex(struct dsa_switch *ds, u64 *ns, 125 int __sja1105_ptp_settime(struct dsa_switch *d [all...] |
H A D | sja1105_tas.h | 53 int sja1105_setup_tc_taprio(struct dsa_switch *ds, int port, 56 void sja1105_tas_setup(struct dsa_switch *ds); 58 void sja1105_tas_teardown(struct dsa_switch *ds); 60 void sja1105_tas_clockstep(struct dsa_switch *ds); 62 void sja1105_tas_adjfreq(struct dsa_switch *ds); 76 static inline int sja1105_setup_tc_taprio(struct dsa_switch *ds, int port, in sja1105_setup_tc_taprio() 82 static inline void sja1105_tas_setup(struct dsa_switch *ds) { } in sja1105_tas_setup() 84 static inline void sja1105_tas_teardown(struct dsa_switch *ds) { } in sja1105_tas_teardown() 86 static inline void sja1105_tas_clockstep(struct dsa_switch *ds) { } in sja1105_tas_clockstep() 88 static inline void sja1105_tas_adjfreq(struct dsa_switch *d [all...] |
H A D | sja1105.h | 142 int (*reset_cmd)(struct dsa_switch *ds); 145 int (*fdb_add_cmd)(struct dsa_switch *ds, int port, 147 int (*fdb_del_cmd)(struct dsa_switch *ds, int port, 151 bool (*rxtstamp)(struct dsa_switch *ds, int port, struct sk_buff *skb); 152 void (*txtstamp)(struct dsa_switch *ds, int port, struct sk_buff *skb); 261 struct dsa_switch *ds; 305 int sja1105_vlan_filtering(struct dsa_switch *ds, int port, bool enabled, 310 int sja1105_mdiobus_register(struct dsa_switch *ds); 311 void sja1105_mdiobus_unregister(struct dsa_switch *ds); 320 int sja1105_devlink_setup(struct dsa_switch *d [all...] |
H A D | sja1105_devlink.c | 41 struct dsa_switch *ds = dsa_devlink_to_ds(dl); in sja1105_region_static_config_snapshot() 77 static int sja1105_setup_devlink_regions(struct dsa_switch *ds) in sja1105_setup_devlink_regions() 109 static void sja1105_teardown_devlink_regions(struct dsa_switch *ds) in sja1105_teardown_devlink_regions() 120 int sja1105_devlink_info_get(struct dsa_switch *ds, in sja1105_devlink_info_get() 131 int sja1105_devlink_setup(struct dsa_switch *ds) in sja1105_devlink_setup() 136 void sja1105_devlink_teardown(struct dsa_switch *ds) in sja1105_devlink_teardown()
|
H A D | sja1105_ptp.c | 61 int sja1105_hwtstamp_set(struct dsa_switch *ds, int port, in sja1105_hwtstamp_set() 99 int sja1105_hwtstamp_get(struct dsa_switch *ds, int port, in sja1105_hwtstamp_get() 117 int sja1105_get_ts_info(struct dsa_switch *ds, int port, in sja1105_get_ts_info() 172 int sja1105_ptp_commit(struct dsa_switch *ds, struct sja1105_ptp_cmd *cmd, in sja1105_ptp_commit() 206 static u64 sja1105_tstamp_reconstruct(struct dsa_switch *ds, u64 now, in sja1105_tstamp_reconstruct() 251 static int sja1105_ptpegr_ts_poll(struct dsa_switch *ds, int port, u64 *ts) in sja1105_ptpegr_ts_poll() 344 struct dsa_switch *ds = priv->ds; in sja1105_rxtstamp_work() 379 bool sja1105_rxtstamp(struct dsa_switch *ds, int port, struct sk_buff *skb) in sja1105_rxtstamp() 395 bool sja1110_rxtstamp(struct dsa_switch *ds, int port, struct sk_buff *skb) in sja1110_rxtstamp() 409 bool sja1105_port_rxtstamp(struct dsa_switch *d [all...] |
/linux/drivers/net/dsa/microchip/ |
H A D | ksz_ptp.h | 36 int ksz_ptp_clock_register(struct dsa_switch *ds); 38 void ksz_ptp_clock_unregister(struct dsa_switch *ds); 40 int ksz_get_ts_info(struct dsa_switch *ds, int port, 42 int ksz_hwtstamp_get(struct dsa_switch *ds, int port, 44 int ksz_hwtstamp_set(struct dsa_switch *ds, int port, 47 void ksz_port_txtstamp(struct dsa_switch *ds, int port, struct sk_buff *skb); 49 bool ksz_port_rxtstamp(struct dsa_switch *ds, int port, struct sk_buff *skb, 51 int ksz_ptp_irq_setup(struct dsa_switch *ds, u8 p); 52 void ksz_ptp_irq_free(struct dsa_switch *ds, u8 p); 61 static inline int ksz_ptp_clock_register(struct dsa_switch *d [all...] |
H A D | ksz_dcb.h | 11 int ksz_port_get_default_prio(struct dsa_switch *ds, int port); 12 int ksz_port_set_default_prio(struct dsa_switch *ds, int port, u8 prio); 13 int ksz_port_get_dscp_prio(struct dsa_switch *ds, int port, u8 dscp); 14 int ksz_port_add_dscp_prio(struct dsa_switch *ds, int port, u8 dscp, u8 prio); 15 int ksz_port_del_dscp_prio(struct dsa_switch *ds, int port, u8 dscp, u8 prio); 16 int ksz_port_set_apptrust(struct dsa_switch *ds, int port, 19 int ksz_port_get_apptrust(struct dsa_switch *ds, int port, u8 *sel, int *nsel);
|
H A D | ksz9477.h | 14 int ksz9477_setup(struct dsa_switch *ds); 54 void ksz9477_config_cpu_port(struct dsa_switch *ds); 61 void ksz9477_hsr_join(struct dsa_switch *ds, int port, struct net_device *hsr); 62 void ksz9477_hsr_leave(struct dsa_switch *ds, int port, struct net_device *hsr); 66 int ksz9477_cls_flower_add(struct dsa_switch *ds, int port, 68 int ksz9477_cls_flower_del(struct dsa_switch *ds, int port,
|
/linux/drivers/net/dsa/mv88e6xxx/ |
H A D | devlink.h | 8 int mv88e6xxx_setup_devlink_params(struct dsa_switch *ds); 9 void mv88e6xxx_teardown_devlink_params(struct dsa_switch *ds); 10 int mv88e6xxx_setup_devlink_resources(struct dsa_switch *ds); 11 int mv88e6xxx_devlink_param_get(struct dsa_switch *ds, u32 id, 13 int mv88e6xxx_devlink_param_set(struct dsa_switch *ds, u32 id, 15 int mv88e6xxx_setup_devlink_regions_global(struct dsa_switch *ds); 16 void mv88e6xxx_teardown_devlink_regions_global(struct dsa_switch *ds); 17 int mv88e6xxx_setup_devlink_regions_port(struct dsa_switch *ds, int port); 18 void mv88e6xxx_teardown_devlink_regions_port(struct dsa_switch *ds, int port); 20 int mv88e6xxx_devlink_info_get(struct dsa_switch *d [all...] |
H A D | hwtstamp.h | 113 int mv88e6xxx_port_hwtstamp_set(struct dsa_switch *ds, int port, 116 int mv88e6xxx_port_hwtstamp_get(struct dsa_switch *ds, int port, 119 bool mv88e6xxx_port_rxtstamp(struct dsa_switch *ds, int port, 121 void mv88e6xxx_port_txtstamp(struct dsa_switch *ds, int port, 124 int mv88e6xxx_get_ts_info(struct dsa_switch *ds, int port, 137 mv88e6xxx_port_hwtstamp_set(struct dsa_switch *ds, int port, in mv88e6xxx_port_hwtstamp_set() 145 mv88e6xxx_port_hwtstamp_get(struct dsa_switch *ds, int port, in mv88e6xxx_port_hwtstamp_get() 151 static inline bool mv88e6xxx_port_rxtstamp(struct dsa_switch *ds, int port, in mv88e6xxx_port_rxtstamp() 158 static inline void mv88e6xxx_port_txtstamp(struct dsa_switch *ds, int port, in mv88e6xxx_port_txtstamp() 163 static inline int mv88e6xxx_get_ts_info(struct dsa_switch *d [all...] |
H A D | devlink.c | 31 int mv88e6xxx_devlink_param_get(struct dsa_switch *ds, u32 id, in mv88e6xxx_devlink_param_get() 53 int mv88e6xxx_devlink_param_set(struct dsa_switch *ds, u32 id, in mv88e6xxx_devlink_param_set() 81 int mv88e6xxx_setup_devlink_params(struct dsa_switch *ds) in mv88e6xxx_setup_devlink_params() 87 void mv88e6xxx_teardown_devlink_params(struct dsa_switch *ds) in mv88e6xxx_teardown_devlink_params() 176 int mv88e6xxx_setup_devlink_resources(struct dsa_switch *ds) in mv88e6xxx_setup_devlink_resources() 270 struct dsa_switch *ds = dsa_devlink_to_ds(dl); in mv88e6xxx_region_global_snapshot() 376 struct dsa_switch *ds = dsa_devlink_to_ds(dl); in mv88e6xxx_region_atu_snapshot() 438 struct dsa_switch *ds = dsa_devlink_to_ds(dl); in mv88e6xxx_region_vtu_snapshot() 521 struct dsa_switch *ds = dsa_devlink_to_ds(dl); in mv88e6xxx_region_stu_snapshot() 578 struct dsa_switch *d in mv88e6xxx_region_pvt_snapshot() [all...] |
/linux/drivers/net/dsa/b53/ |
H A D | b53_priv.h | 122 struct dsa_switch *ds; 398 void b53_imp_vlan_setup(struct dsa_switch *ds, int cpu_port); 399 int b53_configure_vlan(struct dsa_switch *ds); 400 void b53_get_strings(struct dsa_switch *ds, int port, u32 stringset, 402 void b53_get_ethtool_stats(struct dsa_switch *ds, int port, uint64_t *data); 403 int b53_get_sset_count(struct dsa_switch *ds, int port, int sset); 404 void b53_get_ethtool_phy_stats(struct dsa_switch *ds, int port, uint64_t *data); 405 int b53_set_ageing_time(struct dsa_switch *ds, unsigned int msecs); 406 int b53_br_join(struct dsa_switch *ds, int port, struct dsa_bridge bridge, 408 void b53_br_leave(struct dsa_switch *d [all...] |
/linux/drivers/net/dsa/ocelot/ |
H A D | felix.c | 45 static int felix_cpu_port_for_conduit(struct dsa_switch *ds, in felix_cpu_port_for_conduit() 101 static int felix_tag_8021q_vlan_add_rx(struct dsa_switch *ds, int port, in felix_tag_8021q_vlan_add_rx() 150 static int felix_tag_8021q_vlan_del_rx(struct dsa_switch *ds, int port, in felix_tag_8021q_vlan_del_rx() 172 static int felix_tag_8021q_vlan_add_tx(struct dsa_switch *ds, int port, in felix_tag_8021q_vlan_add_tx() 239 static int felix_tag_8021q_vlan_del_tx(struct dsa_switch *ds, int port, u16 vid) in felix_tag_8021q_vlan_del_tx() 270 static int felix_tag_8021q_vlan_add(struct dsa_switch *ds, int port, u16 vid, in felix_tag_8021q_vlan_add() 304 static int felix_tag_8021q_vlan_del(struct dsa_switch *ds, int port, u16 vid) in felix_tag_8021q_vlan_del() 333 static int felix_update_tag_8021q_rx_rules(struct dsa_switch *ds, int port, in felix_update_tag_8021q_rx_rules() 362 static int felix_trap_get_cpu_port(struct dsa_switch *ds, in felix_trap_get_cpu_port() 381 static int felix_update_trapping_destinations(struct dsa_switch *d [all...] |
H A D | felix.h | 57 int (*port_setup_tc)(struct dsa_switch *ds, int port, 77 int (*setup)(struct dsa_switch *ds); 78 void (*teardown)(struct dsa_switch *ds); 79 unsigned long (*get_host_fwd_mask)(struct dsa_switch *ds); 80 int (*change_conduit)(struct dsa_switch *ds, int port, 87 struct dsa_switch *ds;
|
/linux/drivers/net/dsa/qca/ |
H A D | qca8k.h | 378 int (*autocast_mib)(struct dsa_switch *ds, int port, u64 *data); 459 struct dsa_switch *ds; 516 void qca8k_get_strings(struct dsa_switch *ds, int port, u32 stringset, uint8_t *data); 517 void qca8k_get_ethtool_stats(struct dsa_switch *ds, int port, 519 int qca8k_get_sset_count(struct dsa_switch *ds, int port, int sset); 522 int qca8k_set_mac_eee(struct dsa_switch *ds, int port, struct ethtool_keee *eee); 525 void qca8k_port_stp_state_set(struct dsa_switch *ds, int port, u8 state); 526 int qca8k_port_pre_bridge_flags(struct dsa_switch *ds, int port, 529 int qca8k_port_bridge_flags(struct dsa_switch *ds, int port, 532 int qca8k_port_bridge_join(struct dsa_switch *d [all...] |
/linux/drivers/net/dsa/ |
H A D | dsa_loop.c | 50 static int dsa_loop_setup_devlink_resources(struct dsa_switch *ds) in dsa_loop_setup_devlink_resources() 78 static enum dsa_tag_protocol dsa_loop_get_protocol(struct dsa_switch *ds, in dsa_loop_get_protocol() 87 static int dsa_loop_setup(struct dsa_switch *ds) in dsa_loop_setup() 101 static void dsa_loop_teardown(struct dsa_switch *ds) in dsa_loop_teardown() 106 static int dsa_loop_get_sset_count(struct dsa_switch *ds, int port, int sset) in dsa_loop_get_sset_count() 114 static void dsa_loop_get_strings(struct dsa_switch *ds, int port, in dsa_loop_get_strings() 127 static void dsa_loop_get_ethtool_stats(struct dsa_switch *ds, int port, in dsa_loop_get_ethtool_stats() 137 static int dsa_loop_phy_read(struct dsa_switch *ds, int port, int regnum) in dsa_loop_phy_read() 152 static int dsa_loop_phy_write(struct dsa_switch *ds, int port, in dsa_loop_phy_write() 168 static int dsa_loop_port_bridge_join(struct dsa_switch *d [all...] |
H A D | rzn1_a5psw.c | 95 static enum dsa_tag_protocol a5psw_get_tag_protocol(struct dsa_switch *ds, in a5psw_get_tag_protocol() 187 static void a5psw_port_disable(struct dsa_switch *ds, int port) in a5psw_port_disable() 195 static int a5psw_port_enable(struct dsa_switch *ds, int port, in a5psw_port_enable() 206 static int a5psw_port_change_mtu(struct dsa_switch *ds, int port, int new_mtu) in a5psw_port_change_mtu() 216 static int a5psw_port_max_mtu(struct dsa_switch *ds, int port) in a5psw_port_max_mtu() 221 static void a5psw_phylink_get_caps(struct dsa_switch *ds, int port, in a5psw_phylink_get_caps() 300 static int a5psw_set_ageing_time(struct dsa_switch *ds, unsigned int msecs) in a5psw_set_ageing_time() 358 static int a5psw_port_bridge_join(struct dsa_switch *ds, int port, in a5psw_port_bridge_join() 380 static void a5psw_port_bridge_leave(struct dsa_switch *ds, int port, in a5psw_port_bridge_leave() 394 static int a5psw_port_pre_bridge_flags(struct dsa_switch *d [all...] |
H A D | mv88e6060.c | 45 static enum dsa_tag_protocol mv88e6060_get_tag_protocol(struct dsa_switch *ds, in mv88e6060_get_tag_protocol() 187 static int mv88e6060_setup(struct dsa_switch *ds) in mv88e6060_setup() 225 static int mv88e6060_phy_read(struct dsa_switch *ds, int port, int regnum) in mv88e6060_phy_read() 238 mv88e6060_phy_write(struct dsa_switch *ds, int port, int regnum, u16 val) in mv88e6060_phy_write() 250 static void mv88e6060_phylink_get_caps(struct dsa_switch *ds, int port, in mv88e6060_phylink_get_caps() 306 struct dsa_switch *ds; in mv88e6060_probe() 339 struct dsa_switch *ds = dev_get_drvdata(&mdiodev->dev); in mv88e6060_remove() 349 struct dsa_switch *ds = dev_get_drvdata(&mdiodev->dev); in mv88e6060_shutdown()
|
/linux/net/dsa/ |
H A D | devlink.h | 7 struct dsa_switch; 11 void dsa_switch_devlink_register(struct dsa_switch *ds); 12 void dsa_switch_devlink_unregister(struct dsa_switch *ds); 13 int dsa_switch_devlink_alloc(struct dsa_switch *ds); 14 void dsa_switch_devlink_free(struct dsa_switch *ds);
|
H A D | tag_8021q.c | 74 struct dsa_switch *ds; 146 struct dsa_switch *ds = dp->ds; in dsa_port_do_tag_8021q_vlan_add() 182 struct dsa_switch *ds = dp->ds; in dsa_port_do_tag_8021q_vlan_del() 217 int dsa_switch_tag_8021q_vlan_add(struct dsa_switch *ds, in dsa_switch_tag_8021q_vlan_add() 249 int dsa_switch_tag_8021q_vlan_del(struct dsa_switch *ds, in dsa_switch_tag_8021q_vlan_del() 288 int dsa_tag_8021q_bridge_join(struct dsa_switch *ds, int port, in dsa_tag_8021q_bridge_join() 314 void dsa_tag_8021q_bridge_leave(struct dsa_switch *ds, int port, in dsa_tag_8021q_bridge_leave() 339 static int dsa_tag_8021q_port_setup(struct dsa_switch *ds, int port) in dsa_tag_8021q_port_setup() 369 static void dsa_tag_8021q_port_teardown(struct dsa_switch *ds, int port) in dsa_tag_8021q_port_teardown() 389 static int dsa_tag_8021q_setup(struct dsa_switch *d [all...] |
H A D | user.c | 68 static bool dsa_switch_supports_uc_filtering(struct dsa_switch *ds) in dsa_switch_supports_uc_filtering() 75 static bool dsa_switch_supports_mc_filtering(struct dsa_switch *ds) in dsa_switch_supports_mc_filtering() 90 struct dsa_switch *ds = dp->ds; in dsa_user_standalone_event_work() 279 struct dsa_switch *ds = dp->ds; in dsa_user_sync_ha() 300 struct dsa_switch *ds = dp->ds; in dsa_user_unsync_ha() 321 struct dsa_switch *ds = bus->priv; in dsa_user_phy_read() 331 struct dsa_switch *ds = bus->priv; in dsa_user_phy_write() 339 void dsa_user_mii_bus_init(struct dsa_switch *ds) in dsa_user_mii_bus_init() 362 struct dsa_switch *ds = dp->ds; in dsa_user_host_uc_install() 390 struct dsa_switch *d in dsa_user_host_uc_uninstall() [all...] |
/linux/drivers/net/dsa/hirschmann/ |
H A D | hellcreek_hwtstamp.h | 40 int hellcreek_port_hwtstamp_set(struct dsa_switch *ds, int port, 43 int hellcreek_port_hwtstamp_get(struct dsa_switch *ds, int port, 46 bool hellcreek_port_rxtstamp(struct dsa_switch *ds, int port, 48 void hellcreek_port_txtstamp(struct dsa_switch *ds, int port, 51 int hellcreek_get_ts_info(struct dsa_switch *ds, int port,
|
/linux/include/linux/dsa/ |
H A D | 8021q.h | 16 int dsa_tag_8021q_register(struct dsa_switch *ds, __be16 proto); 18 void dsa_tag_8021q_unregister(struct dsa_switch *ds); 20 int dsa_tag_8021q_bridge_join(struct dsa_switch *ds, int port, 24 void dsa_tag_8021q_bridge_leave(struct dsa_switch *ds, int port,
|
/linux/drivers/net/dsa/xrs700x/ |
H A D | xrs700x.c | 86 static void xrs700x_get_strings(struct dsa_switch *ds, int port, in xrs700x_get_strings() 98 static int xrs700x_get_sset_count(struct dsa_switch *ds, int port, int sset) in xrs700x_get_sset_count() 159 static void xrs700x_get_ethtool_stats(struct dsa_switch *ds, int port, in xrs700x_get_ethtool_stats() 172 static void xrs700x_get_stats64(struct dsa_switch *ds, int port, in xrs700x_get_stats64() 226 static enum dsa_tag_protocol xrs700x_get_tag_protocol(struct dsa_switch *ds, in xrs700x_get_tag_protocol() 233 static int xrs700x_reset(struct dsa_switch *ds) in xrs700x_reset() 255 static void xrs700x_port_stp_state_set(struct dsa_switch *ds, int port, in xrs700x_port_stp_state_set() 297 static int xrs700x_port_add_bpdu_ipf(struct dsa_switch *ds, int port) in xrs700x_port_add_bpdu_ipf() 340 static int xrs700x_port_add_hsrsup_ipf(struct dsa_switch *ds, int port, in xrs700x_port_add_hsrsup_ipf() 383 static int xrs700x_port_setup(struct dsa_switch *d [all...] |