Home
last modified time | relevance | path

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

1234

/linux-6.12.1/include/net/
Ddsa.h90 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/
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 …]
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 …]
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 …]
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()
/linux-6.12.1/drivers/net/dsa/microchip/
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 …]
Dksz_dcb.h11 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/
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,
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()
Ddevlink.c31 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/
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 …]
/linux-6.12.1/net/dsa/
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 …]
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);
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 …]
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()
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 …]
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 …]
/linux-6.12.1/drivers/net/dsa/ocelot/
Dfelix.c45 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 …]
Dfelix.h57 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/
Dqca8k.h378 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 …]
Dqca8k-common.c480 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/
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 …]
Dbcm_sf2.h120 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/
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,
/linux-6.12.1/include/linux/dsa/
D8021q.h16 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/
Drealtek.h67 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);

1234