/linux-6.12.1/include/net/ |
D | dsa.h | 90 struct dsa_switch; 97 int (*connect)(struct dsa_switch *ds); 98 void (*disconnect)(struct dsa_switch *ds); 255 struct dsa_switch *ds; 376 struct dsa_switch { struct 510 static inline struct dsa_port *dsa_to_port(struct dsa_switch *ds, int p) in dsa_to_port() argument 548 static inline bool dsa_is_unused_port(struct dsa_switch *ds, int p) in dsa_is_unused_port() 553 static inline bool dsa_is_cpu_port(struct dsa_switch *ds, int p) in dsa_is_cpu_port() 558 static inline bool dsa_is_dsa_port(struct dsa_switch *ds, int p) in dsa_is_dsa_port() 563 static inline bool dsa_is_user_port(struct dsa_switch *ds, int p) in dsa_is_user_port() [all …]
|
/linux-6.12.1/drivers/net/dsa/sja1105/ |
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, struct ifreq *ifr); 117 int sja1105_hwtstamp_set(struct dsa_switch *ds, int port, struct ifreq *ifr); 119 int __sja1105_ptp_gettimex(struct dsa_switch *ds, u64 *ns, 122 int __sja1105_ptp_settime(struct dsa_switch *ds, u64 ns, [all …]
|
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 *ds) { } in sja1105_tas_adjfreq() [all …]
|
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 *ds); [all …]
|
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()
|
/linux-6.12.1/drivers/net/dsa/microchip/ |
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, struct ifreq *ifr); 43 int ksz_hwtstamp_set(struct dsa_switch *ds, int port, struct ifreq *ifr); 44 void ksz_port_txtstamp(struct dsa_switch *ds, int port, struct sk_buff *skb); 46 bool ksz_port_rxtstamp(struct dsa_switch *ds, int port, struct sk_buff *skb, 48 int ksz_ptp_irq_setup(struct dsa_switch *ds, u8 p); 49 void ksz_ptp_irq_free(struct dsa_switch *ds, u8 p); 58 static inline int ksz_ptp_clock_register(struct dsa_switch *ds) in ksz_ptp_clock_register() [all …]
|
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);
|
/linux-6.12.1/drivers/net/dsa/mv88e6xxx/ |
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 *ds,
|
D | hwtstamp.h | 113 int mv88e6xxx_port_hwtstamp_set(struct dsa_switch *ds, int port, 115 int mv88e6xxx_port_hwtstamp_get(struct dsa_switch *ds, int port, 118 bool mv88e6xxx_port_rxtstamp(struct dsa_switch *ds, int port, 120 void mv88e6xxx_port_txtstamp(struct dsa_switch *ds, int port, 123 int mv88e6xxx_get_ts_info(struct dsa_switch *ds, int port, 135 static inline int mv88e6xxx_port_hwtstamp_set(struct dsa_switch *ds, in mv88e6xxx_port_hwtstamp_set() 141 static inline int mv88e6xxx_port_hwtstamp_get(struct dsa_switch *ds, in mv88e6xxx_port_hwtstamp_get() 147 static inline bool mv88e6xxx_port_rxtstamp(struct dsa_switch *ds, int port, in mv88e6xxx_port_rxtstamp() 154 static inline void mv88e6xxx_port_txtstamp(struct dsa_switch *ds, int port, in mv88e6xxx_port_txtstamp() 159 static inline int mv88e6xxx_get_ts_info(struct dsa_switch *ds, int port, in mv88e6xxx_get_ts_info()
|
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() 450 struct dsa_switch *ds = dsa_devlink_to_ds(dl); in mv88e6xxx_region_vtu_snapshot() 533 struct dsa_switch *ds = dsa_devlink_to_ds(dl); in mv88e6xxx_region_stu_snapshot() 590 struct dsa_switch *ds = dsa_devlink_to_ds(dl); in mv88e6xxx_region_pvt_snapshot() [all …]
|
/linux-6.12.1/drivers/net/dsa/b53/ |
D | b53_priv.h | 108 struct dsa_switch *ds; 335 void b53_imp_vlan_setup(struct dsa_switch *ds, int cpu_port); 336 int b53_configure_vlan(struct dsa_switch *ds); 337 void b53_get_strings(struct dsa_switch *ds, int port, u32 stringset, 339 void b53_get_ethtool_stats(struct dsa_switch *ds, int port, uint64_t *data); 340 int b53_get_sset_count(struct dsa_switch *ds, int port, int sset); 341 void b53_get_ethtool_phy_stats(struct dsa_switch *ds, int port, uint64_t *data); 342 int b53_br_join(struct dsa_switch *ds, int port, struct dsa_bridge bridge, 344 void b53_br_leave(struct dsa_switch *ds, int port, struct dsa_bridge bridge); 345 void b53_br_set_stp_state(struct dsa_switch *ds, int port, u8 state); [all …]
|
/linux-6.12.1/net/dsa/ |
D | devlink.c | 15 struct dsa_switch *ds = dsa_devlink_to_ds(dl); in dsa_devlink_info_get() 27 struct dsa_switch *ds = dsa_devlink_to_ds(dl); in dsa_devlink_sb_pool_get() 41 struct dsa_switch *ds = dsa_devlink_to_ds(dl); in dsa_devlink_sb_pool_set() 54 struct dsa_switch *ds = dsa_devlink_port_to_ds(dlp); in dsa_devlink_sb_port_pool_get() 69 struct dsa_switch *ds = dsa_devlink_port_to_ds(dlp); in dsa_devlink_sb_port_pool_set() 85 struct dsa_switch *ds = dsa_devlink_port_to_ds(dlp); in dsa_devlink_sb_tc_pool_bind_get() 103 struct dsa_switch *ds = dsa_devlink_port_to_ds(dlp); in dsa_devlink_sb_tc_pool_bind_set() 118 struct dsa_switch *ds = dsa_devlink_to_ds(dl); in dsa_devlink_sb_occ_snapshot() 129 struct dsa_switch *ds = dsa_devlink_to_ds(dl); in dsa_devlink_sb_occ_max_clear() 142 struct dsa_switch *ds = dsa_devlink_port_to_ds(dlp); in dsa_devlink_sb_occ_port_pool_get() [all …]
|
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);
|
D | switch.c | 23 static unsigned int dsa_switch_fastest_ageing_time(struct dsa_switch *ds, in dsa_switch_fastest_ageing_time() 35 static int dsa_switch_ageing_time(struct dsa_switch *ds, in dsa_switch_ageing_time() 61 static int dsa_switch_mtu(struct dsa_switch *ds, in dsa_switch_mtu() 82 static int dsa_switch_bridge_join(struct dsa_switch *ds, in dsa_switch_bridge_join() 113 static int dsa_switch_bridge_leave(struct dsa_switch *ds, in dsa_switch_bridge_leave() 162 struct dsa_switch *ds = dp->ds; in dsa_port_do_mdb_add() 214 struct dsa_switch *ds = dp->ds; in dsa_port_do_mdb_del() 261 struct dsa_switch *ds = dp->ds; in dsa_port_do_fdb_add() 311 struct dsa_switch *ds = dp->ds; in dsa_port_do_fdb_del() 354 static int dsa_switch_do_lag_fdb_add(struct dsa_switch *ds, struct dsa_lag *lag, in dsa_switch_do_lag_fdb_add() [all …]
|
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 *ds) in dsa_tag_8021q_setup() [all …]
|
D | port.c | 57 struct dsa_switch *ds = dp->ds; in dsa_port_fast_age() 70 struct dsa_switch *ds = dp->ds; in dsa_port_vlan_fast_age() 107 struct dsa_switch *ds = dp->ds; in dsa_port_can_configure_learning() 119 struct dsa_switch *ds = dp->ds; in dsa_port_supports_hwtstamp() 137 struct dsa_switch *ds = dp->ds; in dsa_port_set_state() 171 struct dsa_switch *ds = dp->ds; in dsa_port_set_state_now() 185 struct dsa_switch *ds = dp->ds; in dsa_port_set_mst_state() 219 struct dsa_switch *ds = dp->ds; in dsa_port_enable_rt() 251 struct dsa_switch *ds = dp->ds; in dsa_port_disable_rt() 276 struct dsa_switch *ds = dp->ds; in dsa_port_reset_vlan_filtering() [all …]
|
/linux-6.12.1/drivers/net/dsa/ocelot/ |
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 *ds, in felix_update_trapping_destinations() [all …]
|
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-6.12.1/drivers/net/dsa/qca/ |
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); 523 int qca8k_get_mac_eee(struct dsa_switch *ds, int port, struct ethtool_keee *e); 526 void qca8k_port_stp_state_set(struct dsa_switch *ds, int port, u8 state); 527 int qca8k_port_pre_bridge_flags(struct dsa_switch *ds, int port, 530 int qca8k_port_bridge_flags(struct dsa_switch *ds, int port, [all …]
|
D | qca8k-common.c | 480 void qca8k_get_strings(struct dsa_switch *ds, int port, u32 stringset, in qca8k_get_strings() 493 void qca8k_get_ethtool_stats(struct dsa_switch *ds, int port, in qca8k_get_ethtool_stats() 526 int qca8k_get_sset_count(struct dsa_switch *ds, int port, int sset) in qca8k_get_sset_count() 536 int qca8k_set_mac_eee(struct dsa_switch *ds, int port, in qca8k_set_mac_eee() 560 int qca8k_get_mac_eee(struct dsa_switch *ds, int port, in qca8k_get_mac_eee() 567 static int qca8k_port_configure_learning(struct dsa_switch *ds, int port, in qca8k_port_configure_learning() 582 void qca8k_port_stp_state_set(struct dsa_switch *ds, int port, u8 state) in qca8k_port_stp_state_set() 663 int qca8k_port_pre_bridge_flags(struct dsa_switch *ds, int port, in qca8k_port_pre_bridge_flags() 673 int qca8k_port_bridge_flags(struct dsa_switch *ds, int port, in qca8k_port_bridge_flags() 704 int qca8k_port_bridge_join(struct dsa_switch *ds, int port, in qca8k_port_bridge_join() [all …]
|
/linux-6.12.1/drivers/net/dsa/ |
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() 128 static void dsa_loop_get_ethtool_stats(struct dsa_switch *ds, int port, in dsa_loop_get_ethtool_stats() 138 static int dsa_loop_phy_read(struct dsa_switch *ds, int port, int regnum) in dsa_loop_phy_read() 153 static int dsa_loop_phy_write(struct dsa_switch *ds, int port, in dsa_loop_phy_write() 169 static int dsa_loop_port_bridge_join(struct dsa_switch *ds, int port, in dsa_loop_port_bridge_join() [all …]
|
D | bcm_sf2.h | 120 static inline struct bcm_sf2_priv *bcm_sf2_to_priv(struct dsa_switch *ds) in bcm_sf2_to_priv() 223 int bcm_sf2_get_rxnfc(struct dsa_switch *ds, int port, 225 int bcm_sf2_set_rxnfc(struct dsa_switch *ds, int port, 228 void bcm_sf2_cfp_exit(struct dsa_switch *ds); 229 int bcm_sf2_cfp_resume(struct dsa_switch *ds); 230 void bcm_sf2_cfp_get_strings(struct dsa_switch *ds, int port, 232 void bcm_sf2_cfp_get_ethtool_stats(struct dsa_switch *ds, int port, 234 int bcm_sf2_cfp_get_sset_count(struct dsa_switch *ds, int port, int sset);
|
/linux-6.12.1/drivers/net/dsa/hirschmann/ |
D | hellcreek_hwtstamp.h | 40 int hellcreek_port_hwtstamp_set(struct dsa_switch *ds, int port, 42 int hellcreek_port_hwtstamp_get(struct dsa_switch *ds, int port, 45 bool hellcreek_port_rxtstamp(struct dsa_switch *ds, int port, 47 void hellcreek_port_txtstamp(struct dsa_switch *ds, int port, 50 int hellcreek_get_ts_info(struct dsa_switch *ds, int port,
|
/linux-6.12.1/include/linux/dsa/ |
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-6.12.1/drivers/net/dsa/realtek/ |
D | realtek.h | 67 struct dsa_switch ds; 137 int rtl8366_vlan_add(struct dsa_switch *ds, int port, 140 int rtl8366_vlan_del(struct dsa_switch *ds, int port, 142 void rtl8366_get_strings(struct dsa_switch *ds, int port, u32 stringset, 144 int rtl8366_get_sset_count(struct dsa_switch *ds, int port, int sset); 145 void rtl8366_get_ethtool_stats(struct dsa_switch *ds, int port, uint64_t *data);
|