This patch series aims at adding support for PoE (Power over Ethernet), based on the already existing support for PoDL (Power over Data Line) implementation. In addition, it adds support for one specific PoE controller, the Microchip PD692x0. In detail: - Patch 1 to 6 prepare net to support PoE devices. - Patch 7 adds a new error code to firmware upload API. - Patch 8 and 9 add PD692x0 PoE PSE controller driver and its binding. Signed-off-by: Kory Maincent <kory.maincent@xxxxxxxxxxx> --- Kory Maincent (9): net: pse-pd: Rectify and adapt the naming of admin_cotrol member of struct pse_control_config ethtool: Expand Ethernet Power Equipment with PoE alongside PoDL net: pse-pd: Introduce PSE types enumeration net: ethtool: pse-pd: Expand pse commands with the PSE PoE interface netlink: specs: Modify pse attribute prefix netlink: specs: Expand the pse netlink command with PoE interface firmware_loader: Expand Firmware upload error codes dt-bindings: net: pse-pd: Add bindings for PD692x0 PSE controller net: pse-pd: Add PD692x0 PSE controller driver .../bindings/net/pse-pd/microchip,pd692x0_i2c.yaml | 70 ++ Documentation/netlink/specs/ethtool.yaml | 33 +- Documentation/networking/ethtool-netlink.rst | 20 + MAINTAINERS | 7 + drivers/base/firmware_loader/sysfs_upload.c | 1 + drivers/net/pse-pd/Kconfig | 11 + drivers/net/pse-pd/Makefile | 1 + drivers/net/pse-pd/pd692x0.c | 1049 ++++++++++++++++++++ drivers/net/pse-pd/pse_core.c | 9 + drivers/net/pse-pd/pse_regulator.c | 9 +- include/linux/firmware.h | 2 + include/linux/pse-pd/pse.h | 35 +- include/uapi/linux/ethtool.h | 43 + include/uapi/linux/ethtool_netlink.h | 3 + net/ethtool/pse-pd.c | 64 +- 15 files changed, 1332 insertions(+), 25 deletions(-) --- base-commit: 23dd60286589d9d49c8135dee937fd54efa5643c change-id: 20231024-feature_poe-139490e73403 Best regards, -- Köry Maincent, Bootlin Embedded Linux and kernel engineering https://bootlin.com