[v2,10/16] dt-bindings: soc: socionext: Add UniPhier SoC-glue logic debug part

Message ID 20221207055405.30940-11-hayashi.kunihiko@socionext.com
State New
Headers
Series dt-bindings: soc: Introduce UniPhier miscellaneous register blocks and fix examples |

Commit Message

Kunihiko Hayashi Dec. 7, 2022, 5:53 a.m. UTC
  Add devicetree binding schema for the SoC-glue logic debug part
implemented on Socionext Uniphier SoCs.

This SoC-glue logic debug part is a set of miscellaneous function
registers handling signals for specific devices outside system
components, and also has multiple functions such as efuse, debug unit,
several monitors for specific SoC, and so on.

Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
---
 .../socionext,uniphier-soc-glue-debug.yaml    | 73 +++++++++++++++++++
 1 file changed, 73 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/soc/socionext/socionext,uniphier-soc-glue-debug.yaml
  

Comments

Rob Herring Dec. 7, 2022, 2:19 p.m. UTC | #1
On Wed, 07 Dec 2022 14:53:59 +0900, Kunihiko Hayashi wrote:
> Add devicetree binding schema for the SoC-glue logic debug part
> implemented on Socionext Uniphier SoCs.
> 
> This SoC-glue logic debug part is a set of miscellaneous function
> registers handling signals for specific devices outside system
> components, and also has multiple functions such as efuse, debug unit,
> several monitors for specific SoC, and so on.
> 
> Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
> ---
>  .../socionext,uniphier-soc-glue-debug.yaml    | 73 +++++++++++++++++++
>  1 file changed, 73 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/soc/socionext/socionext,uniphier-soc-glue-debug.yaml
> 

Running 'make dtbs_check' with the schema in this patch gives the
following warnings. Consider if they are expected or the schema is
incorrect. These may not be new warnings.

Note that it is not yet a requirement to have 0 warnings for dtbs_check.
This will change in the future.

Full log is available here: https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20221207055405.30940-11-hayashi.kunihiko@socionext.com


soc-glue@5f900000: compatible: ['socionext,uniphier-ld11-soc-glue-debug', 'simple-mfd'] is too short
	arch/arm64/boot/dts/socionext/uniphier-ld11-global.dtb
	arch/arm64/boot/dts/socionext/uniphier-ld11-ref.dtb

soc-glue@5f900000: compatible: ['socionext,uniphier-ld20-soc-glue-debug', 'simple-mfd'] is too short
	arch/arm64/boot/dts/socionext/uniphier-ld20-akebi96.dtb
	arch/arm64/boot/dts/socionext/uniphier-ld20-global.dtb
	arch/arm64/boot/dts/socionext/uniphier-ld20-ref.dtb

soc-glue@5f900000: compatible: ['socionext,uniphier-ld4-soc-glue-debug', 'simple-mfd'] is too short
	arch/arm/boot/dts/uniphier-ld4-ref.dtb

soc-glue@5f900000: compatible: ['socionext,uniphier-pro4-soc-glue-debug', 'simple-mfd'] is too short
	arch/arm/boot/dts/uniphier-pro4-ace.dtb
	arch/arm/boot/dts/uniphier-pro4-ref.dtb
	arch/arm/boot/dts/uniphier-pro4-sanji.dtb

soc-glue@5f900000: compatible: ['socionext,uniphier-pxs2-soc-glue-debug', 'simple-mfd'] is too short
	arch/arm/boot/dts/uniphier-ld6b-ref.dtb
	arch/arm/boot/dts/uniphier-pxs2-gentil.dtb
	arch/arm/boot/dts/uniphier-pxs2-vodka.dtb

soc-glue@5f900000: compatible: ['socionext,uniphier-pxs3-soc-glue-debug', 'simple-mfd'] is too short
	arch/arm64/boot/dts/socionext/uniphier-pxs3-ref.dtb
	arch/arm64/boot/dts/socionext/uniphier-pxs3-ref-gadget0.dtb
	arch/arm64/boot/dts/socionext/uniphier-pxs3-ref-gadget1.dtb

soc-glue@5f900000: compatible: ['socionext,uniphier-sld8-soc-glue-debug', 'simple-mfd'] is too short
	arch/arm/boot/dts/uniphier-sld8-ref.dtb

soc-glue@5f900000: 'reg' is a required property
	arch/arm64/boot/dts/socionext/uniphier-ld11-global.dtb
	arch/arm64/boot/dts/socionext/uniphier-ld11-ref.dtb
	arch/arm64/boot/dts/socionext/uniphier-ld20-akebi96.dtb
	arch/arm64/boot/dts/socionext/uniphier-ld20-global.dtb
	arch/arm64/boot/dts/socionext/uniphier-ld20-ref.dtb
	arch/arm64/boot/dts/socionext/uniphier-pxs3-ref.dtb
	arch/arm64/boot/dts/socionext/uniphier-pxs3-ref-gadget0.dtb
	arch/arm64/boot/dts/socionext/uniphier-pxs3-ref-gadget1.dtb
	arch/arm/boot/dts/uniphier-ld4-ref.dtb
	arch/arm/boot/dts/uniphier-ld6b-ref.dtb
	arch/arm/boot/dts/uniphier-pro4-ace.dtb
	arch/arm/boot/dts/uniphier-pro4-ref.dtb
	arch/arm/boot/dts/uniphier-pro4-sanji.dtb
	arch/arm/boot/dts/uniphier-pxs2-gentil.dtb
	arch/arm/boot/dts/uniphier-pxs2-vodka.dtb
	arch/arm/boot/dts/uniphier-sld8-ref.dtb
  
Krzysztof Kozlowski Dec. 8, 2022, 8:18 a.m. UTC | #2
On 07/12/2022 06:53, Kunihiko Hayashi wrote:
> Add devicetree binding schema for the SoC-glue logic debug part
> implemented on Socionext Uniphier SoCs.
> 
> This SoC-glue logic debug part is a set of miscellaneous function
> registers handling signals for specific devices outside system
> components, and also has multiple functions such as efuse, debug unit,
> several monitors for specific SoC, and so on.
> 
> Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
> ---
>  .../socionext,uniphier-soc-glue-debug.yaml    | 73 +++++++++++++++++++
>  1 file changed, 73 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/soc/socionext/socionext,uniphier-soc-glue-debug.yaml
> 
> diff --git a/Documentation/devicetree/bindings/soc/socionext/socionext,uniphier-soc-glue-debug.yaml b/Documentation/devicetree/bindings/soc/socionext/socionext,uniphier-soc-glue-debug.yaml
> new file mode 100644
> index 000000000000..db13c56b77b6
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/soc/socionext/socionext,uniphier-soc-glue-debug.yaml
> @@ -0,0 +1,73 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/soc/socionext/socionext,uniphier-soc-glue-debug.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Socionext UniPhier SoC-glue logic debug part
> +
> +maintainers:
> +  - Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
> +
> +description: |+
> +  SoC-glue logic debug part implemented on Socionext UniPhier SoCs is
> +  a collection of miscellaneous function registers handling signals outside
> +  system components for debug and monitor use.
> +
> +properties:
> +  compatible:
> +    items:
> +      - enum:
> +          - socionext,uniphier-ld4-soc-glue-debug
> +          - socionext,uniphier-pro4-soc-glue-debug
> +          - socionext,uniphier-pro5-soc-glue-debug
> +          - socionext,uniphier-pxs2-soc-glue-debug
> +          - socionext,uniphier-sld8-soc-glue-debug
> +          - socionext,uniphier-ld11-soc-glue-debug
> +          - socionext,uniphier-ld20-soc-glue-debug
> +          - socionext,uniphier-pxs3-soc-glue-debug
> +          - socionext,uniphier-nx1-soc-glue-debug
> +      - const: simple-mfd
> +      - const: syscon
> +
> +  reg:
> +    maxItems: 1
> +
> +  '#address-cells':
> +    const: 1
> +
> +  '#size-cells':
> +    const: 1
> +
> +  ranges: true
> +
> +patternProperties:
> +  "^efuse(@[0-9a-f]+)?$":

Unit addresses are not optional.

Best regards,
Krzysztof
  
Kunihiko Hayashi Dec. 8, 2022, 3:11 p.m. UTC | #3
On 2022/12/08 17:18, Krzysztof Kozlowski wrote:
> On 07/12/2022 06:53, Kunihiko Hayashi wrote:
>> Add devicetree binding schema for the SoC-glue logic debug part
>> implemented on Socionext Uniphier SoCs.
>>
>> This SoC-glue logic debug part is a set of miscellaneous function
>> registers handling signals for specific devices outside system
>> components, and also has multiple functions such as efuse, debug unit,
>> several monitors for specific SoC, and so on.
>>
>> Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
>> ---
>>   .../socionext,uniphier-soc-glue-debug.yaml    | 73 +++++++++++++++++++
>>   1 file changed, 73 insertions(+)
>>   create mode 100644
>> Documentation/devicetree/bindings/soc/socionext/socionext,uniphier-soc-glue-debug.yaml
>>
>> diff --git
>> a/Documentation/devicetree/bindings/soc/socionext/socionext,uniphier-soc-glue-debug.yaml
>> b/Documentation/devicetree/bindings/soc/socionext/socionext,uniphier-soc-glue-debug.yaml
>> new file mode 100644
>> index 000000000000..db13c56b77b6
>> --- /dev/null
>> +++
>> b/Documentation/devicetree/bindings/soc/socionext/socionext,uniphier-soc-glue-debug.yaml
>> @@ -0,0 +1,73 @@
>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
>> +%YAML 1.2
>> +---
>> +$id:
>> http://devicetree.org/schemas/soc/socionext/socionext,uniphier-soc-glue-debug.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: Socionext UniPhier SoC-glue logic debug part
>> +
>> +maintainers:
>> +  - Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
>> +
>> +description: |+
>> +  SoC-glue logic debug part implemented on Socionext UniPhier SoCs is
>> +  a collection of miscellaneous function registers handling signals
>> outside
>> +  system components for debug and monitor use.
>> +
>> +properties:
>> +  compatible:
>> +    items:
>> +      - enum:
>> +          - socionext,uniphier-ld4-soc-glue-debug
>> +          - socionext,uniphier-pro4-soc-glue-debug
>> +          - socionext,uniphier-pro5-soc-glue-debug
>> +          - socionext,uniphier-pxs2-soc-glue-debug
>> +          - socionext,uniphier-sld8-soc-glue-debug
>> +          - socionext,uniphier-ld11-soc-glue-debug
>> +          - socionext,uniphier-ld20-soc-glue-debug
>> +          - socionext,uniphier-pxs3-soc-glue-debug
>> +          - socionext,uniphier-nx1-soc-glue-debug
>> +      - const: simple-mfd
>> +      - const: syscon
>> +
>> +  reg:
>> +    maxItems: 1
>> +
>> +  '#address-cells':
>> +    const: 1
>> +
>> +  '#size-cells':
>> +    const: 1
>> +
>> +  ranges: true
>> +
>> +patternProperties:
>> +  "^efuse(@[0-9a-f]+)?$":
> 
> Unit addresses are not optional.

In this case, the unit addresses are mandatory, so I'll fix it.

Thank you,

---
Best Regards
Kunihiko Hayashi
  

Patch

diff --git a/Documentation/devicetree/bindings/soc/socionext/socionext,uniphier-soc-glue-debug.yaml b/Documentation/devicetree/bindings/soc/socionext/socionext,uniphier-soc-glue-debug.yaml
new file mode 100644
index 000000000000..db13c56b77b6
--- /dev/null
+++ b/Documentation/devicetree/bindings/soc/socionext/socionext,uniphier-soc-glue-debug.yaml
@@ -0,0 +1,73 @@ 
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/soc/socionext/socionext,uniphier-soc-glue-debug.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Socionext UniPhier SoC-glue logic debug part
+
+maintainers:
+  - Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
+
+description: |+
+  SoC-glue logic debug part implemented on Socionext UniPhier SoCs is
+  a collection of miscellaneous function registers handling signals outside
+  system components for debug and monitor use.
+
+properties:
+  compatible:
+    items:
+      - enum:
+          - socionext,uniphier-ld4-soc-glue-debug
+          - socionext,uniphier-pro4-soc-glue-debug
+          - socionext,uniphier-pro5-soc-glue-debug
+          - socionext,uniphier-pxs2-soc-glue-debug
+          - socionext,uniphier-sld8-soc-glue-debug
+          - socionext,uniphier-ld11-soc-glue-debug
+          - socionext,uniphier-ld20-soc-glue-debug
+          - socionext,uniphier-pxs3-soc-glue-debug
+          - socionext,uniphier-nx1-soc-glue-debug
+      - const: simple-mfd
+      - const: syscon
+
+  reg:
+    maxItems: 1
+
+  '#address-cells':
+    const: 1
+
+  '#size-cells':
+    const: 1
+
+  ranges: true
+
+patternProperties:
+  "^efuse(@[0-9a-f]+)?$":
+    $ref: /schemas/nvmem/socionext,uniphier-efuse.yaml#
+
+required:
+  - compatible
+  - reg
+
+additionalProperties: false
+
+examples:
+  - |
+    syscon@5f900000 {
+        compatible = "socionext,uniphier-pxs2-soc-glue-debug",
+                     "simple-mfd", "syscon";
+        reg = <0x5f900000 0x2000>;
+        #address-cells = <1>;
+        #size-cells = <1>;
+        ranges = <0 0x5f900000 0x2000>;
+
+        efuse@100 {
+            compatible = "socionext,uniphier-efuse";
+            reg = <0x100 0x28>;
+        };
+
+        efuse@200 {
+            compatible = "socionext,uniphier-efuse";
+            reg = <0x200 0x58>;
+        };
+    };