[PATCH 1/4] dt-bindings: phy: rockchip,rk3588-mipi-dcphy: support per-direction phys

sashiko-bot at kernel.org sashiko-bot at kernel.org
Tue Jul 21 03:44:33 PDT 2026


Thank you for your contribution! Sashiko AI review found 2 potential issue(s) to consider:
- [High] The `#phy-cells` property uses `enum: [1, 2]` instead of a `const` constraint, which violates subsystem guidelines and creates a fundamentally broken device tree parsing design.
- [High] The commit introduces a 2-cell format for `#phy-cells` to support independent TX/RX consumers, but the PHY driver actively rejects anything other than 1 cell, resulting in probe failures.
--

--- Patch [1]: [PATCH 1/4] dt-bindings: phy: rockchip,rk3588-mipi-dcphy: support per-direction phys ---
commit 0077b5ec50ff5c6cc10afd337f193a9f090d6946
Author: Jason Yang <jason98166 at gmail.com>

dt-bindings: phy: rockchip,rk3588-mipi-dcphy: support per-direction phys

The Samsung MIPI D-/C-PHY block on RK3588 drives a MIPI DSI transmitter
and, on the same PHY, can receive a MIPI CSI camera. Describing both as
independent consumers of one PHY requires the direction to be expressed
in the devicetree.

> diff --git a/Documentation/devicetree/bindings/phy/rockchip,rk3588-mipi-dcphy.yaml b/Documentation/devicetree/bindings/phy/rockchip,rk3588-mipi-dcphy.yaml
> index c8ff5ba22a86b..53d6951375667 100644
> --- a/Documentation/devicetree/bindings/phy/rockchip,rk3588-mipi-dcphy.yaml
> +++ b/Documentation/devicetree/bindings/phy/rockchip,rk3588-mipi-dcphy.yaml
> @@ -20,12 +20,22 @@ properties:
>      maxItems: 1
>  
>    "#phy-cells":
> -    const: 1
> +    enum: [1, 2]

[Severity: High]
Does this violate the subsystem requirement that cell-count properties must
use a const constraint?

If a board developer updates the PHY provider node to #phy-cells = <2> to use
the new CSI consumer, will any existing DSI consumer relying on 1-cell parsing
fail to probe?

The function of_parse_phandle_with_args() strictly enforces that the consumer's
argument count exactly matches the provider's #phy-cells count.

Additionally, it looks like the driver hasn't been updated to support this yet.

In drivers/phy/rockchip/phy-rockchip-samsung-dcphy.c, the translation callback
samsung_mipi_dcphy_xlate() still explicitly checks for exactly 1 cell:

	if (args->args_count != 1) {
		dev_err(dev, "invalid number of arguments\n");
		return ERR_PTR(-EINVAL);
	}

Will this cause any device tree attempting to use the newly documented 2-cell
format to fail to initialize at runtime?

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20260721-dcphy-rx-v1-v1-0-4fc83c0ccac9@gmail.com?part=1



More information about the linux-phy mailing list