| /linux/include/net/ |
| H A D | dsa.h | 98 struct dsa_switch; 105 int (*connect)(struct dsa_switch *ds); 106 void (*disconnect)(struct dsa_switch *ds); 257 struct dsa_switch *ds; 379 struct dsa_switch { struct 513 static inline struct dsa_port *dsa_to_port(struct dsa_switch *ds, int p) in dsa_to_port() argument 551 static inline bool dsa_is_unused_port(struct dsa_switch *ds, int p) in dsa_is_unused_port() 556 static inline bool dsa_is_cpu_port(struct dsa_switch *ds, int p) in dsa_is_cpu_port() 561 static inline bool dsa_is_dsa_port(struct dsa_switch *ds, int p) in dsa_is_dsa_port() 566 static inline bool dsa_is_user_port(struct dsa_switch *ds, int p) in dsa_is_user_port() [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 *ds, u64 ns, [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 *ds) { } in sja1105_tas_adjfreq() [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 *ds); [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() 108 static void sja1105_teardown_devlink_regions(struct dsa_switch *ds) in sja1105_teardown_devlink_regions() 119 int sja1105_devlink_info_get(struct dsa_switch *ds, in sja1105_devlink_info_get() 130 int sja1105_devlink_setup(struct dsa_switch *ds) in sja1105_devlink_setup() 135 void sja1105_devlink_teardown(struct dsa_switch *ds) in sja1105_devlink_teardown()
|
| /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 *ds) in ksz_ptp_clock_register() [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);
|
| /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 *ds,
|
| 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, 138 mv88e6xxx_port_hwtstamp_set(struct dsa_switch *ds, int port, in mv88e6xxx_port_hwtstamp_set() 146 mv88e6xxx_port_hwtstamp_get(struct dsa_switch *ds, int port, in mv88e6xxx_port_hwtstamp_get() 152 static inline bool mv88e6xxx_port_rxtstamp(struct dsa_switch *ds, int port, in mv88e6xxx_port_rxtstamp() 159 static inline void mv88e6xxx_port_txtstamp(struct dsa_switch *ds, int port, in mv88e6xxx_port_txtstamp() 164 static inline int mv88e6xxx_get_ts_info(struct dsa_switch *ds, int port, in mv88e6xxx_get_ts_info()
|
| 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() 437 struct dsa_switch *ds = dsa_devlink_to_ds(dl); in mv88e6xxx_region_vtu_snapshot() 519 struct dsa_switch *ds = dsa_devlink_to_ds(dl); in mv88e6xxx_region_stu_snapshot() 575 struct dsa_switch *ds = dsa_devlink_to_ds(dl); in mv88e6xxx_region_pvt_snapshot() [all …]
|
| /linux/net/dsa/ |
| H A 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 …]
|
| H A 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 …]
|
| 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 *ds) in dsa_tag_8021q_setup() [all …]
|
| H A 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() 120 struct dsa_switch *ds = dp->ds; in dsa_port_supports_hwtstamp() 133 struct dsa_switch *ds = dp->ds; in dsa_port_set_state() 167 struct dsa_switch *ds = dp->ds; in dsa_port_set_state_now() 181 struct dsa_switch *ds = dp->ds; in dsa_port_set_mst_state() 215 struct dsa_switch *ds = dp->ds; in dsa_port_enable_rt() 247 struct dsa_switch *ds = dp->ds; in dsa_port_disable_rt() 272 struct dsa_switch *ds = dp->ds; in dsa_port_reset_vlan_filtering() [all …]
|
| /linux/drivers/net/dsa/b53/ |
| H A D | b53_priv.h | 133 struct dsa_switch *ds; 491 void b53_imp_vlan_setup(struct dsa_switch *ds, int cpu_port); 492 int b53_configure_vlan(struct dsa_switch *ds); 493 void b53_get_strings(struct dsa_switch *ds, int port, u32 stringset, 495 void b53_get_ethtool_stats(struct dsa_switch *ds, int port, uint64_t *data); 496 int b53_get_sset_count(struct dsa_switch *ds, int port, int sset); 497 void b53_get_ethtool_phy_stats(struct dsa_switch *ds, int port, uint64_t *data); 498 int b53_set_ageing_time(struct dsa_switch *ds, unsigned int msecs); 499 int b53_br_join(struct dsa_switch *ds, int port, struct dsa_bridge bridge, 501 void b53_br_leave(struct dsa_switch *ds, int port, struct dsa_bridge bridge); [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() 149 static int felix_tag_8021q_vlan_del_rx(struct dsa_switch *ds, int port, in felix_tag_8021q_vlan_del_rx() 171 static int felix_tag_8021q_vlan_add_tx(struct dsa_switch *ds, int port, in felix_tag_8021q_vlan_add_tx() 238 static int felix_tag_8021q_vlan_del_tx(struct dsa_switch *ds, int port, u16 vid) in felix_tag_8021q_vlan_del_tx() 269 static int felix_tag_8021q_vlan_add(struct dsa_switch *ds, int port, u16 vid, in felix_tag_8021q_vlan_add() 303 static int felix_tag_8021q_vlan_del(struct dsa_switch *ds, int port, u16 vid) in felix_tag_8021q_vlan_del() 332 static int felix_update_tag_8021q_rx_rules(struct dsa_switch *ds, int port, in felix_update_tag_8021q_rx_rules() 361 static int felix_trap_get_cpu_port(struct dsa_switch *ds, in felix_trap_get_cpu_port() 380 static int felix_update_trapping_destinations(struct dsa_switch *ds, in felix_update_trapping_destinations() [all …]
|
| H A D | felix.h | 58 int (*port_setup_tc)(struct dsa_switch *ds, int port, 78 int (*setup)(struct dsa_switch *ds); 79 void (*teardown)(struct dsa_switch *ds); 80 unsigned long (*get_host_fwd_mask)(struct dsa_switch *ds); 81 int (*change_conduit)(struct dsa_switch *ds, int port, 88 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 *ds, int port, [all …]
|
| H A 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 static int qca8k_port_configure_learning(struct dsa_switch *ds, int port, in qca8k_port_configure_learning() 575 void qca8k_port_stp_state_set(struct dsa_switch *ds, int port, u8 state) in qca8k_port_stp_state_set() 656 int qca8k_port_pre_bridge_flags(struct dsa_switch *ds, int port, in qca8k_port_pre_bridge_flags() 666 int qca8k_port_bridge_flags(struct dsa_switch *ds, int port, in qca8k_port_bridge_flags() 697 int qca8k_port_bridge_join(struct dsa_switch *ds, int port, in qca8k_port_bridge_join() 707 void qca8k_port_bridge_leave(struct dsa_switch *ds, int port, in qca8k_port_bridge_leave() [all …]
|
| /linux/drivers/net/dsa/ |
| H A D | dsa_loop.c | 63 static int dsa_loop_setup_devlink_resources(struct dsa_switch *ds) in dsa_loop_setup_devlink_resources() 91 static enum dsa_tag_protocol dsa_loop_get_protocol(struct dsa_switch *ds, in dsa_loop_get_protocol() 100 static int dsa_loop_setup(struct dsa_switch *ds) in dsa_loop_setup() 114 static void dsa_loop_teardown(struct dsa_switch *ds) in dsa_loop_teardown() 119 static int dsa_loop_get_sset_count(struct dsa_switch *ds, int port, int sset) in dsa_loop_get_sset_count() 127 static void dsa_loop_get_strings(struct dsa_switch *ds, int port, in dsa_loop_get_strings() 140 static void dsa_loop_get_ethtool_stats(struct dsa_switch *ds, int port, in dsa_loop_get_ethtool_stats() 150 static int dsa_loop_phy_read(struct dsa_switch *ds, int port, int regnum) in dsa_loop_phy_read() 165 static int dsa_loop_phy_write(struct dsa_switch *ds, int port, in dsa_loop_phy_write() 181 static int dsa_loop_port_bridge_join(struct dsa_switch *ds, int port, in dsa_loop_port_bridge_join() [all …]
|
| H A D | bcm_sf2.h | 121 static inline struct bcm_sf2_priv *bcm_sf2_to_priv(struct dsa_switch *ds) in bcm_sf2_to_priv() 224 int bcm_sf2_get_rxnfc(struct dsa_switch *ds, int port, 226 int bcm_sf2_set_rxnfc(struct dsa_switch *ds, int port, 229 void bcm_sf2_cfp_exit(struct dsa_switch *ds); 230 int bcm_sf2_cfp_resume(struct dsa_switch *ds); 231 void bcm_sf2_cfp_get_strings(struct dsa_switch *ds, int port, u32 stringset, 233 void bcm_sf2_cfp_get_ethtool_stats(struct dsa_switch *ds, int port, 235 int bcm_sf2_cfp_get_sset_count(struct dsa_switch *ds, int port, int sset);
|
| /linux/drivers/net/dsa/mxl862xx/ |
| H A D | mxl862xx.c | 39 static enum dsa_tag_protocol mxl862xx_get_tag_protocol(struct dsa_switch *ds, in mxl862xx_get_tag_protocol() 100 static int mxl862xx_wait_ready(struct dsa_switch *ds) in mxl862xx_wait_ready() 139 static int mxl862xx_setup_mdio(struct dsa_switch *ds) in mxl862xx_setup_mdio() 171 static int mxl862xx_setup(struct dsa_switch *ds) in mxl862xx_setup() 187 static int mxl862xx_port_state(struct dsa_switch *ds, int port, bool enable) in mxl862xx_port_state() 208 static int mxl862xx_port_enable(struct dsa_switch *ds, int port, in mxl862xx_port_enable() 214 static void mxl862xx_port_disable(struct dsa_switch *ds, int port) in mxl862xx_port_disable() 220 static void mxl862xx_port_fast_age(struct dsa_switch *ds, int port) in mxl862xx_port_fast_age() 231 static int mxl862xx_configure_ctp_port(struct dsa_switch *ds, int port, in mxl862xx_configure_ctp_port() 246 static int mxl862xx_configure_sp_tag_proto(struct dsa_switch *ds, int port, in mxl862xx_configure_sp_tag_proto() [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,
|