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 HayashipatternProperties:
36*0611adffSKunihiko Hayashi  pinctrl:
37*0611adffSKunihiko Hayashi    $ref: /schemas/pinctrl/socionext,uniphier-pinctrl.yaml#
38*0611adffSKunihiko Hayashi
39*0611adffSKunihiko Hayashi  usb-hub:
40*0611adffSKunihiko Hayashi    $ref: /schemas/phy/socionext,uniphier-usb2-phy.yaml#
41*0611adffSKunihiko Hayashi
42*0611adffSKunihiko Hayashi  clock-controller:
43*0611adffSKunihiko Hayashi    $ref: /schemas/clock/socionext,uniphier-clock.yaml#
44*0611adffSKunihiko Hayashi
45*0611adffSKunihiko HayashiallOf:
46*0611adffSKunihiko Hayashi  - if:
47*0611adffSKunihiko Hayashi      not:
48*0611adffSKunihiko Hayashi        properties:
49*0611adffSKunihiko Hayashi          compatible:
50*0611adffSKunihiko Hayashi            contains:
51*0611adffSKunihiko Hayashi              enum:
52*0611adffSKunihiko Hayashi                - socionext,uniphier-pro4-soc-glue
53*0611adffSKunihiko Hayashi                - socionext,uniphier-ld11-soc-glue
54*0611adffSKunihiko Hayashi    then:
55*0611adffSKunihiko Hayashi      properties:
56*0611adffSKunihiko Hayashi        usb-hub: false
57*0611adffSKunihiko Hayashi
58*0611adffSKunihiko Hayashi  - if:
59*0611adffSKunihiko Hayashi      not:
60*0611adffSKunihiko Hayashi        properties:
61*0611adffSKunihiko Hayashi          compatible:
62*0611adffSKunihiko Hayashi            contains:
63*0611adffSKunihiko Hayashi              const: socionext,uniphier-pro4-soc-glue
64*0611adffSKunihiko Hayashi    then:
65*0611adffSKunihiko Hayashi      properties:
66*0611adffSKunihiko Hayashi        clock-controller: false
67*0611adffSKunihiko Hayashi
68*0611adffSKunihiko Hayashirequired:
69*0611adffSKunihiko Hayashi  - compatible
70*0611adffSKunihiko Hayashi  - reg
71*0611adffSKunihiko Hayashi
72*0611adffSKunihiko HayashiadditionalProperties: false
73*0611adffSKunihiko Hayashi
74*0611adffSKunihiko Hayashiexamples:
75*0611adffSKunihiko Hayashi  - |
76*0611adffSKunihiko Hayashi    syscon@5f800000 {
77*0611adffSKunihiko Hayashi        compatible = "socionext,uniphier-pro4-soc-glue",
78*0611adffSKunihiko Hayashi                     "simple-mfd", "syscon";
79*0611adffSKunihiko Hayashi        reg = <0x5f800000 0x2000>;
80*0611adffSKunihiko Hayashi
81*0611adffSKunihiko Hayashi        pinctrl {
82*0611adffSKunihiko Hayashi            compatible = "socionext,uniphier-pro4-pinctrl";
83*0611adffSKunihiko Hayashi        };
84*0611adffSKunihiko Hayashi
85*0611adffSKunihiko Hayashi        usb-hub {
86*0611adffSKunihiko Hayashi            compatible = "socionext,uniphier-pro4-usb2-phy";
87*0611adffSKunihiko Hayashi            #address-cells = <1>;
88*0611adffSKunihiko Hayashi            #size-cells = <0>;
89*0611adffSKunihiko Hayashi
90*0611adffSKunihiko Hayashi            phy@0 {
91*0611adffSKunihiko Hayashi                reg = <0>;
92*0611adffSKunihiko Hayashi                #phy-cells = <0>;
93*0611adffSKunihiko Hayashi            };
94*0611adffSKunihiko Hayashi
95*0611adffSKunihiko Hayashi            phy@1 {
96*0611adffSKunihiko Hayashi                reg = <1>;
97*0611adffSKunihiko Hayashi                #phy-cells = <0>;
98*0611adffSKunihiko Hayashi            };
99*0611adffSKunihiko Hayashi
100*0611adffSKunihiko Hayashi            phy@2 {
101*0611adffSKunihiko Hayashi                reg = <2>;
102*0611adffSKunihiko Hayashi                #phy-cells = <0>;
103*0611adffSKunihiko Hayashi            };
104*0611adffSKunihiko Hayashi
105*0611adffSKunihiko Hayashi            phy@3 {
106*0611adffSKunihiko Hayashi                reg = <3>;
107*0611adffSKunihiko Hayashi                #phy-cells = <0>;
108*0611adffSKunihiko Hayashi            };
109*0611adffSKunihiko Hayashi        };
110*0611adffSKunihiko Hayashi
111*0611adffSKunihiko Hayashi        clock-controller {
112*0611adffSKunihiko Hayashi            compatible = "socionext,uniphier-pro4-sg-clock";
113*0611adffSKunihiko Hayashi            #clock-cells = <1>;
114*0611adffSKunihiko Hayashi        };
115*0611adffSKunihiko Hayashi    };
116