Re: [PATCH v2 1/5] dt-bindings: arm: uniphier: Add system controller bindings

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Krzysztof,

On 2022/11/08 20:09, Krzysztof Kozlowski wrote:
On 07/11/2022 11:34, Kunihiko Hayashi wrote:
Add DT binding schema for system controller implemented in UniPhier SoCs.
This describes that the nodes defined here are treated as "syscon".

Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@xxxxxxxxxxxxx>
---
  .../socionext/socionext,uniphier-sysctrl.yaml | 92 +++++++++++++++++++
  1 file changed, 92 insertions(+)
  create mode 100644
Documentation/devicetree/bindings/arm/socionext/socionext,uniphier-sysctrl.yaml

diff --git
a/Documentation/devicetree/bindings/arm/socionext/socionext,uniphier-sysctrl.yaml
b/Documentation/devicetree/bindings/arm/socionext/socionext,uniphier-sysctrl.yaml
new file mode 100644
index 000000000000..be7cf72c232e
--- /dev/null
+++
b/Documentation/devicetree/bindings/arm/socionext/socionext,uniphier-sysctrl.yaml

arm is only for top-level stuff. System controllers go to soc.

Okay. I wondered if I should put it here.
I'll make vendor's directory on "soc" and move it.


@@ -0,0 +1,92 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id:
http://devicetree.org/schemas/arm/socionext/socionext,uniphier-sysctrl.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Socionext UniPhier system controller
+
+maintainers:
+  - Kunihiko Hayashi <hayashi.kunihiko@xxxxxxxxxxxxx>
+
+description: |+
+  This describes the devicetree bindings for system controller
+  implemented on Socionext UniPhier SoCs.

Drop "This describes the devicetree bindings for" and instead describe
the hardware.

Surely I think the system controller's description itself is insufficient.
This description contains multiple controllers, so add descriptions for each.


+
+properties:
+  compatible:
+    oneOf:

You do not have more than one entry, so no need for oneOf.

Got it.

+      - items:
+          - enum:
+              # sysctrl
+              - socionext,uniphier-ld4-sysctrl
+              - socionext,uniphier-pro4-sysctrl
+              - socionext,uniphier-pro5-sysctrl
+              - socionext,uniphier-pxs2-sysctrl
+              - socionext,uniphier-ld6b-sysctrl
+              - socionext,uniphier-sld8-sysctrl
+              - socionext,uniphier-ld11-sysctrl
+              - socionext,uniphier-ld20-sysctrl
+              - socionext,uniphier-pxs3-sysctrl
+              - socionext,uniphier-nx1-sysctrl
+              - socionext,uniphier-sysctrl
+              # soc-glue
+              - socionext,uniphier-ld4-soc-glue
+              - socionext,uniphier-pro4-soc-glue
+              - socionext,uniphier-pro5-soc-glue
+              - socionext,uniphier-pxs2-soc-glue
+              - socionext,uniphier-ld6b-soc-glue
+              - socionext,uniphier-sld8-soc-glue
+              - socionext,uniphier-ld11-soc-glue
+              - socionext,uniphier-ld20-soc-glue
+              - socionext,uniphier-pxs3-soc-glue
+              - socionext,uniphier-nx1-soc-glue
+              - socionext,uniphier-soc-glue
+              # perictrl
+              - socionext,uniphier-ld4-perictrl
+              - socionext,uniphier-pro4-perictrl
+              - socionext,uniphier-pro5-perictrl
+              - socionext,uniphier-pxs2-perictrl
+              - socionext,uniphier-ld6b-perictrl
+              - socionext,uniphier-sld8-perictrl
+              - socionext,uniphier-ld11-perictrl
+              - socionext,uniphier-ld20-perictrl
+              - socionext,uniphier-pxs3-perictrl
+              - socionext,uniphier-nx1-perictrl
+              - socionext,uniphier-perictrl
+              # sdctrl
+              - socionext,uniphier-ld4-sdctrl
+              - socionext,uniphier-pro4-sdctrl
+              - socionext,uniphier-pro5-sdctrl
+              - socionext,uniphier-pxs2-sdctrl
+              - socionext,uniphier-ld6b-sdctrl
+              - socionext,uniphier-sld8-sdctrl
+              - socionext,uniphier-ld11-sdctrl
+              - socionext,uniphier-ld20-sdctrl
+              - socionext,uniphier-pxs3-sdctrl
+              - socionext,uniphier-nx1-sdctrl
+              - socionext,uniphier-sdctrl
+              # mioctrl
+              - socionext,uniphier-ld4-mioctrl
+              - socionext,uniphier-pro4-mioctrl
+              - socionext,uniphier-sld8-mioctrl
+              - socionext,uniphier-ld11-mioctrl
+              - socionext,uniphier-mioctrl
+              # adamv
+              - socionext,uniphier-ld11-adamv
+              - socionext,uniphier-ld20-adamv
+              - socionext,uniphier-adamv
+          - const: simple-mfd
+          - const: syscon
+
+  reg:
+    maxItems: 1
+
+required:
+  - compatible
+  - reg
+
+additionalProperties:
+  type: object

No, instead you should describe the children. This must me
additionalProperties: false

Each controller has different children, so need to define children
for each controller using "if".

You also miss example.

Start from example-schema as your template or guidance.

I see. I'll add example.

Thank you,

---
Best Regards
Kunihiko Hayashi



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux