[PATCH net-next v3 00/17] net: dsa: microchip: add error handling and register access validation

From: Oleksij Rempel
Date: Fri Aug 26 2022 - 06:57:10 EST


changes v4:
- add Reviewed-by: Vladimir Oltean <olteanv@xxxxxxxxx> to all patches
- fix checkpatch warnings.

changes v3:
- fix build error in the middle of the patch stack.

changes v2:
- add regmap_ranges for KSZ9477
- drop output clock devicetree in driver validation patches. DTs need
some more refactoring and can be done in a separate patch set.
- remove some unused variables.

This patch series adds error handling for the PHY read/write path and optional
register access validation.
After adding regmap_ranges for KSZ8563 some bugs was detected, so
critical bug fixes are sorted before ragmap_range patch.

Potentially this bug fixes can be ported to stable kernels, but need to be
reworked.

Oleksij Rempel (17):
net: dsa: microchip: add separate struct ksz_chip_data for KSZ8563
chip
net: dsa: microchip: do per-port Gbit detection instead of per-chip
net: dsa: microchip: don't announce extended register support on non
Gbit chips
net: dsa: microchip: allow to pass return values for PHY read/write
accesses
net: dsa: microchip: forward error value on all ksz_pread/ksz_pwrite
functions
net: dsa: microchip: ksz9477: add error handling to ksz9477_r/w_phy
net: dsa: microchip: ksz8795: add error handling to ksz8_r/w_phy
net: dsa: microchip: KSZ9893: do not write to not supported Output
Clock Control Register
net: dsa: microchip: add support for regmap_access_tables
net: dsa: microchip: add regmap_range for KSZ8563 chip
net: dsa: microchip: ksz9477: remove MII_CTRL1000 check from
ksz9477_w_phy()
net: dsa: microchip: add regmap_range for KSZ9477 chip
net: dsa: microchip: ksz9477: use internal_phy instead of phy_port_cnt
net: dsa: microchip: remove unused port phy variable
net: dsa: microchip: ksz9477: remove unused "on" variable
net: dsa: microchip: remove unused sgmii variable
net: dsa: microchip: remove IS_9893 flag

drivers/net/dsa/microchip/ksz8.h | 4 +-
drivers/net/dsa/microchip/ksz8795.c | 111 ++++--
drivers/net/dsa/microchip/ksz9477.c | 85 ++---
drivers/net/dsa/microchip/ksz9477.h | 4 +-
drivers/net/dsa/microchip/ksz_common.c | 450 ++++++++++++++++++++++-
drivers/net/dsa/microchip/ksz_common.h | 102 +++--
drivers/net/dsa/microchip/ksz_spi.c | 5 +-
drivers/net/dsa/microchip/lan937x.h | 4 +-
drivers/net/dsa/microchip/lan937x_main.c | 8 +-
9 files changed, 651 insertions(+), 122 deletions(-)

--
2.30.2