blob: f0d8e486a07da7bcedc2f431e236a5a6c8217146 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/pci/socionext,uniphier-pcie-ep.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Socionext UniPhier PCIe endpoint controller
8
9description: |
10 UniPhier PCIe endpoint controller is based on the Synopsys DesignWare
11 PCI core. It shares common features with the PCIe DesignWare core and
12 inherits common properties defined in
13 Documentation/devicetree/bindings/pci/snps,dw-pcie-ep.yaml.
14
15maintainers:
16 - Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
17
18properties:
19 compatible:
20 enum:
21 - socionext,uniphier-pro5-pcie-ep
22 - socionext,uniphier-nx1-pcie-ep
23
24 reg:
25 minItems: 4
26 maxItems: 5
27
28 reg-names:
29 minItems: 4
30 items:
31 - const: dbi
32 - const: dbi2
33 - const: link
34 - const: addr_space
35 - const: atu
36
37 clocks:
38 minItems: 1
39 maxItems: 2
40
41 clock-names: true
42
43 resets:
44 minItems: 1
45 maxItems: 2
46
47 reset-names: true
48
49 num-ib-windows:
50 const: 16
51
52 num-ob-windows:
53 const: 16
54
55 num-lanes: true
56
57 phys:
58 maxItems: 1
59
60 phy-names:
61 const: pcie-phy
62
63allOf:
64 - $ref: /schemas/pci/snps,dw-pcie-ep.yaml#
65 - if:
66 properties:
67 compatible:
68 contains:
69 const: socionext,uniphier-pro5-pcie-ep
70 then:
71 properties:
72 reg:
73 maxItems: 4
74 reg-names:
75 maxItems: 4
76 clocks:
77 minItems: 2
78 clock-names:
79 items:
80 - const: gio
81 - const: link
82 resets:
83 minItems: 2
84 reset-names:
85 items:
86 - const: gio
87 - const: link
88 else:
89 properties:
90 reg:
91 minItems: 5
92 reg-names:
93 minItems: 5
94 clocks:
95 maxItems: 1
96 clock-names:
97 const: link
98 resets:
99 maxItems: 1
100 reset-names:
101 const: link
102
103required:
104 - compatible
105 - reg
106 - reg-names
107 - clocks
108 - clock-names
109 - resets
110 - reset-names
111
112unevaluatedProperties: false
113
114examples:
115 - |
116 pcie_ep: pcie-ep@66000000 {
117 compatible = "socionext,uniphier-pro5-pcie-ep";
118 reg-names = "dbi", "dbi2", "link", "addr_space";
119 reg = <0x66000000 0x1000>, <0x66001000 0x1000>,
120 <0x66010000 0x10000>, <0x67000000 0x400000>;
121 clock-names = "gio", "link";
122 clocks = <&sys_clk 12>, <&sys_clk 24>;
123 reset-names = "gio", "link";
124 resets = <&sys_rst 12>, <&sys_rst 24>;
125 num-ib-windows = <16>;
126 num-ob-windows = <16>;
127 num-lanes = <4>;
128 phy-names = "pcie-phy";
129 phys = <&pcie_phy>;
130 };