summaryrefslogtreecommitdiff
path: root/include/linux/platform_data/hirschmann-hellcreek.h
diff options
context:
space:
mode:
authorKurt Kanzenbach <kurt@linutronix.de>2020-11-03 08:10:56 +0100
committerJakub Kicinski <kuba@kernel.org>2020-11-05 14:04:49 -0800
commite4b27ebc780fa7fa951d81d241912755532568ff (patch)
treecf6fdbdefd85f7905f90aa7497b9a51d768429eb /include/linux/platform_data/hirschmann-hellcreek.h
parente358bef7c392b6a29381b9b8fbf646a88d5968f3 (diff)
net: dsa: Add DSA driver for Hirschmann Hellcreek switches
Add a basic DSA driver for Hirschmann Hellcreek switches. Those switches are implementing features needed for Time Sensitive Networking (TSN) such as support for the Time Precision Protocol and various shapers like the Time Aware Shaper. This driver includes basic support for networking: * VLAN handling * FDB handling * Port statistics * STP * Phylink Signed-off-by: Kurt Kanzenbach <kurt@linutronix.de> Reviewed-by: Vladimir Oltean <olteanv@gmail.com> Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'include/linux/platform_data/hirschmann-hellcreek.h')
-rw-r--r--include/linux/platform_data/hirschmann-hellcreek.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/include/linux/platform_data/hirschmann-hellcreek.h b/include/linux/platform_data/hirschmann-hellcreek.h
new file mode 100644
index 000000000000..388846766bb2
--- /dev/null
+++ b/include/linux/platform_data/hirschmann-hellcreek.h
@@ -0,0 +1,23 @@
+/* SPDX-License-Identifier: (GPL-2.0 or MIT) */
+/*
+ * Hirschmann Hellcreek TSN switch platform data.
+ *
+ * Copyright (C) 2020 Linutronix GmbH
+ * Author Kurt Kanzenbach <kurt@linutronix.de>
+ */
+
+#ifndef _HIRSCHMANN_HELLCREEK_H_
+#define _HIRSCHMANN_HELLCREEK_H_
+
+#include <linux/types.h>
+
+struct hellcreek_platform_data {
+ int num_ports; /* Amount of switch ports */
+ int is_100_mbits; /* Is it configured to 100 or 1000 mbit/s */
+ int qbv_support; /* Qbv support on front TSN ports */
+ int qbv_on_cpu_port; /* Qbv support on the CPU port */
+ int qbu_support; /* Qbu support on front TSN ports */
+ u16 module_id; /* Module identificaton */
+};
+
+#endif /* _HIRSCHMANN_HELLCREEK_H_ */