From: Kurt Kanzenbach <kurt@linutronix.de>
To: Andrew Lunn <andrew@lunn.ch>,
Vivien Didelot <vivien.didelot@gmail.com>,
Florian Fainelli <f.fainelli@gmail.com>
Cc: "David S. Miller" <davem@davemloft.net>,
Jakub Kicinski <kuba@kernel.org>,
netdev@vger.kernel.org, Rob Herring <robh+dt@kernel.org>,
devicetree@vger.kernel.org,
Sebastian Andrzej Siewior <bigeasy@linutronix.de>,
Richard Cochran <richardcochran@gmail.com>,
Kamil Alkhouri <kamil.alkhouri@hs-offenburg.de>,
ilias.apalodimas@linaro.org, Vladimir Oltean <olteanv@gmail.com>,
Kurt Kanzenbach <kurt@linutronix.de>
Subject: [PATCH v3 0/8] Hirschmann Hellcreek DSA driver
Date: Thu, 20 Aug 2020 10:11:10 +0200 [thread overview]
Message-ID: <20200820081118.10105-1-kurt@linutronix.de> (raw)
Hi,
this series adds a DSA driver for the Hirschmann Hellcreek TSN switch
IP. Characteristics of that IP:
* Full duplex Ethernet interface at 100/1000 Mbps on three ports
* IEEE 802.1Q-compliant Ethernet Switch
* IEEE 802.1Qbv Time-Aware scheduling support
* IEEE 1588 and IEEE 802.1AS support
That IP is used e.g. in
https://www.arrow.com/en/campaigns/arrow-kairos
Due to the hardware setup the switch driver is implemented using DSA. A special
tagging protocol is leveraged. Furthermore, this driver supports PTP, hardware
timestamping and TAPRIO offloading.
This work is part of the AccessTSN project: https://www.accesstsn.com/
The previous versions can be found here:
* https://lkml.kernel.org/netdev/20200618064029.32168-1-kurt@linutronix.de/
* https://lkml.kernel.org/netdev/20200710113611.3398-1-kurt@linutronix.de/
* https://lkml.kernel.org/netdev/20200723081714.16005-1-kurt@linutronix.de/
Changes since v2:
* Make it compile by getting all requirements merged first (Jakub Kicinski, David Miller)
* Use "tsn" for TSN register set (Rob Herring)
* Fix DT binding issues (Rob Herring)
Changes since v1:
* Code simplifications (Florian Fainelli, Vladimir Oltean)
* Fix issues with hellcreek.yaml bindings (Florian Fainelli)
* Clear reserved field in ptp v2 event messages (Richard Cochran)
* Make use of generic ptp parsing function (Richard Cochran, Vladimir Oltean)
* Fix Kconfig (Florian Fainelli)
* Add tags (Florian Fainelli, Rob Herring, Richard Cochran)
Changes since RFC ordered by reviewers:
* Andrew Lunn
* Use dev_dbg for debug messages
* Get rid of __ function names where possible
* Use reverse xmas tree variable ordering
* Remove redundant/useless checks
* Improve comments e.g. for PTP
* Fix Kconfig ordering
* Make LED handling more generic and provide info via DT
* Setup advertisement of PHYs according to hardware
* Drop debugfs patch
* Jakub Kicinski
* Fix compiler warnings
* Florian Fainelli
* Switch to YAML DT bindings
* Richard Cochran
* Fix typo
* Add missing NULL checks
Kamil Alkhouri (2):
net: dsa: hellcreek: Add PTP clock support
net: dsa: hellcreek: Add support for hardware timestamping
Kurt Kanzenbach (6):
net: dsa: Add tag handling for Hirschmann Hellcreek switches
net: dsa: Add DSA driver for Hirschmann Hellcreek switches
net: dsa: hellcreek: Add TAPRIO offloading support
net: dsa: hellcreek: Add PTP status LEDs
dt-bindings: Add vendor prefix for Hirschmann
dt-bindings: net: dsa: Add documentation for Hellcreek switches
.../bindings/net/dsa/hellcreek.yaml | 125 ++
.../devicetree/bindings/vendor-prefixes.yaml | 2 +
drivers/net/dsa/Kconfig | 2 +
drivers/net/dsa/Makefile | 1 +
drivers/net/dsa/hirschmann/Kconfig | 9 +
drivers/net/dsa/hirschmann/Makefile | 5 +
drivers/net/dsa/hirschmann/hellcreek.c | 1551 +++++++++++++++++
drivers/net/dsa/hirschmann/hellcreek.h | 301 ++++
.../net/dsa/hirschmann/hellcreek_hwtstamp.c | 479 +++++
.../net/dsa/hirschmann/hellcreek_hwtstamp.h | 58 +
drivers/net/dsa/hirschmann/hellcreek_ptp.c | 452 +++++
drivers/net/dsa/hirschmann/hellcreek_ptp.h | 76 +
include/net/dsa.h | 2 +
net/dsa/Kconfig | 6 +
net/dsa/Makefile | 1 +
net/dsa/tag_hellcreek.c | 101 ++
16 files changed, 3171 insertions(+)
create mode 100644 Documentation/devicetree/bindings/net/dsa/hellcreek.yaml
create mode 100644 drivers/net/dsa/hirschmann/Kconfig
create mode 100644 drivers/net/dsa/hirschmann/Makefile
create mode 100644 drivers/net/dsa/hirschmann/hellcreek.c
create mode 100644 drivers/net/dsa/hirschmann/hellcreek.h
create mode 100644 drivers/net/dsa/hirschmann/hellcreek_hwtstamp.c
create mode 100644 drivers/net/dsa/hirschmann/hellcreek_hwtstamp.h
create mode 100644 drivers/net/dsa/hirschmann/hellcreek_ptp.c
create mode 100644 drivers/net/dsa/hirschmann/hellcreek_ptp.h
create mode 100644 net/dsa/tag_hellcreek.c
--
2.20.1
next reply other threads:[~2020-08-20 8:12 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-08-20 8:11 Kurt Kanzenbach [this message]
2020-08-20 8:11 ` [PATCH v3 1/8] net: dsa: Add tag handling for Hirschmann Hellcreek switches Kurt Kanzenbach
2020-08-20 8:11 ` [PATCH v3 2/8] net: dsa: Add DSA driver " Kurt Kanzenbach
2020-08-24 22:44 ` Andrew Lunn
2020-08-25 9:07 ` Kurt Kanzenbach
2020-08-25 13:56 ` Andrew Lunn
2020-08-25 14:48 ` Kurt Kanzenbach
2020-08-27 10:29 ` Kurt Kanzenbach
2020-08-20 8:11 ` [PATCH v3 3/8] net: dsa: hellcreek: Add PTP clock support Kurt Kanzenbach
2020-08-20 8:11 ` [PATCH v3 4/8] net: dsa: hellcreek: Add support for hardware timestamping Kurt Kanzenbach
2020-08-20 8:11 ` [PATCH v3 5/8] net: dsa: hellcreek: Add TAPRIO offloading support Kurt Kanzenbach
2020-08-22 14:39 ` Vladimir Oltean
2020-08-24 6:10 ` Kurt Kanzenbach
2020-08-24 23:45 ` Vinicius Costa Gomes
2020-08-25 9:42 ` Kurt Kanzenbach
2020-08-25 17:58 ` Vinicius Costa Gomes
2020-08-27 10:12 ` Kurt Kanzenbach
2020-08-25 9:46 ` Vladimir Oltean
2020-08-25 10:09 ` Kurt Kanzenbach
2020-08-25 17:33 ` Vinicius Costa Gomes
2020-08-24 22:56 ` Vladimir Oltean
2020-08-25 9:33 ` Kurt Kanzenbach
2020-08-25 9:38 ` Vladimir Oltean
2020-08-25 9:55 ` Kurt Kanzenbach
2020-08-27 16:25 ` Richard Cochran
2020-08-28 12:31 ` Kurt Kanzenbach
2020-08-24 23:57 ` Vinicius Costa Gomes
2020-08-25 9:23 ` Kurt Kanzenbach
2020-08-25 9:32 ` Vladimir Oltean
2020-09-01 14:20 ` Kurt Kanzenbach
2020-09-01 14:47 ` Vladimir Oltean
2020-08-25 17:50 ` Vinicius Costa Gomes
2020-08-20 8:11 ` [PATCH v3 6/8] net: dsa: hellcreek: Add PTP status LEDs Kurt Kanzenbach
2020-08-24 22:50 ` Andrew Lunn
2020-08-20 8:11 ` [PATCH v3 7/8] dt-bindings: Add vendor prefix for Hirschmann Kurt Kanzenbach
2020-08-20 8:11 ` [PATCH v3 8/8] dt-bindings: net: dsa: Add documentation for Hellcreek switches Kurt Kanzenbach
2020-08-24 22:52 ` Andrew Lunn
2020-08-25 22:28 ` Rob Herring
2020-08-24 21:31 ` [PATCH v3 0/8] Hirschmann Hellcreek DSA driver Jakub Kicinski
2020-08-24 22:02 ` Vladimir Oltean
2020-08-24 22:35 ` David Miller
2020-08-24 22:57 ` Vladimir Oltean
2020-08-25 11:21 ` Kurt Kanzenbach
2020-08-25 17:14 ` Florian Fainelli
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200820081118.10105-1-kurt@linutronix.de \
--to=kurt@linutronix.de \
--cc=andrew@lunn.ch \
--cc=bigeasy@linutronix.de \
--cc=davem@davemloft.net \
--cc=devicetree@vger.kernel.org \
--cc=f.fainelli@gmail.com \
--cc=ilias.apalodimas@linaro.org \
--cc=kamil.alkhouri@hs-offenburg.de \
--cc=kuba@kernel.org \
--cc=netdev@vger.kernel.org \
--cc=olteanv@gmail.com \
--cc=richardcochran@gmail.com \
--cc=robh+dt@kernel.org \
--cc=vivien.didelot@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).