[PATCH v2 2/8] dt-bindings: devfreq: event: rockchip,dfi: add clocks to rk3588
From: Sebastian Reichel
Date: Mon Sep 21 2026 - 16:38:46 EST
From: Nicolas Frattaroli <nicolas.frattaroli@xxxxxxxxxxxxx>
RK3588's DFI has pclks for each channel. They just weren't noticed as
missing until now because nothing ever gates them, and they're ungated
by default on power-on.
The RK3399 clock situation needs no changes, as there the hardware
really just has one monitoring unit for both channels.
Add these clocks to the binding, so that drivers for this device can
properly know about their existence.
Signed-off-by: Nicolas Frattaroli <nicolas.frattaroli@xxxxxxxxxxxxx>
Signed-off-by: Sebastian Reichel <sebastian.reichel@xxxxxxxxxxxxx>
---
.../bindings/devfreq/event/rockchip,dfi.yaml | 70 ++++++++++++++++++----
1 file changed, 58 insertions(+), 12 deletions(-)
diff --git a/Documentation/devicetree/bindings/devfreq/event/rockchip,dfi.yaml b/Documentation/devicetree/bindings/devfreq/event/rockchip,dfi.yaml
index 50d3fabe958d..3450e28b4020 100644
--- a/Documentation/devicetree/bindings/devfreq/event/rockchip,dfi.yaml
+++ b/Documentation/devicetree/bindings/devfreq/event/rockchip,dfi.yaml
@@ -17,11 +17,18 @@ properties:
- rockchip,rk3588-dfi
clocks:
- maxItems: 1
+ minItems: 1
+ maxItems: 4
clock-names:
+ minItems: 1
items:
- - const: pclk_ddr_mon
+ - enum:
+ - pclk_ddr_mon
+ - pclk_ddr_mon_ch0
+ - const: pclk_ddr_mon_ch1
+ - const: pclk_ddr_mon_ch2
+ - const: pclk_ddr_mon_ch3
interrupts:
minItems: 1
@@ -40,17 +47,37 @@ required:
- interrupts
- reg
-if:
- properties:
- compatible:
- contains:
- enum:
- - rockchip,rk3399-dfi
+allOf:
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - rockchip,rk3399-dfi
+ then:
+ properties:
+ clocks:
+ maxItems: 1
+ clock-names:
+ maxItems: 1
+ required:
+ - clocks
+ - clock-names
-then:
- required:
- - clocks
- - clock-names
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - rockchip,rk3588-dfi
+ then:
+ properties:
+ clocks:
+ minItems: 4
+ maxItems: 4
+ clock-names:
+ minItems: 4
+ maxItems: 4
additionalProperties: false
@@ -72,3 +99,22 @@ examples:
clock-names = "pclk_ddr_mon";
};
};
+
+ - |
+ bus {
+ #address-cells = <2>;
+ #size-cells = <2>;
+
+ dfi_rk3588: dfi@fe060000 {
+ compatible = "rockchip,rk3588-dfi";
+ reg = <0x00 0xfe060000 0x00 0x10000>;
+ clocks = <&cru 0x53>, <&cru 0x48>, <&cru 0x49>, <&cru 0x54>;
+ clock-names = "pclk_ddr_mon_ch0", "pclk_ddr_mon_ch1",
+ "pclk_ddr_mon_ch2", "pclk_ddr_mon_ch3";
+ interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH 0>,
+ <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH 0>,
+ <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH 0>,
+ <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH 0>;
+ rockchip,pmu = <&pmugrf>;
+ };
+ };
--
2.53.0