Message ID | 20211103091943.3878621-1-clement.leger@bootlin.com (mailing list archive) |
---|---|
Headers | show |
Series | Add FDMA support on ocelot switch driver | expand |
11/3/21 12:19 PM, Clément Léger пишет: > This series adds support for the Frame DMA present on the VSC7514 > switch. The FDMA is able to extract and inject packets on the various > ethernet interfaces present on the switch. > > While adding FDMA support, bindings were switched from .txt to .yaml > and MAC address reading from device-tree was added for testing > purposes. Jumbo frame support was also added since it gives a large > performance improvement with FDMA. The series should be prefixed with net-next > > ------------------ > Changes in V2: > - Read MAC for each port and not as switch base MAC address > - Add missing static for some functions in ocelot_fdma.c > - Split change_mtu from fdma commit > - Add jumbo support for register based xmit > - Move precomputed header into ocelot_port struct > - Remove use of QUIRK_ENDIAN_LITTLE due to misconfiguration for tests > - Remove fragmented packet sending which has not been tested > > Clément Léger (6): > net: ocelot: add support to get port mac from device-tree > dt-bindings: net: convert mscc,vsc7514-switch bindings to yaml > net: ocelot: pre-compute injection frame header content > net: ocelot: add support for ndo_change_mtu > net: ocelot: add FDMA support > net: ocelot: add jumbo frame support for FDMA > > .../bindings/net/mscc,vsc7514-switch.yaml | 184 +++++ > .../devicetree/bindings/net/mscc-ocelot.txt | 83 -- > drivers/net/ethernet/mscc/Makefile | 1 + > drivers/net/ethernet/mscc/ocelot.c | 23 +- > drivers/net/ethernet/mscc/ocelot.h | 3 + > drivers/net/ethernet/mscc/ocelot_fdma.c | 754 ++++++++++++++++++ > drivers/net/ethernet/mscc/ocelot_fdma.h | 60 ++ > drivers/net/ethernet/mscc/ocelot_net.c | 37 +- > drivers/net/ethernet/mscc/ocelot_vsc7514.c | 15 + > include/soc/mscc/ocelot.h | 7 + > 10 files changed, 1075 insertions(+), 92 deletions(-) > create mode 100644 Documentation/devicetree/bindings/net/mscc,vsc7514-switch.yaml > delete mode 100644 Documentation/devicetree/bindings/net/mscc-ocelot.txt > create mode 100644 drivers/net/ethernet/mscc/ocelot_fdma.c > create mode 100644 drivers/net/ethernet/mscc/ocelot_fdma.h >