[PATCH net-next 0/5] Flow control for NXP ENETC

Vladimir Oltean
2021-04-16T23:43:09Z

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

This patch series contains logic for enabling the lossless mode on the
RX rings of the ENETC, and the PAUSE thresholds on the internal FIFO
memory.

During testing it was found that, with the default FIFO configuration,
a sender which isn't persuaded by our PAUSE frames and keeps sending
will cause some MAC RX frame errors. To mitigate this, we need to ensure
that the FIFO never runs completely full, so we need to fix up a setting
that was supposed to be configured well out of reset. Unfortunately this
requires the addition of a new mini-driver.

Vladimir Oltean (5):
net: enetc: create a common enetc_pf_to_port helper
dt-bindings: net: fsl: enetc: add the IERB documentation
net: enetc: add a mini driver for the Integrated Endpoint Register
Block
arm64: dts: ls1028a: declare the Integrated Endpoint Register Block
node
net: enetc: add support for flow control

.../devicetree/bindings/net/fsl-enetc.txt | 15 ++
.../arm64/boot/dts/freescale/fsl-ls1028a.dtsi | 6 +
drivers/net/ethernet/freescale/enetc/Kconfig | 9 +
drivers/net/ethernet/freescale/enetc/Makefile | 3 +
drivers/net/ethernet/freescale/enetc/enetc.h | 16 ++
.../ethernet/freescale/enetc/enetc_ethtool.c | 18 ++
.../net/ethernet/freescale/enetc/enetc_hw.h | 9 +
.../net/ethernet/freescale/enetc/enetc_ierb.c | 155 ++++++++++++++++++
.../net/ethernet/freescale/enetc/enetc_ierb.h | 20 +++
.../net/ethernet/freescale/enetc/enetc_pf.c | 95 ++++++++++-
.../net/ethernet/freescale/enetc/enetc_qos.c | 16 +-
11 files changed, 349 insertions(+), 13 deletions(-)
create mode 100644 drivers/net/ethernet/freescale/enetc/enetc_ierb.c
create mode 100644 drivers/net/ethernet/freescale/enetc/enetc_ierb.h

--
2.25.1