linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [net-next PATCH v2 00/15] net: dsa: qca8k: code split for qca8k
@ 2022-07-19  0:57 Christian Marangi
  2022-07-19  0:57 ` [net-next PATCH v2 01/15] net: dsa: qca8k: make mib autocast feature optional Christian Marangi
                   ` (15 more replies)
  0 siblings, 16 replies; 42+ messages in thread
From: Christian Marangi @ 2022-07-19  0:57 UTC (permalink / raw)
  To: Andrew Lunn, Vivien Didelot, Florian Fainelli, Vladimir Oltean,
	David S. Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni,
	Greg Kroah-Hartman, Jens Axboe, Christian Marangi, linux-kernel,
	netdev

This is needed ad ipq4019 SoC have an internal switch that is
based on qca8k with very minor changes. The general function is equal.

Because of this we split the driver to common and specific code.

As the common function needs to be moved to a different file to be
reused, we had to convert every remaining user of qca8k_read/write/rmw
to regmap variant.
We had also to generilized the special handling for the ethtool_stats
function that makes use of the autocast mib. (ipq4019 will have a
different tagger and use mmio so it could be quicker to use mmio instead
of automib feature)
And we had to convert the regmap read/write to bulk implementation to
drop the special function that makes use of it. This will be compatible
with ipq4019 and at the same time permits normal switch to use the eth
mgmt way to send the entire ATU table read/write in one go.

v2:
- Rework patch to drop dependency with bulk regmap (will be
  converted later)
- Split the split patch to additional patch
- Rework autocast_mib function and move it to match data

Christian Marangi (15):
  net: dsa: qca8k: make mib autocast feature optional
  net: dsa: qca8k: move mib struct to common code
  net: dsa: qca8k: move qca8k read/write/rmw and reg table to common
    code
  net: dsa: qca8k: move qca8k bulk read/write helper to common code
  net: dsa: qca8k: move fdb/vlan/mib init functions to common code
  net: dsa: qca8k: move port set status/eee/ethtool stats function to
    common code
  net: dsa: qca8k: move bridge functions to common code
  net: dsa: qca8k: move fast age/MTU/port enable/disable functions to
    common code
  net: dsa: qca8k: move port FDB function to common code
  net: dsa: qca8k: move port MDB functions to common code
  net: dsa: qca8k: move port mirror functions to common code
  net: dsa: qca8k: move port VLAN functions to common code
  net: dsa: qca8k: move port LAG functions to common code
  net: dsa: qca8k: move read_switch_id function to common code
  net: dsa: qca8k: drop unnecessary exposed function and make them
    static

 drivers/net/dsa/qca/Makefile                  |    1 +
 drivers/net/dsa/qca/{qca8k.c => qca8k-8xxx.c} | 1505 ++---------------
 drivers/net/dsa/qca/qca8k-common.c            | 1256 ++++++++++++++
 drivers/net/dsa/qca/qca8k.h                   |   95 ++
 4 files changed, 1489 insertions(+), 1368 deletions(-)
 rename drivers/net/dsa/qca/{qca8k.c => qca8k-8xxx.c} (63%)
 create mode 100644 drivers/net/dsa/qca/qca8k-common.c

-- 
2.36.1


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

end of thread, other threads:[~2022-07-19 14:16 UTC | newest]

Thread overview: 42+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-07-19  0:57 [net-next PATCH v2 00/15] net: dsa: qca8k: code split for qca8k Christian Marangi
2022-07-19  0:57 ` [net-next PATCH v2 01/15] net: dsa: qca8k: make mib autocast feature optional Christian Marangi
2022-07-19 12:26   ` Vladimir Oltean
2022-07-19 12:29     ` Christian Marangi
2022-07-19 13:36       ` Vladimir Oltean
2022-07-19  0:57 ` [net-next PATCH v2 02/15] net: dsa: qca8k: move mib struct to common code Christian Marangi
2022-07-19 12:36   ` Vladimir Oltean
2022-07-19  0:57 ` [net-next PATCH v2 03/15] net: dsa: qca8k: move qca8k read/write/rmw and reg table " Christian Marangi
2022-07-19 12:38   ` Vladimir Oltean
2022-07-19  0:57 ` [net-next PATCH v2 03/15] net: dsa: qca8k: move qca8kread/write/rmw " Christian Marangi
2022-07-19  1:00   ` Christian Marangi
2022-07-19  1:30     ` Jakub Kicinski
2022-07-19  1:16       ` Christian Marangi
2022-07-19 13:34         ` Vladimir Oltean
2022-07-19  1:32       ` Jakub Kicinski
2022-07-19  1:17         ` Christian Marangi
2022-07-19  0:57 ` [net-next PATCH v2 04/15] net: dsa: qca8k: move qca8k bulk read/write helper " Christian Marangi
2022-07-19 12:40   ` Vladimir Oltean
2022-07-19  0:57 ` [net-next PATCH v2 05/15] net: dsa: qca8k: move fdb/vlan/mib init functions " Christian Marangi
2022-07-19 13:13   ` Vladimir Oltean
2022-07-19  0:57 ` [net-next PATCH v2 06/15] net: dsa: qca8k: move port set status/eee/ethtool stats function " Christian Marangi
2022-07-19 13:14   ` Vladimir Oltean
2022-07-19 13:16     ` Christian Marangi
2022-07-19 13:18       ` Vladimir Oltean
2022-07-19  0:57 ` [net-next PATCH v2 07/15] net: dsa: qca8k: move bridge functions " Christian Marangi
2022-07-19 13:16   ` Vladimir Oltean
2022-07-19  0:57 ` [net-next PATCH v2 08/15] net: dsa: qca8k: move fast age/MTU/port enable/disable " Christian Marangi
2022-07-19 13:22   ` Vladimir Oltean
2022-07-19  0:57 ` [net-next PATCH v2 09/15] net: dsa: qca8k: move port FDB function " Christian Marangi
2022-07-19  0:57 ` [net-next PATCH v2 10/15] net: dsa: qca8k: move port MDB functions " Christian Marangi
2022-07-19  0:57 ` [net-next PATCH v2 11/15] net: dsa: qca8k: move port mirror " Christian Marangi
2022-07-19 13:24   ` Vladimir Oltean
2022-07-19  0:57 ` [net-next PATCH v2 12/15] net: dsa: qca8k: move port VLAN " Christian Marangi
2022-07-19 13:25   ` Vladimir Oltean
2022-07-19  0:57 ` [net-next PATCH v2 13/15] net: dsa: qca8k: move port LAG " Christian Marangi
2022-07-19 13:26   ` Vladimir Oltean
2022-07-19  0:57 ` [net-next PATCH v2 14/15] net: dsa: qca8k: move read_switch_id function " Christian Marangi
2022-07-19  0:57 ` [net-next PATCH v2 15/15] net: dsa: qca8k: drop unnecessary exposed function and make them static Christian Marangi
2022-07-19 13:29   ` Vladimir Oltean
2022-07-19 13:35     ` Christian Marangi
2022-07-19 13:44       ` Vladimir Oltean
2022-07-19 13:47         ` Vladimir Oltean

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).