[PATCH net-next v6 0/6] net: dsa: microchip: ksz8795: add Wake on LAN support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Pieter Van Trappen <pieter.van.trappen@xxxxxxx>

Add WoL support for KSZ8795 family of switches. This code was tested
with a KSZ8794 chip.

Strongly based on existing KSZ9477 code which has now been moved to
ksz_common instead of duplicating, as proposed during the review of
the v1 version of this patch.

In addition to the device-tree addition and the actual code, there's
two additional patches that fix some bugs found when further testing
DSA with this KSZ8794 chip.

Signed-off-by: Pieter Van Trappen <pieter.van.trappen@xxxxxxx>
---
v6:
 - patch 6/6: use GENMASK macro in dedicated mask macro instead of inline

v5: https://lore.kernel.org/netdev/20240812153015.653044-1-vtpieter@xxxxxxxxx/
 - patch 5/6: split off DSA tag_ksz fix to separate patch 6/6

v4: https://lore.kernel.org/netdev/20240812084945.578993-1-vtpieter@xxxxxxxxx/
 - patch 4/5: rename KSZ8795* macros to KSZ87XX*
 - patch 5/5: rename ksz8_dev_ops to ksz88x3_dev_ops
 - patch 5/5: additional DSA tag_ksz fix

v3: https://lore.kernel.org/netdev/20240806132606.1438953-1-vtpieter@xxxxxxxxx/
 - ensure each patch separately compiles & works
 - additional return value checks where possible
 - drop v2 patch 5/5 (net: dsa: microchip: check erratum workaround through indirect register read)
 - add new patch 5/5 that fixes KSZ87xx bugs wrt datasheet

v2: https://lore.kernel.org/netdev/20240731103403.407818-1-vtpieter@xxxxxxxxx/
 - generalize instead of duplicate, much improved
 - variable declaration reverse Christmas tree
 - ksz8_handle_global_errata: return -EIO in case of indirect write failure
 - ksz8_ind_read8/write8: document functions
 - ksz8_handle_wake_reason: no need for additional write to clear
 - fix wakeup_source origin comments
v1: https://lore.kernel.org/netdev/20240717193725.469192-1-vtpieter@xxxxxxxxx/

Pieter Van Trappen (6):
  dt-bindings: net: dsa: microchip: add microchip,pme-active-high flag
  net: dsa: microchip: move KSZ9477 WoL functions to ksz_common
  net: dsa: microchip: generalize KSZ9477 WoL functions at ksz_common
  net: dsa: microchip: add WoL support for KSZ87xx family
  net: dsa: microchip: fix KSZ87xx family structure wrt the datasheet
  net: dsa: microchip: fix tag_ksz egress mask for KSZ8795 family

 .../bindings/net/dsa/microchip,ksz.yaml       |   5 +
 drivers/net/dsa/microchip/ksz8.h              |   3 +
 drivers/net/dsa/microchip/ksz8795.c           |  94 +++++-
 drivers/net/dsa/microchip/ksz9477.c           | 197 +------------
 drivers/net/dsa/microchip/ksz9477.h           |   5 -
 drivers/net/dsa/microchip/ksz9477_reg.h       |  12 -
 drivers/net/dsa/microchip/ksz_common.c        | 271 ++++++++++++++++--
 drivers/net/dsa/microchip/ksz_common.h        |  31 +-
 net/dsa/tag_ksz.c                             |   6 +-
 9 files changed, 391 insertions(+), 233 deletions(-)


base-commit: dd1bf9f9df156b43e5122f90d97ac3f59a1a5621
-- 
2.43.0





[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux