Subject: [PATCH net-next v5 0/7] net: dsa: lantiq_gswip: use regmap for register access

From: Daniel Golle <[email-masked]>
Date: Tue, 21 Oct 2025 12:16:19 +0100

This series refactors the lantiq_gswip driver to utilize the regmap API
for register access, replacing the previous approach of open-coding
register operations.

Using regmap paves the way for supporting different busses to access the
switch registers, for example it makes it easier to use an MDIO-based
method required to access the registers of the MaxLinear GSW1xx series
of dedicated switch ICs.

Apart from that, the use of regmap improves readability and
maintainability of the driver by standardizing register access.

When ever possible changes were made using Coccinelle semantic patches,
sometimes adjusting white space and adding line breaks when needed.
The remaining changes which were not done using semantic patches are
small and should be easy to review and verify.

The whole series has been
Tested-by: Alexander Sverdlin <[email-masked]>
---
Changes since v4:
 * use REGMAP_UPSHIFT(2) macro instead of -2 value for reg_shift

Changes since v3:
 * unlock mutex in error path
 * simplify some of the manually converted register reads by changing
   the type to u32 instead of using a u32 tmp variable and then assigning
   the value to the previously used u16 variable.

Changes since v2:
 * correctly target net-next tree (fix typo in subject)

Changes since RFC:
 * drop error handling, it wasn't there before and it would anyway be
   removed again by a follow-up change
 * optimize more of the regmap_write_bits() calls

Daniel Golle (7):
  net: dsa: lantiq_gswip: clarify GSWIP 2.2 VLAN mode in comment
  net: dsa: lantiq_gswip: convert accessors to use regmap
  net: dsa: lantiq_gswip: convert trivial accessor uses to regmap
  net: dsa: lantiq_gswip: manually convert remaining uses of read
    accessors
  net: dsa: lantiq_gswip: replace *_mask() functions with regmap API
  net: dsa: lantiq_gswip: optimize regmap_write_bits() statements
  net: dsa: lantiq_gswip: harmonize gswip_mii_mask_*() parameters

 drivers/net/dsa/lantiq/Kconfig        |   1 +
 drivers/net/dsa/lantiq/lantiq_gswip.c | 471 +++++++++++++-------------
 drivers/net/dsa/lantiq/lantiq_gswip.h |   6 +-
 3 files changed, 243 insertions(+), 235 deletions(-)

-- 
2.51.1