Re: [PATCH v2 02/14] dt-bindings: dpll: Add support for Microchip Azurite chip family

From: Ivan Vecera
Date: Thu Apr 10 2025 - 03:46:16 EST




On 10. 04. 25 9:06 dop., Krzysztof Kozlowski wrote:
On Wed, Apr 09, 2025 at 04:42:38PM GMT, Ivan Vecera wrote:
Add DT bindings for Microchip Azurite DPLL chip family. These chips
provides 2 independent DPLL channels, up to 10 differential or
single-ended inputs and up to 20 differential or 20 single-ended outputs.
It can be connected via I2C or SPI busses.

Signed-off-by: Ivan Vecera <ivecera@xxxxxxxxxx>
---
.../bindings/dpll/microchip,zl3073x-i2c.yaml | 74 ++++++++++++++++++
.../bindings/dpll/microchip,zl3073x-spi.yaml | 77 +++++++++++++++++++

No, you do not get two files. No such bindings were accepted since some
years.

2 files changed, 151 insertions(+)
create mode 100644 Documentation/devicetree/bindings/dpll/microchip,zl3073x-i2c.yaml
create mode 100644 Documentation/devicetree/bindings/dpll/microchip,zl3073x-spi.yaml

diff --git a/Documentation/devicetree/bindings/dpll/microchip,zl3073x-i2c.yaml b/Documentation/devicetree/bindings/dpll/microchip,zl3073x-i2c.yaml
new file mode 100644
index 0000000000000..d9280988f9eb7
--- /dev/null
+++ b/Documentation/devicetree/bindings/dpll/microchip,zl3073x-i2c.yaml
@@ -0,0 +1,74 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/dpll/microchip,zl3073x-i2c.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: I2C-attached Microchip Azurite DPLL device
+
+maintainers:
+ - Ivan Vecera <ivecera@xxxxxxxxxx>
+
+description:
+ Microchip Azurite DPLL (ZL3073x) is a family of DPLL devices that
+ provides 2 independent DPLL channels, up to 10 differential or
+ single-ended inputs and up to 20 differential or 20 single-ended outputs.
+ It can be connected via multiple busses, one of them being I2C.
+
+properties:
+ compatible:
+ enum:
+ - microchip,zl3073x-i2c

I already said: you have one compatible, not two. One.

Ah, you mean something like:
iio/accel/adi,adxl313.yaml

Do you?

Also, still wildcard, so still a no.

This is not wildcard, Microchip uses this to designate DPLL devices with the same characteristics.

But I can use microchip,azurite, is it more appropriate?

+
+ reg:
+ maxItems: 1
+
+required:
+ - compatible
+ - reg
+
+allOf:
+ - $ref: /schemas/dpll/dpll-device.yaml#
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ i2c {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ dpll@70 {
+ compatible = "microchip,zl3073x-i2c";
+ reg = <0x70>;
+ #address-cells = <0>;
+ #size-cells = <0>;

Again, not used. Drop.

Sorry, will do.

+ dpll-types = "pps", "eec";
+
+ input-pins {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ pin@0 { /* REF0P */
+ reg = <0>;
+ label = "Input 0";
+ supported-frequencies = /bits/ 64 <1 1000>;
+ type = "ext";
+ };
+ };
+
+ output-pins {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ pin@3 { /* OUT1N */
+ reg = <3>;
+ esync-control;
+ label = "Output 1";
+ supported-frequencies = /bits/ 64 <1 10000>;
+ type = "gnss";
+ };
+ };
+ };
+ };
+...
diff --git a/Documentation/devicetree/bindings/dpll/microchip,zl3073x-spi.yaml b/Documentation/devicetree/bindings/dpll/microchip,zl3073x-spi.yaml
new file mode 100644
index 0000000000000..7bd6e5099e1ce
--- /dev/null
+++ b/Documentation/devicetree/bindings/dpll/microchip,zl3073x-spi.yaml

No, you do not get two files. Neither two compatibles, nor two files.
Please look at existing bindings how they do it for such devices.

Thanks Krzysztof for comments.

Ivan