xref: /openbmc/linux/net/dsa/master.h (revision 5a178186)
194ef6fadSVladimir Oltean /* SPDX-License-Identifier: GPL-2.0-or-later */
294ef6fadSVladimir Oltean 
394ef6fadSVladimir Oltean #ifndef __DSA_MASTER_H
494ef6fadSVladimir Oltean #define __DSA_MASTER_H
594ef6fadSVladimir Oltean 
694ef6fadSVladimir Oltean struct dsa_port;
794ef6fadSVladimir Oltean struct net_device;
894ef6fadSVladimir Oltean struct netdev_lag_upper_info;
994ef6fadSVladimir Oltean struct netlink_ext_ack;
1094ef6fadSVladimir Oltean 
1194ef6fadSVladimir Oltean int dsa_master_setup(struct net_device *dev, struct dsa_port *cpu_dp);
1294ef6fadSVladimir Oltean void dsa_master_teardown(struct net_device *dev);
1394ef6fadSVladimir Oltean int dsa_master_lag_setup(struct net_device *lag_dev, struct dsa_port *cpu_dp,
1494ef6fadSVladimir Oltean 			 struct netdev_lag_upper_info *uinfo,
1594ef6fadSVladimir Oltean 			 struct netlink_ext_ack *extack);
1694ef6fadSVladimir Oltean void dsa_master_lag_teardown(struct net_device *lag_dev,
1794ef6fadSVladimir Oltean 			     struct dsa_port *cpu_dp);
18*5a178186SVladimir Oltean int __dsa_master_hwtstamp_validate(struct net_device *dev,
1988c0a6b5SVladimir Oltean 				   const struct kernel_hwtstamp_config *config,
2088c0a6b5SVladimir Oltean 				   struct netlink_ext_ack *extack);
2194ef6fadSVladimir Oltean 
2294ef6fadSVladimir Oltean #endif
23