Thread (16 messages) flat view 16 messages, 3 authors, 2021-10-13
STALE1773d LANDED

Revision v2 of 2 in this series; landed in mainline as 3af760e4d3b0 on 2021-10-13.

Revisions (2)
  1. v1 [diff vs current]
  2. v2 current

[PATCH v2 net 00/10] Felix DSA driver fixes

From: Vladimir Oltean <vladimir.oltean@nxp.com>
Date: 2021-10-12 11:40:59

This is an assorted collection of fixes for issues seen on the NXP
LS1028A switch.

- PTP packet drops due to switch congestion result in catastrophic
  damage to the driver's state
- loops are not blocked by STP if using the ocelot-8021q tagger
- driver uses the wrong CPU port when two of them are defined in DT
- module autoloading is broken* with both tagging protocol drivers
  (ocelot and ocelot-8021q)

*I did notice that a similar fix but for a different driver did get
applied to "net-next" instead of "net" despite my deliberate targeting
of the branch that goes towards "stable". I don't know why, it is an
issue that is really bothering some people.
https://patchwork.kernel.org/project/netdevbpf/cover/20210922143726.2431036-1-vladimir.oltean@nxp.com/

Changes in v2:
- Stop printing that we aren't going to take TX timestamps if we don't
  have TX timestamping anyway, and we are just carrying PTP frames for a
  cascaded DSA switch.
- Shorten the deferred xmit kthread name so that it fits the 16
  character limit (TASK_COMM_LEN)

Vladimir Oltean (10):
  net: mscc: ocelot: make use of all 63 PTP timestamp identifiers
  net: mscc: ocelot: avoid overflowing the PTP timestamp FIFO
  net: mscc: ocelot: warn when a PTP IRQ is raised for an unknown skb
  net: mscc: ocelot: deny TX timestamping of non-PTP packets
  net: mscc: ocelot: cross-check the sequence id from the timestamp FIFO
    with the skb PTP header
  net: dsa: tag_ocelot: break circular dependency with ocelot switch lib
    driver
  net: dsa: tag_ocelot_8021q: break circular dependency with ocelot
    switch lib
  net: dsa: felix: purge skb from TX timestamping queue if it cannot be
    sent
  net: dsa: tag_ocelot_8021q: fix inability to inject STP BPDUs into
    BLOCKING ports
  net: dsa: felix: break at first CPU port during init and teardown

 drivers/net/dsa/ocelot/felix.c         | 149 +++++++++++++++++++++++--
 drivers/net/dsa/ocelot/felix.h         |   1 +
 drivers/net/ethernet/mscc/ocelot.c     | 103 +++++++++++------
 drivers/net/ethernet/mscc/ocelot_net.c |   1 +
 include/linux/dsa/ocelot.h             |  49 ++++++++
 include/soc/mscc/ocelot.h              |  55 +--------
 include/soc/mscc/ocelot_ptp.h          |   3 +
 net/dsa/Kconfig                        |   4 -
 net/dsa/tag_ocelot.c                   |   1 -
 net/dsa/tag_ocelot_8021q.c             |  40 ++++---
 10 files changed, 291 insertions(+), 115 deletions(-)

-- 
2.25.1
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help