Following Marek's work on the abstraction of the SERDES lanes mapping, this
series trades the .serdes_irq_setup and .serdes_irq_free callbacks for new
.serdes_irq_mapping, .serdes_irq_enable and .serdes_irq_status operations.

This has the benefit to limit the various SERDES implementations to simple
register accesses only; centralize the IRQ handling and mutex locking logic;
as well as reducing boilerplate in the driver.

Vivien Didelot (10):
  net: dsa: mv88e6xxx: check errors in mv88e6352_serdes_irq_link
  net: dsa: mv88e6xxx: fix SERDES IRQ mapping
  net: dsa: mv88e6xxx: introduce .serdes_irq_mapping
  net: dsa: mv88e6xxx: simplify .serdes_get_lane
  net: dsa: mv88e6xxx: implement mv88e6352_serdes_get_lane
  net: dsa: mv88e6xxx: merge mv88e6352_serdes_power_set
  net: dsa: mv88e6xxx: pass lane to .serdes_power
  net: dsa: mv88e6xxx: introduce .serdes_irq_enable
  net: dsa: mv88e6xxx: introduce .serdes_irq_status
  net: dsa: mv88e6xxx: centralize SERDES IRQ handling

 drivers/net/dsa/mv88e6xxx/chip.c   | 141 ++++++++---
 drivers/net/dsa/mv88e6xxx/chip.h   |  15 +-
 drivers/net/dsa/mv88e6xxx/port.c   |  21 +-
 drivers/net/dsa/mv88e6xxx/serdes.c | 382 ++++++++---------------------
 drivers/net/dsa/mv88e6xxx/serdes.h | 107 ++++++--
 5 files changed, 315 insertions(+), 351 deletions(-)

-- 
2.23.0

Reply via email to