Home
last modified time | relevance | path

Searched refs:dsa_switch (Results 1 – 25 of 90) sorted by relevance

1234

/openbmc/linux/include/net/
H A Ddsa.h91 struct dsa_switch;
98 int (*connect)(struct dsa_switch *ds);
99 void (*disconnect)(struct dsa_switch *ds);
256 struct dsa_switch *ds;
371 struct dsa_switch { struct
491 static inline struct dsa_port *dsa_to_port(struct dsa_switch *ds, int p) in dsa_to_port() argument
529 static inline bool dsa_is_unused_port(struct dsa_switch *ds, int p) in dsa_is_unused_port()
534 static inline bool dsa_is_cpu_port(struct dsa_switch *ds, int p) in dsa_is_cpu_port()
539 static inline bool dsa_is_dsa_port(struct dsa_switch *ds, int p) in dsa_is_dsa_port()
544 static inline bool dsa_is_user_port(struct dsa_switch *ds, int p) in dsa_is_user_port()
[all …]
/openbmc/linux/drivers/net/dsa/sja1105/
H A Dsja1105_ptp.h93 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 …]
H A Dsja1105_tas.h53 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 Dsja1105.h142 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 Dsja1105_devlink.c41 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()
/openbmc/linux/drivers/net/dsa/microchip/
H A Dksz_ptp.h36 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 …]
/openbmc/linux/drivers/net/dsa/b53/
H A Db53_priv.h108 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 …]
/openbmc/linux/drivers/net/dsa/mv88e6xxx/
H A Ddevlink.h8 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 Dhwtstamp.h113 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()
/openbmc/linux/net/dsa/
H A Ddevlink.c15 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 Ddevlink.h7 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 Dswitch.c23 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 Dtag_8021q.c74 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()
311 void dsa_tag_8021q_bridge_leave(struct dsa_switch *ds, int port, in dsa_tag_8021q_bridge_leave()
336 static int dsa_tag_8021q_port_setup(struct dsa_switch *ds, int port) in dsa_tag_8021q_port_setup()
366 static void dsa_tag_8021q_port_teardown(struct dsa_switch *ds, int port) in dsa_tag_8021q_port_teardown()
386 static int dsa_tag_8021q_setup(struct dsa_switch *ds) in dsa_tag_8021q_setup()
[all …]
H A Dport.c57 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 …]
/openbmc/linux/drivers/net/dsa/ocelot/
H A Dfelix.c45 static int felix_cpu_port_for_master(struct dsa_switch *ds, in felix_cpu_port_for_master()
67 static int felix_tag_8021q_vlan_add_rx(struct dsa_switch *ds, int port, in felix_tag_8021q_vlan_add_rx()
107 static int felix_tag_8021q_vlan_del_rx(struct dsa_switch *ds, int port, in felix_tag_8021q_vlan_del_rx()
129 static int felix_tag_8021q_vlan_add_tx(struct dsa_switch *ds, int port, in felix_tag_8021q_vlan_add_tx()
196 static int felix_tag_8021q_vlan_del_tx(struct dsa_switch *ds, int port, u16 vid) in felix_tag_8021q_vlan_del_tx()
227 static int felix_tag_8021q_vlan_add(struct dsa_switch *ds, int port, u16 vid, in felix_tag_8021q_vlan_add()
259 static int felix_tag_8021q_vlan_del(struct dsa_switch *ds, int port, u16 vid) in felix_tag_8021q_vlan_del()
286 static int felix_trap_get_cpu_port(struct dsa_switch *ds, in felix_trap_get_cpu_port()
305 static int felix_update_trapping_destinations(struct dsa_switch *ds, in felix_update_trapping_destinations()
408 static int felix_tag_npi_setup(struct dsa_switch *ds) in felix_tag_npi_setup()
[all …]
H A Dfelix.h58 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_master)(struct dsa_switch *ds, int port,
89 struct dsa_switch *ds;
/openbmc/linux/drivers/net/dsa/qca/
H A Dqca8k.h378 int (*autocast_mib)(struct dsa_switch *ds, int port, u64 *data);
457 struct dsa_switch *ds;
514 void qca8k_get_strings(struct dsa_switch *ds, int port, u32 stringset, uint8_t *data);
515 void qca8k_get_ethtool_stats(struct dsa_switch *ds, int port,
517 int qca8k_get_sset_count(struct dsa_switch *ds, int port, int sset);
520 int qca8k_set_mac_eee(struct dsa_switch *ds, int port, struct ethtool_eee *eee);
521 int qca8k_get_mac_eee(struct dsa_switch *ds, int port, struct ethtool_eee *e);
524 void qca8k_port_stp_state_set(struct dsa_switch *ds, int port, u8 state);
525 int qca8k_port_pre_bridge_flags(struct dsa_switch *ds, int port,
528 int qca8k_port_bridge_flags(struct dsa_switch *ds, int port,
[all …]
H A Dqca8k-common.c480 void qca8k_get_strings(struct dsa_switch *ds, int port, u32 stringset, in qca8k_get_strings()
494 void qca8k_get_ethtool_stats(struct dsa_switch *ds, int port, in qca8k_get_ethtool_stats()
527 int qca8k_get_sset_count(struct dsa_switch *ds, int port, int sset) in qca8k_get_sset_count()
537 int qca8k_set_mac_eee(struct dsa_switch *ds, int port, in qca8k_set_mac_eee()
561 int qca8k_get_mac_eee(struct dsa_switch *ds, int port, in qca8k_get_mac_eee()
568 static int qca8k_port_configure_learning(struct dsa_switch *ds, int port, in qca8k_port_configure_learning()
583 void qca8k_port_stp_state_set(struct dsa_switch *ds, int port, u8 state) in qca8k_port_stp_state_set()
618 int qca8k_port_pre_bridge_flags(struct dsa_switch *ds, int port, in qca8k_port_pre_bridge_flags()
628 int qca8k_port_bridge_flags(struct dsa_switch *ds, int port, in qca8k_port_bridge_flags()
644 int qca8k_port_bridge_join(struct dsa_switch *ds, int port, in qca8k_port_bridge_join()
[all …]
/openbmc/linux/drivers/net/dsa/
H A Ddsa_loop.c50 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 …]
H A Dbcm_sf2.h121 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,
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);
H A Drzn1_a5psw.c95 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()
242 a5psw_phylink_mac_select_pcs(struct dsa_switch *ds, int port, in a5psw_phylink_mac_select_pcs()
254 static void a5psw_phylink_mac_link_down(struct dsa_switch *ds, int port, in a5psw_phylink_mac_link_down()
266 static void a5psw_phylink_mac_link_up(struct dsa_switch *ds, int port, in a5psw_phylink_mac_link_up()
290 static int a5psw_set_ageing_time(struct dsa_switch *ds, unsigned int msecs) in a5psw_set_ageing_time()
[all …]
/openbmc/linux/drivers/net/dsa/hirschmann/
H A Dhellcreek_hwtstamp.h40 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,
/openbmc/linux/include/linux/dsa/
H A D8021q.h11 int dsa_tag_8021q_register(struct dsa_switch *ds, __be16 proto);
13 void dsa_tag_8021q_unregister(struct dsa_switch *ds);
15 int dsa_tag_8021q_bridge_join(struct dsa_switch *ds, int port,
18 void dsa_tag_8021q_bridge_leave(struct dsa_switch *ds, int port,
/openbmc/linux/drivers/net/dsa/realtek/
H A Drealtek.h65 struct dsa_switch *ds;
76 int (*setup_interface)(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);
/openbmc/linux/drivers/net/dsa/xrs700x/
H A Dxrs700x.c86 static void xrs700x_get_strings(struct dsa_switch *ds, int port, in xrs700x_get_strings()
100 static int xrs700x_get_sset_count(struct dsa_switch *ds, int port, int sset) in xrs700x_get_sset_count()
161 static void xrs700x_get_ethtool_stats(struct dsa_switch *ds, int port, in xrs700x_get_ethtool_stats()
174 static void xrs700x_get_stats64(struct dsa_switch *ds, int port, in xrs700x_get_stats64()
228 static enum dsa_tag_protocol xrs700x_get_tag_protocol(struct dsa_switch *ds, in xrs700x_get_tag_protocol()
235 static int xrs700x_reset(struct dsa_switch *ds) in xrs700x_reset()
257 static void xrs700x_port_stp_state_set(struct dsa_switch *ds, int port, in xrs700x_port_stp_state_set()
299 static int xrs700x_port_add_bpdu_ipf(struct dsa_switch *ds, int port) in xrs700x_port_add_bpdu_ipf()
342 static int xrs700x_port_add_hsrsup_ipf(struct dsa_switch *ds, int port, in xrs700x_port_add_hsrsup_ipf()
385 static int xrs700x_port_setup(struct dsa_switch *ds, int port) in xrs700x_port_setup()
[all …]

1234