1*0611adffSKunihiko Hayashi# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*0611adffSKunihiko Hayashi%YAML 1.2
3*0611adffSKunihiko Hayashi---
4*0611adffSKunihiko Hayashi$id: http://devicetree.org/schemas/soc/socionext/socionext,uniphier-soc-glue.yaml#
5*0611adffSKunihiko Hayashi$schema: http://devicetree.org/meta-schemas/core.yaml#
6*0611adffSKunihiko Hayashi
7*0611adffSKunihiko Hayashititle: Socionext UniPhier SoC-glue logic
8*0611adffSKunihiko Hayashi
9*0611adffSKunihiko Hayashimaintainers:
10*0611adffSKunihiko Hayashi  - Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
11*0611adffSKunihiko Hayashi
12*0611adffSKunihiko Hayashidescription: |+
13*0611adffSKunihiko Hayashi  SoC-glue logic implemented on Socionext UniPhier SoCs is a collection of
14*0611adffSKunihiko Hayashi  miscellaneous function registers handling signals outside system components.
15*0611adffSKunihiko Hayashi
16*0611adffSKunihiko Hayashiproperties:
17*0611adffSKunihiko Hayashi  compatible:
18*0611adffSKunihiko Hayashi    items:
19*0611adffSKunihiko Hayashi      - enum:
20*0611adffSKunihiko Hayashi          - socionext,uniphier-ld4-soc-glue
21*0611adffSKunihiko Hayashi          - socionext,uniphier-pro4-soc-glue
22*0611adffSKunihiko Hayashi          - socionext,uniphier-pro5-soc-glue
23*0611adffSKunihiko Hayashi          - socionext,uniphier-pxs2-soc-glue
24*0611adffSKunihiko Hayashi          - socionext,uniphier-sld8-soc-glue
25*0611adffSKunihiko Hayashi          - socionext,uniphier-ld11-soc-glue
26*0611adffSKunihiko Hayashi          - socionext,uniphier-ld20-soc-glue
27*0611adffSKunihiko Hayashi          - socionext,uniphier-pxs3-soc-glue
28*0611adffSKunihiko Hayashi          - socionext,uniphier-nx1-soc-glue
29*0611adffSKunihiko Hayashi      - const: simple-mfd
30*0611adffSKunihiko Hayashi      - const: syscon
31*0611adffSKunihiko Hayashi
32*0611adffSKunihiko Hayashi  reg:
33*0611adffSKunihiko Hayashi    maxItems: 1
34*0611adffSKunihiko Hayashi
35*0611adffSKunihiko Hayashi  pinctrl:
36*0611adffSKunihiko Hayashi    $ref: /schemas/pinctrl/socionext,uniphier-pinctrl.yaml#
37*0611adffSKunihiko Hayashi
38*0611adffSKunihiko Hayashi  usb-hub:
39*0611adffSKunihiko Hayashi    $ref: /schemas/phy/socionext,uniphier-usb2-phy.yaml#
40*0611adffSKunihiko Hayashi
41*0611adffSKunihiko Hayashi  clock-controller:
42*0611adffSKunihiko Hayashi    $ref: /schemas/clock/socionext,uniphier-clock.yaml#
43*0611adffSKunihiko Hayashi
44*0611adffSKunihiko HayashiallOf:
45*0611adffSKunihiko Hayashi  - if:
46*0611adffSKunihiko Hayashi      not:
47*0611adffSKunihiko Hayashi        properties:
48*0611adffSKunihiko Hayashi          compatible:
49*0611adffSKunihiko Hayashi            contains:
50*0611adffSKunihiko Hayashi              enum:
51*0611adffSKunihiko Hayashi                - socionext,uniphier-pro4-soc-glue
52*0611adffSKunihiko Hayashi                - socionext,uniphier-ld11-soc-glue
53*0611adffSKunihiko Hayashi    then:
54*0611adffSKunihiko Hayashi      properties:
55*0611adffSKunihiko Hayashi        usb-hub: false
56*0611adffSKunihiko Hayashi
57*0611adffSKunihiko Hayashi  - if:
58*0611adffSKunihiko Hayashi      not:
59*0611adffSKunihiko Hayashi        properties:
60*0611adffSKunihiko Hayashi          compatible:
61*0611adffSKunihiko Hayashi            contains:
62*0611adffSKunihiko Hayashi              const: socionext,uniphier-pro4-soc-glue
63*0611adffSKunihiko Hayashi    then:
64*0611adffSKunihiko Hayashi      properties:
65*0611adffSKunihiko Hayashi        clock-controller: false
66*0611adffSKunihiko Hayashi
67*0611adffSKunihiko Hayashirequired:
68*0611adffSKunihiko Hayashi  - compatible
69*0611adffSKunihiko Hayashi  - reg
70*0611adffSKunihiko Hayashi
71*0611adffSKunihiko HayashiadditionalProperties: false
72*0611adffSKunihiko Hayashi
73*0611adffSKunihiko Hayashiexamples:
74*0611adffSKunihiko Hayashi  - |
75*0611adffSKunihiko Hayashi    syscon@5f800000 {
76*0611adffSKunihiko Hayashi        compatible = "socionext,uniphier-pro4-soc-glue",
77*0611adffSKunihiko Hayashi                     "simple-mfd", "syscon";
78*0611adffSKunihiko Hayashi        reg = <0x5f800000 0x2000>;
79*0611adffSKunihiko Hayashi
80*0611adffSKunihiko Hayashi        pinctrl {
81*0611adffSKunihiko Hayashi            compatible = "socionext,uniphier-pro4-pinctrl";
82*0611adffSKunihiko Hayashi        };
83*0611adffSKunihiko Hayashi
84*0611adffSKunihiko Hayashi        usb-hub {
85*0611adffSKunihiko Hayashi            compatible = "socionext,uniphier-pro4-usb2-phy";
86*0611adffSKunihiko Hayashi            #address-cells = <1>;
87*0611adffSKunihiko Hayashi            #size-cells = <0>;
88*0611adffSKunihiko Hayashi
89*0611adffSKunihiko Hayashi            phy@0 {
90*0611adffSKunihiko Hayashi                reg = <0>;
91*0611adffSKunihiko Hayashi                #phy-cells = <0>;
92*0611adffSKunihiko Hayashi            };
93*0611adffSKunihiko Hayashi
94*0611adffSKunihiko Hayashi            phy@1 {
95*0611adffSKunihiko Hayashi                reg = <1>;
96*0611adffSKunihiko Hayashi                #phy-cells = <0>;
97*0611adffSKunihiko Hayashi            };
98*0611adffSKunihiko Hayashi
99*0611adffSKunihiko Hayashi            phy@2 {
100*0611adffSKunihiko Hayashi                reg = <2>;
101*0611adffSKunihiko Hayashi                #phy-cells = <0>;
102*0611adffSKunihiko Hayashi            };
103*0611adffSKunihiko Hayashi
104*0611adffSKunihiko Hayashi            phy@3 {
105*0611adffSKunihiko Hayashi                reg = <3>;
106*0611adffSKunihiko Hayashi                #phy-cells = <0>;
107*0611adffSKunihiko Hayashi            };
108*0611adffSKunihiko Hayashi        };
109*0611adffSKunihiko Hayashi
110*0611adffSKunihiko Hayashi        clock-controller {
111*0611adffSKunihiko Hayashi            compatible = "socionext,uniphier-pro4-sg-clock";
112*0611adffSKunihiko Hayashi            #clock-cells = <1>;
113*0611adffSKunihiko Hayashi        };
114*0611adffSKunihiko Hayashi    };
115