[PATCH v2 1/2] dt-bindings: serial: 8250: support an optional second clock

From: Alex Elder
Date: Wed Apr 09 2025 - 15:22:49 EST


The SpacemiT UART driver requires a bus clock to be enabled in addition
to the primary function clock. Add the option to specify two clocks
for an 8250-compatible UART, named "core" and "bus". If both are needed,
require them to be named.

Signed-off-by: Alex Elder <elder@xxxxxxxxxxxx>
---
v2: Require both clocks to be specified with names for SpacemiT

.../devicetree/bindings/serial/8250.yaml | 30 ++++++++++++++++++-
1 file changed, 29 insertions(+), 1 deletion(-)

diff --git a/Documentation/devicetree/bindings/serial/8250.yaml b/Documentation/devicetree/bindings/serial/8250.yaml
index dc0d52920575f..33d2016b65090 100644
--- a/Documentation/devicetree/bindings/serial/8250.yaml
+++ b/Documentation/devicetree/bindings/serial/8250.yaml
@@ -135,7 +135,16 @@ properties:
clock-frequency: true

clocks:
- maxItems: 1
+ minItems: 1
+ items:
+ - description: The core function clock
+ - description: An optional bus clock
+
+ clock-names:
+ minItems: 1
+ items:
+ - const: core
+ - const: bus

resets:
maxItems: 1
@@ -224,6 +233,25 @@ required:
- reg
- interrupts

+if:
+ properties:
+ compatible:
+ contains:
+ const: spacemit,k1-uart
+then:
+ required: [clock-names]
+ properties:
+ clocks:
+ minItems: 2
+ clock-names:
+ minItems: 2
+else:
+ properties:
+ clocks:
+ maxItems: 1
+ clock-names:
+ maxItems: 1
+
unevaluatedProperties: false

examples:
--
2.45.2