All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 net-next 00/10] DSA tagging driver for NXP SJA1110
@ 2021-06-11 19:01 Vladimir Oltean
  2021-06-11 19:01 ` [PATCH v3 net-next 01/10] net: dsa: sja1105: enable the TTEthernet engine on SJA1110 Vladimir Oltean
                   ` (10 more replies)
  0 siblings, 11 replies; 12+ messages in thread
From: Vladimir Oltean @ 2021-06-11 19:01 UTC (permalink / raw)
  To: Jakub Kicinski, David S. Miller, netdev
  Cc: Florian Fainelli, Andrew Lunn, Vivien Didelot, Richard Cochran,
	Vladimir Oltean

From: Vladimir Oltean <vladimir.oltean@nxp.com>

This series adds support for tagging data and control packets on the new
NXP SJA1110 switch (supported by the sja1105 driver). Up to this point
it used the sja1105 driver, which allowed it to send data packets, but
not PDUs as those required by STP and PTP.

To accommodate this new tagger which has both a header and a trailer, we
need to refactor the entire DSA tagging scheme, to replace the "overhead"
concept with separate "needed_headroom" and "needed_tailroom" concepts,
so that SJA1110 can declare its need for both.

There is also some consolidation work for the receive path of tag_8021q
and its callers (sja1105 and ocelot-8021q).

Changes in v3:
Rebase in front of the "Port the SJA1105 DSA driver to XPCS" series
which seems to have stalled for now.

Changes in v2:
Export the dsa_8021q_rcv and sja1110_process_meta_tstamp symbols to
avoid build errors as modules.

Vladimir Oltean (10):
  net: dsa: sja1105: enable the TTEthernet engine on SJA1110
  net: dsa: sja1105: allow RX timestamps to be taken on all ports for
    SJA1110
  net: dsa: generalize overhead for taggers that use both headers and
    trailers
  net: dsa: tag_sja1105: stop resetting network and transport headers
  net: dsa: tag_8021q: remove shim declarations
  net: dsa: tag_8021q: refactor RX VLAN parsing into a dedicated
    function
  net: dsa: sja1105: make SJA1105_SKB_CB fit a full timestamp
  net: dsa: add support for the SJA1110 native tagging protocol
  net: dsa: sja1105: add the RX timestamping procedure for SJA1110
  net: dsa: sja1105: implement TX timestamping for SJA1110

 Documentation/networking/dsa/dsa.rst          |  21 +-
 drivers/net/dsa/sja1105/sja1105.h             |   4 +
 drivers/net/dsa/sja1105/sja1105_main.c        |  35 +-
 drivers/net/dsa/sja1105/sja1105_ptp.c         |  97 +++++-
 drivers/net/dsa/sja1105/sja1105_ptp.h         |  13 +
 drivers/net/dsa/sja1105/sja1105_spi.c         |  28 ++
 .../net/dsa/sja1105/sja1105_static_config.c   |   1 +
 .../net/dsa/sja1105/sja1105_static_config.h   |   1 +
 include/linux/dsa/8021q.h                     |  79 +----
 include/linux/dsa/sja1105.h                   |  26 +-
 include/net/dsa.h                             |   8 +-
 net/core/flow_dissector.c                     |   2 +-
 net/dsa/dsa_priv.h                            |   5 +
 net/dsa/master.c                              |   6 +-
 net/dsa/slave.c                               |  10 +-
 net/dsa/tag_8021q.c                           |  23 ++
 net/dsa/tag_ar9331.c                          |   2 +-
 net/dsa/tag_brcm.c                            |   6 +-
 net/dsa/tag_dsa.c                             |   4 +-
 net/dsa/tag_gswip.c                           |   2 +-
 net/dsa/tag_hellcreek.c                       |   3 +-
 net/dsa/tag_ksz.c                             |   9 +-
 net/dsa/tag_lan9303.c                         |   2 +-
 net/dsa/tag_mtk.c                             |   2 +-
 net/dsa/tag_ocelot.c                          |   4 +-
 net/dsa/tag_ocelot_8021q.c                    |  20 +-
 net/dsa/tag_qca.c                             |   2 +-
 net/dsa/tag_rtl4_a.c                          |   2 +-
 net/dsa/tag_sja1105.c                         | 312 ++++++++++++++++--
 net/dsa/tag_trailer.c                         |   3 +-
 net/dsa/tag_xrs700x.c                         |   3 +-
 31 files changed, 551 insertions(+), 184 deletions(-)

-- 
2.25.1


^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2021-06-11 19:50 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-11 19:01 [PATCH v3 net-next 00/10] DSA tagging driver for NXP SJA1110 Vladimir Oltean
2021-06-11 19:01 ` [PATCH v3 net-next 01/10] net: dsa: sja1105: enable the TTEthernet engine on SJA1110 Vladimir Oltean
2021-06-11 19:01 ` [PATCH v3 net-next 02/10] net: dsa: sja1105: allow RX timestamps to be taken on all ports for SJA1110 Vladimir Oltean
2021-06-11 19:01 ` [PATCH v3 net-next 03/10] net: dsa: generalize overhead for taggers that use both headers and trailers Vladimir Oltean
2021-06-11 19:01 ` [PATCH v3 net-next 04/10] net: dsa: tag_sja1105: stop resetting network and transport headers Vladimir Oltean
2021-06-11 19:01 ` [PATCH v3 net-next 05/10] net: dsa: tag_8021q: remove shim declarations Vladimir Oltean
2021-06-11 19:01 ` [PATCH v3 net-next 06/10] net: dsa: tag_8021q: refactor RX VLAN parsing into a dedicated function Vladimir Oltean
2021-06-11 19:01 ` [PATCH v3 net-next 07/10] net: dsa: sja1105: make SJA1105_SKB_CB fit a full timestamp Vladimir Oltean
2021-06-11 19:01 ` [PATCH v3 net-next 08/10] net: dsa: add support for the SJA1110 native tagging protocol Vladimir Oltean
2021-06-11 19:01 ` [PATCH v3 net-next 09/10] net: dsa: sja1105: add the RX timestamping procedure for SJA1110 Vladimir Oltean
2021-06-11 19:01 ` [PATCH v3 net-next 10/10] net: dsa: sja1105: implement TX timestamping " Vladimir Oltean
2021-06-11 19:50 ` [PATCH v3 net-next 00/10] DSA tagging driver for NXP SJA1110 patchwork-bot+netdevbpf

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.