[PATCH 1/2] dt-bindings: clock: anlogic,dr1v90-cru: make external clocks optional

Junhui Liu junhui.liu at pigmoral.tech
Thu Oct 1 23:07:00 PDT 2026


The external CAN and WDT clocks are optional inputs routed from the
board; the main oscillator is the only required clock. The binding
currently requires all three clocks, which forces device trees to add
stub fixed-clock nodes without a clock-frequency to satisfy it.

Allow the clocks and clock-names properties to contain just "osc",
optionally followed by either or both of "can_ext" and "wdt_ext".

Fixes: 155d900e4c7d ("dt-bindings: clock: add Anlogic DR1V90 CRU")
Signed-off-by: Junhui Liu <junhui.liu at pigmoral.tech>
---
 .../bindings/clock/anlogic,dr1v90-cru.yaml         | 24 +++++++++++++++-------
 1 file changed, 17 insertions(+), 7 deletions(-)

diff --git a/Documentation/devicetree/bindings/clock/anlogic,dr1v90-cru.yaml b/Documentation/devicetree/bindings/clock/anlogic,dr1v90-cru.yaml
index 11a92588e494..8bd7b78a58d8 100644
--- a/Documentation/devicetree/bindings/clock/anlogic,dr1v90-cru.yaml
+++ b/Documentation/devicetree/bindings/clock/anlogic,dr1v90-cru.yaml
@@ -17,16 +17,26 @@ properties:
     maxItems: 1
 
   clocks:
-    items:
-      - description: Main oscillator
-      - description: External CAN clock
-      - description: External WDT clock
+    minItems: 1
+    maxItems: 3
+    description:
+      The main oscillator is always required. An external CAN clock and an
+      external WDT clock may additionally be provided if the board routes these
+      clocks to the SoC.
 
   clock-names:
-    items:
+    oneOf:
       - const: osc
-      - const: can_ext
-      - const: wdt_ext
+      - items:
+          - const: osc
+          - const: can_ext
+      - items:
+          - const: osc
+          - const: wdt_ext
+      - items:
+          - const: osc
+          - const: can_ext
+          - const: wdt_ext
 
   "#clock-cells":
     const: 1

-- 
2.55.0




More information about the linux-riscv mailing list