[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20220818102924.287719-1-mattias.forsblad@gmail.com>
Date: Thu, 18 Aug 2022 12:29:21 +0200
From: Mattias Forsblad <mattias.forsblad@...il.com>
To: netdev@...r.kernel.org
Cc: Andrew Lunn <andrew@...n.ch>,
Vivien Didelot <vivien.didelot@...il.com>,
Florian Fainelli <f.fainelli@...il.com>,
Vladimir Oltean <olteanv@...il.com>,
"David S . Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>,
Paolo Abeni <pabeni@...hat.com>,
Mattias Forsblad <mattias.forsblad@...il.com>
Subject: [RFC net-next PATCH 0/3] net: dsa: mv88e6xxx: Add RMU support
The Marvell SOHO switches have the ability to receive and transmit
Remote Management Frames (Frame2Reg) to the CPU through the
switch attached network interface.
These frames is handled by the Remote Management Unit (RMU) in
the switch.
These frames can contain different payloads:
single switch register read and writes, daisy chained switch
register read and writes, RMON/MIB dump/dump clear and ATU dump.
The dump functions are very costly over MDIO but it's
only a couple of network packets via the RMU. Handling these
operations via RMU instead of MDIO also relieves access
contention on the MDIO bus.
This request for comment series implements RMU layer 2 and
layer 3 handling and also collecting RMON counters
through the RMU.
Next step could be to implement single read and writes but we've
found that the gain to transfer this to RMU is neglible.
Regards,
Mattias Forsblad
Mattias Forsblad (3):
dsa: Add ability to handle RMU frames.
mv88e6xxx: Implement remote management support (RMU)
mv88e6xxx: rmon: Use RMU to collect rmon data.
drivers/net/dsa/mv88e6xxx/Makefile | 1 +
drivers/net/dsa/mv88e6xxx/chip.c | 60 +++++--
drivers/net/dsa/mv88e6xxx/chip.h | 20 +++
drivers/net/dsa/mv88e6xxx/global1.c | 84 +++++++++
drivers/net/dsa/mv88e6xxx/global1.h | 3 +
drivers/net/dsa/mv88e6xxx/rmu.c | 256 ++++++++++++++++++++++++++++
drivers/net/dsa/mv88e6xxx/rmu.h | 18 ++
include/net/dsa.h | 7 +
include/uapi/linux/if_ether.h | 1 +
net/dsa/tag_dsa.c | 102 ++++++++++-
10 files changed, 536 insertions(+), 16 deletions(-)
create mode 100644 drivers/net/dsa/mv88e6xxx/rmu.c
create mode 100644 drivers/net/dsa/mv88e6xxx/rmu.h
--
2.25.1
Powered by blists - more mailing lists