Re: [PATCH 16/28] dt-bindings: dpll: Add support for Microchip Azurite chip family

From: Ivan Vecera
Date: Wed Apr 09 2025 - 03:19:52 EST




On 07. 04. 25 8:04 odp., Krzysztof Kozlowski wrote:
On 07/04/2025 19:31, Ivan Vecera wrote:
This adds DT bindings schema for Microchip Azurite DPLL chip family.

Please do not use "This commit/patch/change", but imperative mood. See
longer explanation here:
https://elixir.bootlin.com/linux/v5.17.1/source/Documentation/process/submitting-patches.rst#L95

These bindings are used by zl3073x driver and specifies this device
that can be connected either to I2C or SPI bus.

Bindings are for hardware, not driver. Explain the hardware.

OK


The schema inherits existing dpll-device and dpll-pin schemas.


Do not explain what schema does - we see it. Explain the hardware which
we do not see here, because we (or to be precise: I) know nothing about.

OK

Reviewed-by: Michal Schmidt <mschmidt@xxxxxxxxxx>
Signed-off-by: Ivan Vecera <ivecera@xxxxxxxxxx>
---
.../bindings/dpll/microchip,zl3073x.yaml | 74 +++++++++++++++++++
MAINTAINERS | 1 +
2 files changed, 75 insertions(+)
create mode 100644 Documentation/devicetree/bindings/dpll/microchip,zl3073x.yaml

diff --git a/Documentation/devicetree/bindings/dpll/microchip,zl3073x.yaml b/Documentation/devicetree/bindings/dpll/microchip,zl3073x.yaml
new file mode 100644
index 0000000000000..38a6cc00bc026
--- /dev/null
+++ b/Documentation/devicetree/bindings/dpll/microchip,zl3073x.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.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Microchip Azurite DPLL device
+
+maintainers:
+ - Ivan Vecera <ivecera@xxxxxxxxxx>
+
+properties:
+ compatible:
+ enum:
+ - microchip,zl3073x-i2c
+ - microchip,zl3073x-spi

1. No, you do not get two compatibles. Only one.

Will split to two files, one for i2c and one for spi.

2. What is 'x'? Wildcard? If so, drop and use specific compatibles.

Microchip refers to the ZL3073x as a family of compatible DPLL chips with the same features. There is no need to introduce separate compatible string for each of them.

+
+ 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";

+ #address-cells = <0>;
+ #size-cells = <0>;

Again, why do you need them if you are not using these two?

The dpll-device.yaml defines them as required. Shouldn't they be specified explicitly?

+ reg = <0x70>;
+ status = "okay";

Drop

OK

Also, follow DTS coding style and order properties properly.

+
+ num-dplls = <2>;
+ dpll-types = "pps", "eec";
+

Ack
Best regards,
Krzysztof