drm/bridge: Fix assignment of the of_node of the parent to aux bridge
[drm/drm-misc.git] / Documentation / devicetree / bindings / pci / rockchip,rk3399-pcie.yaml
blob720a5f945a4e6b35a18b26f00b926399c437a1a9
1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/pci/rockchip,rk3399-pcie.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Rockchip AXI PCIe Root Port Bridge Host
9 maintainers:
10   - Shawn Lin <shawn.lin@rock-chips.com>
12 allOf:
13   - $ref: /schemas/pci/pci-host-bridge.yaml#
14   - $ref: rockchip,rk3399-pcie-common.yaml#
16 properties:
17   compatible:
18     const: rockchip,rk3399-pcie
20   reg: true
22   reg-names:
23     items:
24       - const: axi-base
25       - const: apb-base
27   interrupts:
28     maxItems: 3
30   interrupt-names:
31     items:
32       - const: sys
33       - const: legacy
34       - const: client
36   aspm-no-l0s:
37     description: This property is needed if using 24MHz OSC for RC's PHY.
39   ep-gpios:
40     maxItems: 1
41     description: pre-reset GPIO
43   vpcie12v-supply:
44     description: The 12v regulator to use for PCIe.
46   vpcie3v3-supply:
47     description: The 3.3v regulator to use for PCIe.
49   vpcie1v8-supply:
50     description: The 1.8v regulator to use for PCIe.
52   vpcie0v9-supply:
53     description: The 0.9v regulator to use for PCIe.
55   interrupt-controller:
56     type: object
57     additionalProperties: false
59     properties:
60       '#address-cells':
61         const: 0
63       '#interrupt-cells':
64         const: 1
66       interrupt-controller: true
68 required:
69   - ranges
70   - "#interrupt-cells"
71   - interrupts
72   - interrupt-controller
73   - interrupt-map
74   - interrupt-map-mask
75   - msi-map
77 unevaluatedProperties: false
79 examples:
80   - |
81     #include <dt-bindings/interrupt-controller/arm-gic.h>
82     #include <dt-bindings/gpio/gpio.h>
83     #include <dt-bindings/clock/rk3399-cru.h>
85     bus {
86         #address-cells = <2>;
87         #size-cells = <2>;
89         pcie@f8000000 {
90             compatible = "rockchip,rk3399-pcie";
91             device_type = "pci";
92             #address-cells = <3>;
93             #size-cells = <2>;
94             clocks = <&cru ACLK_PCIE>, <&cru ACLK_PERF_PCIE>,
95               <&cru PCLK_PCIE>, <&cru SCLK_PCIE_PM>;
96             clock-names = "aclk", "aclk-perf",
97                     "hclk", "pm";
98             interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH 0>,
99                   <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH 0>,
100                   <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH 0>;
101             interrupt-names = "sys", "legacy", "client";
102             ep-gpios = <&gpio3 13 GPIO_ACTIVE_HIGH>;
103             ranges = <0x83000000 0x0 0xfa000000 0x0 0xfa000000 0x0 0x600000
104                 0x81000000 0x0 0xfa600000 0x0 0xfa600000 0x0 0x100000>;
105             num-lanes = <4>;
106             msi-map = <0x0 &its 0x0 0x1000>;
107             reg = <0x0 0xf8000000 0x0 0x2000000>, <0x0 0xfd000000 0x0 0x1000000>;
108             reg-names = "axi-base", "apb-base";
109             resets = <&cru SRST_PCIE_CORE>, <&cru SRST_PCIE_MGMT>,
110               <&cru SRST_PCIE_MGMT_STICKY>, <&cru SRST_PCIE_PIPE> ,
111               <&cru SRST_PCIE_PM>, <&cru SRST_P_PCIE>, <&cru SRST_A_PCIE>;
112             reset-names = "core", "mgmt", "mgmt-sticky", "pipe",
113                     "pm", "pclk", "aclk";
114             /* deprecated legacy PHY model */
115             phys = <&pcie_phy>;
116             phy-names = "pcie-phy";
117             pinctrl-names = "default";
118             pinctrl-0 = <&pcie_clkreq>;
119             #interrupt-cells = <1>;
120             interrupt-map-mask = <0 0 0 7>;
121             interrupt-map = <0 0 0 1 &pcie0_intc 0>,
122                 <0 0 0 2 &pcie0_intc 1>,
123                 <0 0 0 3 &pcie0_intc 2>,
124                 <0 0 0 4 &pcie0_intc 3>;
126             pcie0_intc: interrupt-controller {
127                 interrupt-controller;
128                 #address-cells = <0>;
129                 #interrupt-cells = <1>;
130             };
131         };
132     };