Home
last modified time | relevance | path

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

123

/linux/include/net/
H A Ddsa.h104 struct dsa_switch;
111 int (*connect)(struct dsa_switch *ds);
112 void (*disconnect)(struct dsa_switch *ds);
263 struct dsa_switch *ds;
385 struct dsa_switch { struct
519 static inline struct dsa_port *dsa_to_port(struct dsa_switch *ds, int p) in dsa_to_port() argument
557 static inline bool dsa_is_unused_port(struct dsa_switch *ds, int p) in dsa_is_unused_port()
562 static inline bool dsa_is_cpu_port(struct dsa_switch *ds, int p) in dsa_is_cpu_port()
567 static inline bool dsa_is_dsa_port(struct dsa_switch *ds, int p) in dsa_is_dsa_port()
572 static inline bool dsa_is_user_port(struct dsa_switch *ds, int p) in dsa_is_user_port()
[all …]
/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 ksz8463_get_ts_info(struct dsa_switch *ds, int port,
44 int ksz_hwtstamp_get(struct dsa_switch *ds, int port,
46 int ksz_hwtstamp_set(struct dsa_switch *ds, int port,
49 int ksz8463_hwtstamp_set(struct dsa_switch *ds, int port,
52 void ksz_port_txtstamp(struct dsa_switch *ds, int port, struct sk_buff *skb);
54 bool ksz_port_rxtstamp(struct dsa_switch *ds, int port, struct sk_buff *skb,
56 int ksz_ptp_irq_setup(struct dsa_switch *ds, u8 p);
[all …]
H A Dksz9477.h16 void ksz9477_flush_dyn_mac_table(struct dsa_switch *ds, int port);
22 int ksz9477_port_vlan_filtering(struct dsa_switch *ds, int port,
24 int ksz9477_max_mtu(struct dsa_switch *ds, int port);
25 int ksz9477_port_vlan_add(struct dsa_switch *ds, int port,
28 int ksz9477_port_vlan_del(struct dsa_switch *ds, int port,
30 int ksz9477_port_mirror_add(struct dsa_switch *ds, int port,
33 void ksz9477_port_mirror_del(struct dsa_switch *ds, int port,
35 int ksz9477_fdb_dump(struct dsa_switch *ds, int port,
37 int ksz9477_fdb_add(struct dsa_switch *ds, int port,
39 int ksz9477_fdb_del(struct dsa_switch *ds, int port,
[all …]
H A 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);
H A Dksz_common.h207 struct dsa_switch *ds;
435 void ksz_teardown(struct dsa_switch *ds);
439 void ksz_port_stp_state_set(struct dsa_switch *ds, int port, u8 state);
441 int ksz_switch_macaddr_get(struct dsa_switch *ds, int port,
443 void ksz_switch_macaddr_put(struct dsa_switch *ds);
447 int ksz_sset_count(struct dsa_switch *ds, int port, int sset);
448 void ksz_get_ethtool_stats(struct dsa_switch *ds, int port,
450 void ksz_get_stats64(struct dsa_switch *ds, int port,
452 void ksz_get_pause_stats(struct dsa_switch *ds, int port,
454 void ksz_get_strings(struct dsa_switch *d
[all...]
/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,
/linux/drivers/net/dsa/sja1105/
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_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()
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()
H A Dsja1105_ptp.c61 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 *ds, int port, in sja1105_port_rxtstamp()
[all …]
/linux/drivers/net/dsa/b53/
H A Db53_priv.h134 struct dsa_switch *ds;
505 void b53_imp_vlan_setup(struct dsa_switch *ds, int cpu_port);
506 int b53_configure_vlan(struct dsa_switch *ds);
507 void b53_get_strings(struct dsa_switch *ds, int port, u32 stringset,
509 void b53_get_ethtool_stats(struct dsa_switch *ds, int port, uint64_t *data);
510 int b53_get_sset_count(struct dsa_switch *ds, int port, int sset);
511 void b53_get_ethtool_phy_stats(struct dsa_switch *ds, int port, uint64_t *data);
512 int b53_set_ageing_time(struct dsa_switch *ds, unsigned int msecs);
513 int b53_br_join(struct dsa_switch *ds, int port, struct dsa_bridge bridge,
515 void b53_br_leave(struct dsa_switch *ds, int port, struct dsa_bridge bridge);
[all …]
H A Db53_common.c540 void b53_imp_vlan_setup(struct dsa_switch *ds, int cpu_port) in b53_imp_vlan_setup()
654 static void b53_eee_enable_set(struct dsa_switch *ds, int port, bool enable) in b53_eee_enable_set()
667 int b53_setup_port(struct dsa_switch *ds, int port) in b53_setup_port()
700 int b53_enable_port(struct dsa_switch *ds, int port, struct phy_device *phy) in b53_enable_port()
743 void b53_disable_port(struct dsa_switch *ds, int port) in b53_disable_port()
761 void b53_brcm_hdr_setup(struct dsa_switch *ds, int port) in b53_brcm_hdr_setup()
878 static bool b53_vlan_port_needs_forced_tagged(struct dsa_switch *ds, int port) in b53_vlan_port_needs_forced_tagged()
885 static bool b53_vlan_port_may_join_untagged(struct dsa_switch *ds, int port) in b53_vlan_port_may_join_untagged()
901 int b53_configure_vlan(struct dsa_switch *ds) in b53_configure_vlan()
1043 static int b53_phy_read16(struct dsa_switch *ds, int addr, int reg) in b53_phy_read16()
[all …]
/linux/net/dsa/
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()
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 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()
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 …]
H A Ddsa.c181 struct dsa_switch *dsa_switch_find(int tree_index, int sw_index) in dsa_switch_find()
292 struct dsa_switch *ds = dp->ds; in dsa_link_touch()
317 struct dsa_switch *ds = dp->ds; in dsa_port_setup_routing_table()
402 dsa_switch_preferred_default_local_cpu_port(struct dsa_switch *ds) in dsa_switch_preferred_default_local_cpu_port()
462 struct dsa_switch *ds = dp->ds; in dsa_port_setup()
570 static int dsa_switch_setup_tag_protocol(struct dsa_switch *ds) in dsa_switch_setup_tag_protocol()
614 static void dsa_switch_teardown_tag_protocol(struct dsa_switch *ds) in dsa_switch_teardown_tag_protocol()
622 static int dsa_switch_setup(struct dsa_switch *ds) in dsa_switch_setup()
686 static void dsa_switch_teardown(struct dsa_switch *ds) in dsa_switch_teardown()
1087 static struct dsa_port *dsa_port_touch(struct dsa_switch *ds, int index) in dsa_port_touch()
[all …]
H A Duser.c69 static bool dsa_switch_supports_uc_filtering(struct dsa_switch *ds) in dsa_switch_supports_uc_filtering()
76 static bool dsa_switch_supports_mc_filtering(struct dsa_switch *ds) in dsa_switch_supports_mc_filtering()
91 struct dsa_switch *ds = dp->ds; in dsa_user_standalone_event_work()
280 struct dsa_switch *ds = dp->ds; in dsa_user_sync_ha()
301 struct dsa_switch *ds = dp->ds; in dsa_user_unsync_ha()
322 struct dsa_switch *ds = bus->priv; in dsa_user_phy_read()
332 struct dsa_switch *ds = bus->priv; in dsa_user_phy_write()
340 void dsa_user_mii_bus_init(struct dsa_switch *ds) in dsa_user_mii_bus_init()
363 struct dsa_switch *ds = dp->ds; in dsa_user_host_uc_install()
391 struct dsa_switch *ds = dp->ds; in dsa_user_host_uc_uninstall()
[all …]
/linux/include/linux/dsa/
H A 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/drivers/net/dsa/mxl862xx/
H A Dmxl862xx.c164 static enum dsa_tag_protocol mxl862xx_get_tag_protocol(struct dsa_switch *ds, in mxl862xx_get_tag_protocol()
225 static int mxl862xx_wait_ready(struct dsa_switch *ds) in mxl862xx_wait_ready()
267 static int mxl862xx_setup_mdio(struct dsa_switch *ds) in mxl862xx_setup_mdio()
299 static int mxl862xx_bridge_config_fwd(struct dsa_switch *ds, u16 bridge_id, in mxl862xx_bridge_config_fwd()
341 static int mxl862xx_setup_drop_meter(struct dsa_switch *ds) in mxl862xx_setup_drop_meter()
384 static int mxl862xx_set_bridge_port(struct dsa_switch *ds, int port) in mxl862xx_set_bridge_port()
506 static int mxl862xx_sync_bridge_members(struct dsa_switch *ds, in mxl862xx_sync_bridge_members()
599 static void mxl862xx_free_bridge(struct dsa_switch *ds, in mxl862xx_free_bridge()
619 static int mxl862xx_setup(struct dsa_switch *ds) in mxl862xx_setup()
698 static void mxl862xx_teardown(struct dsa_switch *ds) in mxl862xx_teardown()
[all …]
/linux/drivers/net/dsa/
H A Dmt7628.c165 struct dsa_switch *ds;
242 static int mt7628_setup_internal_mdio(struct dsa_switch *ds) in mt7628_setup_internal_mdio()
265 static void mt7628_switch_init(struct dsa_switch *ds) in mt7628_switch_init()
386 static void mt7628_vlan_sync(struct dsa_switch *ds) in mt7628_vlan_sync()
403 static int mt7628_setup(struct dsa_switch *ds) in mt7628_setup()
435 static int mt7628_port_enable(struct dsa_switch *ds, int port, in mt7628_port_enable()
448 static void mt7628_port_disable(struct dsa_switch *ds, int port) in mt7628_port_disable()
457 mt7628_get_tag_proto(struct dsa_switch *ds, int port, enum dsa_tag_protocol mp) in mt7628_get_tag_proto()
462 static void mt7628_phylink_get_caps(struct dsa_switch *ds, int port, in mt7628_phylink_get_caps()
479 static int mt7628_dsa_8021q_vlan_add(struct dsa_switch *ds, int port, in mt7628_dsa_8021q_vlan_add()
[all …]
H A Dmt7530.c372 mt753x_preferred_default_local_cpu_port(struct dsa_switch *ds) in mt753x_preferred_default_local_cpu_port()
384 mt7530_setup_port6(struct dsa_switch *ds, phy_interface_t interface) in mt7530_setup_port6()
525 mt7530_mib_reset(struct dsa_switch *ds) in mt7530_mib_reset()
759 mt7530_get_strings(struct dsa_switch *ds, int port, u32 stringset, in mt7530_get_strings()
787 mt7530_get_ethtool_stats(struct dsa_switch *ds, int port, in mt7530_get_ethtool_stats()
803 mt7530_get_sset_count(struct dsa_switch *ds, int port, int sset) in mt7530_get_sset_count()
811 static void mt7530_get_eth_mac_stats(struct dsa_switch *ds, int port, in mt7530_get_eth_mac_stats()
876 static void mt7530_get_rmon_stats(struct dsa_switch *ds, int port, in mt7530_get_rmon_stats()
992 static void mt7530_get_stats64(struct dsa_switch *ds, int port, in mt7530_get_stats64()
1012 static void mt7530_get_eth_ctrl_stats(struct dsa_switch *ds, int port, in mt7530_get_eth_ctrl_stats()
[all …]
H A Dbcm_sf2.c116 static unsigned int bcm_sf2_num_active_ports(struct dsa_switch *ds) in bcm_sf2_num_active_ports()
131 static void bcm_sf2_recalc_clock(struct dsa_switch *ds) in bcm_sf2_recalc_clock()
158 static void bcm_sf2_imp_setup(struct dsa_switch *ds, int port) in bcm_sf2_imp_setup()
202 static void bcm_sf2_gphy_enable_set(struct dsa_switch *ds, bool enable) in bcm_sf2_gphy_enable_set()
280 static int bcm_sf2_port_setup(struct dsa_switch *ds, int port, in bcm_sf2_port_setup()
349 static void bcm_sf2_port_disable(struct dsa_switch *ds, int port) in bcm_sf2_port_disable()
442 struct dsa_switch *ds = dev_id; in bcm_sf2_switch_0_isr()
454 struct dsa_switch *ds = dev_id; in bcm_sf2_switch_1_isr()
607 static int bcm_sf2_mdio_register(struct dsa_switch *ds) in bcm_sf2_mdio_register()
708 static u32 bcm_sf2_sw_get_phy_flags(struct dsa_switch *ds, int port) in bcm_sf2_sw_get_phy_flags()
[all …]
H A Dlan9303-core.c937 static enum dsa_tag_protocol lan9303_get_tag_protocol(struct dsa_switch *ds, in lan9303_get_tag_protocol()
944 static int lan9303_setup(struct dsa_switch *ds) in lan9303_setup()
1036 static void lan9303_get_strings(struct dsa_switch *ds, int port, in lan9303_get_strings()
1049 static void lan9303_get_ethtool_stats(struct dsa_switch *ds, int port, in lan9303_get_ethtool_stats()
1071 static int lan9303_get_sset_count(struct dsa_switch *ds, int port, int sset) in lan9303_get_sset_count()
1079 static int lan9303_phy_read(struct dsa_switch *ds, int port, int regnum) in lan9303_phy_read()
1092 static int lan9303_phy_write(struct dsa_switch *ds, int port, int regnum, in lan9303_phy_write()
1106 static int lan9303_port_enable(struct dsa_switch *ds, int port, in lan9303_port_enable()
1120 static void lan9303_port_disable(struct dsa_switch *ds, int port) in lan9303_port_disable()
1134 static int lan9303_port_bridge_join(struct dsa_switch *ds, int port, in lan9303_port_bridge_join()
[all …]
/linux/drivers/net/dsa/lantiq/
H A Dlantiq_gswip_common.c390 static int gswip_port_pre_bridge_flags(struct dsa_switch *ds, int port, in gswip_port_pre_bridge_flags()
406 static int gswip_port_bridge_flags(struct dsa_switch *ds, int port, in gswip_port_bridge_flags()
419 static int gswip_port_setup(struct dsa_switch *ds, int port) in gswip_port_setup()
439 static int gswip_port_enable(struct dsa_switch *ds, int port, in gswip_port_enable()
467 static void gswip_port_disable(struct dsa_switch *ds, int port) in gswip_port_disable()
565 static int gswip_port_vlan_filtering(struct dsa_switch *ds, int port, in gswip_port_vlan_filtering()
643 static int gswip_setup(struct dsa_switch *ds) in gswip_setup()
742 static void gswip_teardown(struct dsa_switch *ds) in gswip_teardown()
749 static enum dsa_tag_protocol gswip_get_tag_protocol(struct dsa_switch *ds, in gswip_get_tag_protocol()
947 static int gswip_port_bridge_join(struct dsa_switch *ds, int port, in gswip_port_bridge_join()
[all …]
/linux/drivers/net/dsa/realtek/
H A Drtl83xx.c74 int rtl83xx_setup_user_mdio(struct dsa_switch *ds) in rtl83xx_setup_user_mdio()
237 struct dsa_switch *ds = &priv->ds; in rtl83xx_register_switch()
273 struct dsa_switch *ds = &priv->ds; in rtl83xx_unregister_switch()
292 struct dsa_switch *ds = &priv->ds; in rtl83xx_shutdown()
354 int rtl83xx_port_bridge_join(struct dsa_switch *ds, int port, in rtl83xx_port_bridge_join()
442 void rtl83xx_port_bridge_leave(struct dsa_switch *ds, int port, in rtl83xx_port_bridge_leave()
518 void rtl83xx_port_fast_age(struct dsa_switch *ds, int port) in rtl83xx_port_fast_age()
553 int rtl83xx_port_fdb_add(struct dsa_switch *ds, int port, in rtl83xx_port_fdb_add()
604 int rtl83xx_port_fdb_del(struct dsa_switch *ds, int port, in rtl83xx_port_fdb_del()
653 int rtl83xx_port_fdb_dump(struct dsa_switch *ds, int port, in rtl83xx_port_fdb_dump()
[all …]

123