[PATCH v4 2/6] dt-bindings: phy: Add rockchip,rk3568-edp-phy
Damon Ding
damon.ding at rock-chips.com
Wed Nov 4 00:59:58 PST 2026
Hi Krzysztof,
On 11/3/2026 7:20 PM, Krzysztof Kozlowski wrote:
> On Fri, Oct 30, 2026 at 02:49:01PM +0800, Damon Ding wrote:
>> Document the eDP transmitter PHY with NaNeng IP block found on the
>> RK3568 SoC. The PHY has its own register window inside the eDP PHY
>> GRF, so its node is modeled as a child of the eDP PHY GRF syscon with
>> a reg property describing that window. Also add the
>> "rockchip,rk3568-edp-phy-grf" compatible and the phy node reference to
>> the Rockchip GRF schema.
>>
>> Signed-off-by: Damon Ding <damon.ding at rock-chips.com>
>>
>> ---
>>
>> Changes in v4:
>> - Add the reg entry for the PHY node and the ranges/#address-cells/
>> #size-cells for the parent syscon node.
>> ---
>> .../bindings/phy/rockchip,rk3568-edp-phy.yaml | 68 +++++++++++++++++++
>> .../devicetree/bindings/soc/rockchip/grf.yaml | 20 ++++++
>> 2 files changed, 88 insertions(+)
>> create mode 100644 Documentation/devicetree/bindings/phy/rockchip,rk3568-edp-phy.yaml
>>
>> diff --git a/Documentation/devicetree/bindings/phy/rockchip,rk3568-edp-phy.yaml b/Documentation/devicetree/bindings/phy/rockchip,rk3568-edp-phy.yaml
>> new file mode 100644
>> index 000000000000..b78da00ffefd
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/phy/rockchip,rk3568-edp-phy.yaml
>> @@ -0,0 +1,68 @@
>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/phy/rockchip,rk3568-edp-phy.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: Rockchip eDP Transmitter PHY with NaNeng IP block
>> +
>> +maintainers:
>> + - Damon Ding <damon.ding at rock-chips.com>
>> + - Heiko Stuebner <heiko at sntech.de>
>> +
>> +description:
>> + On the RK3568 SoC the eDP PHY is controlled through the eDP PHY GRF
>> + registers, therefore the PHY node is expected to be a child of the
>> + eDP PHY GRF syscon node.
>> +
>> +properties:
>> + compatible:
>> + const: rockchip,rk3568-edp-phy
>> +
>> + reg:
>> + maxItems: 1
>> + description: PHY registers within the eDP PHY GRF.
>> +
>> + clocks:
>> + maxItems: 1
>> +
>> + clock-names:
>> + const: refclk
>
> Just "ref"
Will fix in v5.
>
>> +
>> + "#phy-cells":
>> + const: 0
>> +
>> +required:
>> + - compatible
>> + - reg
>> + - clocks
>> + - clock-names
>> + - "#phy-cells"
>> +
>> +additionalProperties: false
>> +
>> +examples:
>> + - |
>> + #include <dt-bindings/clock/rk3568-cru.h>
>> +
>> + soc {
>> + #address-cells = <2>;
>> + #size-cells = <2>;
>> +
>> + edp_phy_grf: syscon at fdcb0000 {
>> + compatible = "rockchip,rk3568-edp-phy-grf", "syscon", "simple-mfd";
>
> This is beyond the scope of this binding. Drop entire node.
Will Drop in v5. The example should only show the PHY node itself.
>
>> + reg = <0x0 0xfdcb0000 0x0 0x8000>;
>> + clocks = <&cru PCLK_EDPPHY_GRF>;
>> + ranges = <0x0 0x0 0xfdcb0000 0x100>;
>> + #address-cells = <1>;
>> + #size-cells = <1>;
>> +
>> + edp_phy: phy at 0 {
>> + compatible = "rockchip,rk3568-edp-phy";
>> + reg = <0x0 0x100>;
>> + clocks = <&pmucru XIN_OSC0_EDPPHY_G>;
>> + clock-names = "refclk";
>> + #phy-cells = <0>;
>> + };
>> + };
>> + };
>> diff --git a/Documentation/devicetree/bindings/soc/rockchip/grf.yaml b/Documentation/devicetree/bindings/soc/rockchip/grf.yaml
>> index 7bcb4e2f47ec..c089bd014003 100644
>> --- a/Documentation/devicetree/bindings/soc/rockchip/grf.yaml
>> +++ b/Documentation/devicetree/bindings/soc/rockchip/grf.yaml
>> @@ -93,6 +93,7 @@ properties:
>> - rockchip,rk3399-grf
>> - rockchip,rk3399-pmugrf
>> - rockchip,rk3562-pmu-grf
>> + - rockchip,rk3568-edp-phy-grf
>> - rockchip,rk3568-grf
>> - rockchip,rk3568-pmugrf
>> - rockchip,rk3576-ioc-grf
>> @@ -119,6 +120,8 @@ properties:
>> "#size-cells":
>> const: 1
>>
>> + ranges: true
>> +
>> required:
>> - compatible
>> - reg
>> @@ -156,6 +159,22 @@ allOf:
>> $ref: /schemas/phy/rockchip,rk3288-dp-phy.yaml#
>> unevaluatedProperties: false
>>
>> + - if:
>> + properties:
>> + compatible:
>> + contains:
>> + const: rockchip,rk3568-edp-phy-grf
>> +
>> + then:
>> + required:
>> + - "#address-cells"
>> + - "#size-cells"
>> + patternProperties:
>> + "^phy@[0-9a-f]+$":
>> + type: object
>> + $ref: /schemas/phy/rockchip,rk3568-edp-phy.yaml#
>> + unevaluatedProperties: false
>
> Properties should be defined in top level. Here you only narrow them.
>
> This binding is getting close to unreadable/unmaintainable. Split new
> devices with children to their own binding.
Agreed. The "rockchip,rk3568-edp-phy-grf" syscon will be documented by
its own binding schema in v5.
Best regards,
Damon
More information about the linux-arm-kernel
mailing list