aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/dsa/dsa_loop.h
diff options
context:
space:
mode:
authorFlorian Fainelli <f.fainelli@gmail.com>2017-03-30 18:43:21 -0700
committerDavid S. Miller <davem@davemloft.net>2017-04-01 12:39:32 -0700
commit98cd1552ea27e512c7e99e2aa76042a26e4fb25c (patch)
treeaba74b9bf561693e0fae899c347b33cd8698eec5 /drivers/net/dsa/dsa_loop.h
parentMerge branch 'mv88e6xxx-cross-chip-bridging' (diff)
downloadlinux-dev-98cd1552ea27e512c7e99e2aa76042a26e4fb25c.tar.xz
linux-dev-98cd1552ea27e512c7e99e2aa76042a26e4fb25c.zip
net: dsa: Mock-up driver
This patch adds support for a DSA mock-up driver which essentially does the following: - registers/unregisters 4 fixed PHYs to the slave network devices - uses eth0 (configurable) as the master netdev - registers the switch as a fixed MDIO device against the fixed MDIO bus at address 31 - includes dynamic debug prints for dsa_switch_ops functions that can be enabled to get call traces This is a good way to test modular builds as well as exercise the DSA APIs without requiring access to real hardware. This does not test the data-path, although this could be added later on. Signed-off-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/dsa/dsa_loop.h')
-rw-r--r--drivers/net/dsa/dsa_loop.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/drivers/net/dsa/dsa_loop.h b/drivers/net/dsa/dsa_loop.h
new file mode 100644
index 000000000000..dc396877fc95
--- /dev/null
+++ b/drivers/net/dsa/dsa_loop.h
@@ -0,0 +1,19 @@
+#ifndef __DSA_LOOP_H
+#define __DSA_LOOP_H
+
+struct dsa_chip_data;
+
+struct dsa_loop_pdata {
+ /* Must be first, such that dsa_register_switch() can access this
+ * without gory pointer manipulations
+ */
+ struct dsa_chip_data cd;
+ const char *name;
+ unsigned int enabled_ports;
+ const char *netdev;
+};
+
+#define DSA_LOOP_NUM_PORTS 6
+#define DSA_LOOP_CPU_PORT (DSA_LOOP_NUM_PORTS - 1)
+
+#endif /* __DSA_LOOP_H */