#include "devlink.h"
#include "dsa_priv.h"
+#include "master.h"
#include "port.h"
static DEFINE_MUTEX(dsa2_mutex);
return ops->needed_headroom + ops->needed_tailroom;
}
-/* master.c */
-int dsa_master_setup(struct net_device *dev, struct dsa_port *cpu_dp);
-void dsa_master_teardown(struct net_device *dev);
-int dsa_master_lag_setup(struct net_device *lag_dev, struct dsa_port *cpu_dp,
- struct netdev_lag_upper_info *uinfo,
- struct netlink_ext_ack *extack);
-void dsa_master_lag_teardown(struct net_device *lag_dev,
- struct dsa_port *cpu_dp);
-
static inline struct net_device *dsa_master_find_slave(struct net_device *dev,
int device, int port)
{
* Vivien Didelot <vivien.didelot@savoirfairelinux.com>
*/
+#include <linux/ethtool.h>
+#include <linux/netdevice.h>
+#include <linux/netlink.h>
+#include <net/dsa.h>
+
#include "dsa_priv.h"
+#include "master.h"
#include "port.h"
static int dsa_master_get_regs_len(struct net_device *dev)
--- /dev/null
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+
+#ifndef __DSA_MASTER_H
+#define __DSA_MASTER_H
+
+struct dsa_port;
+struct net_device;
+struct netdev_lag_upper_info;
+struct netlink_ext_ack;
+
+int dsa_master_setup(struct net_device *dev, struct dsa_port *cpu_dp);
+void dsa_master_teardown(struct net_device *dev);
+int dsa_master_lag_setup(struct net_device *lag_dev, struct dsa_port *cpu_dp,
+ struct netdev_lag_upper_info *uinfo,
+ struct netlink_ext_ack *extack);
+void dsa_master_lag_teardown(struct net_device *lag_dev,
+ struct dsa_port *cpu_dp);
+
+#endif
#include "dsa_priv.h"
#include "port.h"
+#include "master.h"
static void dsa_slave_standalone_event_work(struct work_struct *work)
{