Messages in this thread | | | From | Christian Marangi <> | Subject | [net-next PATCH v2 00/15] net: dsa: qca8k: code split for qca8k | Date | Tue, 19 Jul 2022 02:57:10 +0200 |
| |
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
| |