[PATCH 00/12] Add support for PSE port priority

From: Kory Maincent
Date: Wed Oct 02 2024 - 12:15:06 EST


From: Kory Maincent (Dent Project) <kory.maincent@xxxxxxxxxxx>

This series brings support for port priority in the PSE subsystem.
PSE controllers can set priorities to decide which ports should be
turned off in case of special events like over-current.

This series also adds support for the devm_pse_irq_helper() helper,
similarly to devm_regulator_irq_helper(), to report events and errors.
Wrappers are used to avoid regulator naming in PSE drivers to prevent
confusion.

Patches 1-3: Cosmetics.
Patch 4: Adds support for last supported features in the TPS23881 drivers.
Patches 5-7: Add support for port priority in PSE core and ethtool.
Patches 8-9: Add support for port priority in PD692x0 and TPS23881 drivers.
Patches 10-11: Add support for devm_pse_irq_helper() helper in PSE core and
ethtool.
Patch 12: Adds support for interrupt and event report in TPS23881 driver.

This patch series is based on the fix sent recently:
https://lore.kernel.org/netdev/20241002121706.246143-1-kory.maincent@xxxxxxxxxxx/T/#u

Signed-off-by: Kory Maincent <kory.maincent@xxxxxxxxxxx>
---
Kory Maincent (12):
net: pse-pd: Remove unused pse_ethtool_get_pw_limit function declaration
net: pse-pd: tps23881: Correct boolean evaluation for bitmask checks
net: pse-pd: tps23881: Simplify function returns by removing redundant checks
net: pse-pd: tps23881: Add support for power limit and measurement features
net: pse-pd: Add support for getting and setting port priority
net: ethtool: Add PSE new port priority support feature
netlink: specs: Expand the PSE netlink command with C33 prio attributes
net: pse-pd: pd692x0: Add support for PSE PI priority feature
net: pse-pd: tps23881: Add support for PSE PI priority feature
net: pse-pd: Register regulator even for undescribed PSE PIs
net: pse-pd: Add support for event reporting using devm_regulator_irq_helper
net: pse-pd: tps23881: Add support for PSE events and interrupts

Documentation/netlink/specs/ethtool.yaml | 11 +
Documentation/networking/ethtool-netlink.rst | 16 +
drivers/net/pse-pd/pd692x0.c | 23 ++
drivers/net/pse-pd/pse_core.c | 66 +++-
drivers/net/pse-pd/tps23881.c | 532 +++++++++++++++++++++++++--
include/linux/pse-pd/pse.h | 43 ++-
include/uapi/linux/ethtool_netlink.h | 2 +
net/ethtool/pse-pd.c | 18 +
8 files changed, 674 insertions(+), 37 deletions(-)
---
base-commit: 8052e7ff851b33e77f23800f8d15bafae9f97d17
change-id: 20240913-feature_poe_port_prio-a51aed7332ec

Best regards,
--
Köry Maincent, Bootlin
Embedded Linux and kernel engineering
https://bootlin.com