# 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.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: Socionext UniPhier SoC-glue logic maintainers: - Kunihiko Hayashi <hayashi.kunihiko@socionext.com> description: |+ SoC-glue logic implemented on Socionext UniPhier SoCs is a collection of miscellaneous function registers handling signals outside system components. properties: compatible: items: - enum: - socionext,uniphier-ld4-soc-glue - socionext,uniphier-pro4-soc-glue - socionext,uniphier-pro5-soc-glue - socionext,uniphier-pxs2-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 - const: simple-mfd - const: syscon reg: maxItems: 1 pinctrl: $ref: /schemas/pinctrl/socionext,uniphier-pinctrl.yaml# usb-hub: $ref: /schemas/phy/socionext,uniphier-usb2-phy.yaml# clock-controller: $ref: /schemas/clock/socionext,uniphier-clock.yaml# allOf: - if: not: properties: compatible: contains: enum: - socionext,uniphier-pro4-soc-glue - socionext,uniphier-ld11-soc-glue then: properties: usb-hub: false - if: not: properties: compatible: contains: const: socionext,uniphier-pro4-soc-glue then: properties: clock-controller: false required: - compatible - reg additionalProperties: false examples: - | syscon@5f800000 { compatible = "socionext,uniphier-pro4-soc-glue", "simple-mfd", "syscon"; reg = <0x5f800000 0x2000>; pinctrl { compatible = "socionext,uniphier-pro4-pinctrl"; }; usb-hub { compatible = "socionext,uniphier-pro4-usb2-phy"; #address-cells = <1>; #size-cells = <0>; phy@0 { reg = <0>; #phy-cells = <0>; }; phy@1 { reg = <1>; #phy-cells = <0>; }; phy@2 { reg = <2>; #phy-cells = <0>; }; phy@3 { reg = <3>; #phy-cells = <0>; }; }; clock-controller { compatible = "socionext,uniphier-pro4-sg-clock"; #clock-cells = <1>; }; };