OSDN Git Service

net: dsa: loop: Move data structures to header
authorFlorian Fainelli <f.fainelli@gmail.com>
Mon, 3 Aug 2020 20:03:52 +0000 (13:03 -0700)
committerDavid S. Miller <davem@davemloft.net>
Tue, 4 Aug 2020 01:19:23 +0000 (18:19 -0700)
In preparation for adding support for a mockup data path, move the
driver data structures to include/linux/dsa/loop.h such that we can
share them between net/dsa/ and drivers/net/dsa/ later on.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/dsa/dsa_loop.c
include/linux/dsa/loop.h [new file with mode: 0644]

index 6e97b44..ed0b580 100644 (file)
 #include <linux/workqueue.h>
 #include <linux/module.h>
 #include <linux/if_bridge.h>
+#include <linux/dsa/loop.h>
 #include <net/dsa.h>
 
 #include "dsa_loop.h"
 
-struct dsa_loop_vlan {
-       u16 members;
-       u16 untagged;
-};
-
-struct dsa_loop_mib_entry {
-       char name[ETH_GSTRING_LEN];
-       unsigned long val;
-};
-
-enum dsa_loop_mib_counters {
-       DSA_LOOP_PHY_READ_OK,
-       DSA_LOOP_PHY_READ_ERR,
-       DSA_LOOP_PHY_WRITE_OK,
-       DSA_LOOP_PHY_WRITE_ERR,
-       __DSA_LOOP_CNT_MAX,
-};
-
 static struct dsa_loop_mib_entry dsa_loop_mibs[] = {
        [DSA_LOOP_PHY_READ_OK]  = { "phy_read_ok", },
        [DSA_LOOP_PHY_READ_ERR] = { "phy_read_err", },
@@ -43,19 +26,6 @@ static struct dsa_loop_mib_entry dsa_loop_mibs[] = {
        [DSA_LOOP_PHY_WRITE_ERR] = { "phy_write_err", },
 };
 
-struct dsa_loop_port {
-       struct dsa_loop_mib_entry mib[__DSA_LOOP_CNT_MAX];
-       u16 pvid;
-};
-
-struct dsa_loop_priv {
-       struct mii_bus  *bus;
-       unsigned int    port_base;
-       struct dsa_loop_vlan vlans[VLAN_N_VID];
-       struct net_device *netdev;
-       struct dsa_loop_port ports[DSA_MAX_PORTS];
-};
-
 static struct phy_device *phydevs[PHY_MAX_ADDR];
 
 static enum dsa_tag_protocol dsa_loop_get_protocol(struct dsa_switch *ds,
diff --git a/include/linux/dsa/loop.h b/include/linux/dsa/loop.h
new file mode 100644 (file)
index 0000000..bb39401
--- /dev/null
@@ -0,0 +1,40 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+#ifndef DSA_LOOP_H
+#define DSA_LOOP_H
+
+#include <linux/types.h>
+#include <linux/ethtool.h>
+#include <net/dsa.h>
+
+struct dsa_loop_vlan {
+       u16 members;
+       u16 untagged;
+};
+
+struct dsa_loop_mib_entry {
+       char name[ETH_GSTRING_LEN];
+       unsigned long val;
+};
+
+enum dsa_loop_mib_counters {
+       DSA_LOOP_PHY_READ_OK,
+       DSA_LOOP_PHY_READ_ERR,
+       DSA_LOOP_PHY_WRITE_OK,
+       DSA_LOOP_PHY_WRITE_ERR,
+       __DSA_LOOP_CNT_MAX,
+};
+
+struct dsa_loop_port {
+       struct dsa_loop_mib_entry mib[__DSA_LOOP_CNT_MAX];
+       u16 pvid;
+};
+
+struct dsa_loop_priv {
+       struct mii_bus  *bus;
+       unsigned int    port_base;
+       struct dsa_loop_vlan vlans[VLAN_N_VID];
+       struct net_device *netdev;
+       struct dsa_loop_port ports[DSA_MAX_PORTS];
+};
+
+#endif /* DSA_LOOP_H */