From: Claude Code Review Bot <claude-review@example.com>
To: dri-devel-reviews@example.com
Subject: Claude review: Split Generic PHY consumer and provider API
Date: Tue, 10 Mar 2026 11:57:14 +1000 [thread overview]
Message-ID: <review-overall-20260309190842.927634-1-vladimir.oltean@nxp.com> (raw)
In-Reply-To: <20260309190842.927634-1-vladimir.oltean@nxp.com>
Overall Series Review
Subject: Split Generic PHY consumer and provider API
Author: Vladimir Oltean <vladimir.oltean@nxp.com>
Patches: 25
Reviewed: 2026-03-10T11:57:14.385752
---
This is a well-structured 24-patch series by Vladimir Oltean that splits the Generic PHY subsystem's `<linux/phy/phy.h>` header into separate consumer and provider APIs. The motivation is sound: consumer drivers should not have access to `struct phy` internals (like `power_count`, `init_count`, `dev.of_node`), following the precedent set by other subsystems (gpio, regulator, iio, etc.).
The series follows a clean progression:
1. **Patches 1-7**: Add missing transitive headers that will no longer be provided by `<linux/phy/phy.h>`
2. **Patches 8-11**: Remove consumer driver abuse of `struct phy` internals
3. **Patch 12**: The core split — move provider API to `drivers/phy/phy-provider.h`, create `phy-props.h` for shared types
4. **Patches 13-14**: Make attribute accessors NULL-tolerant and add `phy_get_max_link_rate()`
5. **Patches 15-20**: Fix remaining out-of-tree provider includes and miscellaneous
6. **Patches 21-22**: Mass update of all PHY provider drivers to include new header
7. **Patch 23**: Remove the temporary compatibility `#include` that re-exported provider definitions to consumers
8. **Patch 24**: Add MAINTAINERS regexes
The approach is methodical and the patch ordering is logical. The series has already gathered several Acked-by/Reviewed-by tags from subsystem maintainers. The temporary compatibility shim in patch 12 (including `phy-provider.h` from `phy.h`) that gets removed in patch 23 is a clean bisectability strategy.
**Overall: This is a high-quality series that I would recommend for merging with minor observations noted below.**
---
Generated by Claude Code Patch Reviewer
next prev parent reply other threads:[~2026-03-10 1:57 UTC|newest]
Thread overview: 50+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-09 19:08 [PATCH v3 phy-next 00/24] Split Generic PHY consumer and provider API Vladimir Oltean
2026-03-09 19:08 ` [PATCH v3 phy-next 01/24] ata: add <linux/pm_runtime.h> where missing Vladimir Oltean
2026-03-10 1:57 ` Claude review: " Claude Code Review Bot
2026-03-09 19:08 ` [PATCH v3 phy-next 02/24] PCI: Add missing headers transitively included by <linux/phy/phy.h> Vladimir Oltean
2026-03-10 1:57 ` Claude review: " Claude Code Review Bot
2026-03-09 19:08 ` [PATCH v3 phy-next 03/24] usb: add " Vladimir Oltean
2026-03-10 1:57 ` Claude review: " Claude Code Review Bot
2026-03-09 19:08 ` [PATCH v3 phy-next 04/24] drm: add <linux/pm_runtime.h> where missing Vladimir Oltean
2026-03-10 1:57 ` Claude review: " Claude Code Review Bot
2026-03-09 19:08 ` [PATCH v3 phy-next 05/24] phy: " Vladimir Oltean
2026-03-10 1:57 ` Claude review: " Claude Code Review Bot
2026-03-09 19:08 ` [PATCH v3 phy-next 06/24] phy: spacemit: include missing <linux/phy/phy.h> Vladimir Oltean
2026-03-10 1:57 ` Claude review: " Claude Code Review Bot
2026-03-09 19:08 ` [PATCH v3 phy-next 07/24] net: lan969x: include missing <linux/of.h> Vladimir Oltean
2026-03-10 1:57 ` Claude review: " Claude Code Review Bot
2026-03-09 19:08 ` [PATCH v3 phy-next 08/24] PCI: Remove device links to PHY Vladimir Oltean
2026-03-10 1:57 ` Claude review: " Claude Code Review Bot
2026-03-09 19:08 ` [PATCH v3 phy-next 09/24] ufs: exynos: stop poking into struct phy guts Vladimir Oltean
2026-03-10 1:57 ` Claude review: " Claude Code Review Bot
2026-03-09 19:08 ` [PATCH v3 phy-next 10/24] drm/rockchip: dw_hdmi: avoid direct dereference of phy->dev.of_node Vladimir Oltean
2026-03-10 1:57 ` Claude review: " Claude Code Review Bot
2026-03-09 19:08 ` [PATCH v3 phy-next 11/24] drm/msm/dp: remove debugging prints with internal struct phy state Vladimir Oltean
2026-03-10 1:57 ` Claude review: " Claude Code Review Bot
2026-03-09 19:08 ` [PATCH v3 phy-next 12/24] phy: move provider API out of public <linux/phy/phy.h> Vladimir Oltean
2026-03-10 1:57 ` Claude review: " Claude Code Review Bot
2026-03-09 19:08 ` [PATCH v3 phy-next 13/24] phy: make phy_get_mode(), phy_(get|set)_bus_width() NULL tolerant Vladimir Oltean
2026-03-10 1:57 ` Claude review: " Claude Code Review Bot
2026-03-09 19:08 ` [PATCH v3 phy-next 14/24] phy: introduce phy_get_max_link_rate() helper for consumers Vladimir Oltean
2026-03-10 1:57 ` Claude review: " Claude Code Review Bot
2026-03-09 19:08 ` [PATCH v3 phy-next 15/24] drm/rockchip: dsi: include PHY provider header Vladimir Oltean
2026-03-10 1:57 ` Claude review: " Claude Code Review Bot
2026-03-09 19:08 ` [PATCH v3 phy-next 16/24] drm: bridge: cdns-mhdp8546: use consumer API for getting PHY bus width Vladimir Oltean
2026-03-10 1:57 ` Claude review: " Claude Code Review Bot
2026-03-09 19:08 ` [PATCH v3 phy-next 17/24] media: sunxi: a83-mips-csi2: include PHY provider header Vladimir Oltean
2026-03-10 1:57 ` Claude review: " Claude Code Review Bot
2026-03-09 19:08 ` [PATCH v3 phy-next 18/24] net: renesas: rswitch: " Vladimir Oltean
2026-03-10 1:57 ` Claude review: " Claude Code Review Bot
2026-03-09 19:08 ` [PATCH v3 phy-next 19/24] pinctrl: tegra-xusb: " Vladimir Oltean
2026-03-10 1:57 ` Claude review: " Claude Code Review Bot
2026-03-09 19:08 ` [PATCH v3 phy-next 20/24] power: supply: cpcap-charger: include missing <linux/property.h> Vladimir Oltean
2026-03-10 1:57 ` Claude review: " Claude Code Review Bot
2026-03-09 19:08 ` [PATCH v3 phy-next 21/24] phy: include PHY provider header (1/2) Vladimir Oltean
2026-03-09 19:08 ` [PATCH v3 phy-next 22/24] phy: include PHY provider header (2/2) Vladimir Oltean
2026-03-09 19:08 ` [PATCH v3 phy-next 23/24] phy: remove temporary provider compatibility from consumer header Vladimir Oltean
2026-03-10 1:57 ` Claude review: " Claude Code Review Bot
2026-03-09 19:08 ` [PATCH v3 phy-next 24/24] MAINTAINERS: add regexes for linux-phy Vladimir Oltean
2026-03-10 1:57 ` Claude review: " Claude Code Review Bot
2026-03-10 1:57 ` Claude Code Review Bot [this message]
-- strict thread matches above, loose matches on Subject: below --
2026-03-19 22:32 [PATCH v5 phy-next 00/27] Split Generic PHY consumer and provider API Vladimir Oltean
2026-03-21 18:07 ` Claude review: " Claude Code Review Bot
2026-03-08 11:39 [PATCH v2 phy-next 00/24] " vladimir.oltean
2026-03-08 21:51 ` Claude review: " Claude Code Review Bot
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=review-overall-20260309190842.927634-1-vladimir.oltean@nxp.com \
--to=claude-review@example.com \
--cc=dri-devel-reviews@example.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox