From: Piotr Kubik <piotr.kubik@adtran.com>
To: Oleksij Rempel <o.rempel@pengutronix.de>,
Kory Maincent <kory.maincent@bootlin.com>,
Andrew Lunn <andrew+netdev@lunn.ch>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
"netdev@vger.kernel.org" <netdev@vger.kernel.org>,
"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: [PATCH net-next v7 0/2] Add Si3474 PSE controller driver
Date: Tue, 26 Aug 2025 14:40:57 +0000 [thread overview]
Message-ID: <6af537dc-8a52-4710-8a18-dcfbb911cf23@adtran.com> (raw)
From: Piotr Kubik <piotr.kubik@adtran.com>
These patch series provide support for Skyworks Si3474 I2C Power
Sourcing Equipment controller.
Based on the TPS23881 driver code.
Supported features of Si3474:
- get port status,
- get port power,
- get port voltage,
- enable/disable port power
Signed-off-by: Piotr Kubik <piotr.kubik@adtran.com>
---
Changes in v7:
- Add return with error if DTS is missing second PI pair configuration (4p only).
- Link to v6: https://lore.kernel.org/netdev/bafdf870-dbc4-4641-b8c0-515375943acc@adtran.com
Changes in v6:
- Remove unnecessary chan id range checks.
- Fix return value for incorrect DT channels parse.
- Simplify bit logic for 'is_enabled' assignment.
- Remove unnecessary init values assignment.
- Fix code style issues (apply correct reverse xmas tree notation, remove extra brackets).
- Link to v5: https://lore.kernel.org/netdev/be0fb368-79b6-4b99-ad6b-00d7897ca8b0@adtran.com
Changes in v5:
- Remove inline function declarations.
- Fix code style issues (apply reverse xmas tree notation, remove extra brackets).
- Remove unnecessary "!= 0" check.
- Link to v4: https://lore.kernel.org/netdev/c0c284b8-6438-4163-a627-bbf5f4bcc624@adtran.com
Changes in v4:
- Remove parsing of pse-pis node; now relies solely on the pcdev->pi[x] provided by the framework.
- Set the DETECT_CLASS_ENABLE register, ensuring reliable PI power-up without artificial delays.
- Introduce helper macros for bit manipulation logic.
- Add si3474_get_channels() and si3474_get_chan_client() helpers to reduce redundant code.
- Kconfig: Clarify that only 4-pair PSE configurations are supported.
- Fix second channel voltage read if the first one is inactive.
- Avoid reading currents and computing power when PI voltage is zero.
- Link to v3: https://lore.kernel.org/netdev/f975f23e-84a7-48e6-a2b2-18ceb9148675@adtran.com
Changes in v3:
- Use _scoped version of for_each_child_of_node().
- Remove redundant return value assignments in si3474_get_of_channels().
- Change dev_info() to dev_dbg() on successful probe.
- Rename all instances of "slave" to "secondary".
- Register devm cleanup action for ancillary i2c, simplifying cleanup logic in si3474_i2c_probe().
- Add explicit return 0 on successful probe.
- Drop unnecessary .remove callback.
- Update channel node description in device tree binding documentation.
- Reorder reg and reg-names properties in device tree binding documentation.
- Rename all "slave" references to "secondary" in device tree bindings documentation.
- Link to v2: https://lore.kernel.org/netdev/bf9e5c77-512d-4efb-ad1d-f14120c4e06b@adtran.com
Changes in v2:
- Handle both IC quads via single driver instance
- Add architecture & terminology description comment
- Change pi_enable, pi_disable, pi_get_admin_state to use PORT_MODE register
- Rename power ports to 'pi'
- Use i2c_smbus_write_byte_data() for single byte registers
- Coding style improvements
- Link to v1: https://lore.kernel.org/netdev/a92be603-7ad4-4dd3-b083-548658a4448a@adtran.com
---
Piotr Kubik (2):
dt-bindings: net: pse-pd: Add bindings for Si3474 PSE controller
net: pse-pd: Add Si3474 PSE controller driver
.../bindings/net/pse-pd/skyworks,si3474.yaml | 144 +++++
drivers/net/pse-pd/Kconfig | 11 +
drivers/net/pse-pd/Makefile | 1 +
drivers/net/pse-pd/si3474.c | 578 ++++++++++++++++++
4 files changed, 734 insertions(+)
create mode 100644 Documentation/devicetree/bindings/net/pse-pd/skyworks,si3474.yaml
create mode 100644 drivers/net/pse-pd/si3474.c
--
2.43.0
next reply other threads:[~2025-08-26 14:41 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-08-26 14:40 Piotr Kubik [this message]
2025-08-26 14:41 ` [PATCH net-next v7 1/2] dt-bindings: net: pse-pd: Add bindings for Si3474 PSE controller Piotr Kubik
2025-08-26 14:41 ` [PATCH net-next v7 2/2] net: pse-pd: Add Si3474 PSE controller driver Piotr Kubik
2025-08-28 11:35 ` Kory Maincent
2025-08-28 12:50 ` [PATCH net-next v7 0/2] " patchwork-bot+netdevbpf
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=6af537dc-8a52-4710-8a18-dcfbb911cf23@adtran.com \
--to=piotr.kubik@adtran.com \
--cc=andrew+netdev@lunn.ch \
--cc=conor+dt@kernel.org \
--cc=davem@davemloft.net \
--cc=devicetree@vger.kernel.org \
--cc=edumazet@google.com \
--cc=kory.maincent@bootlin.com \
--cc=krzk+dt@kernel.org \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=o.rempel@pengutronix.de \
--cc=pabeni@redhat.com \
--cc=robh@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.