18cc087a1SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 28cc087a1SEmmanuel Vadot%YAML 1.2 38cc087a1SEmmanuel Vadot--- 48cc087a1SEmmanuel Vadot$id: http://devicetree.org/schemas/pci/rockchip-dw-pcie.yaml# 58cc087a1SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 68cc087a1SEmmanuel Vadot 7*0e8011faSEmmanuel Vadottitle: DesignWare based PCIe Root Complex controller on Rockchip SoCs 88cc087a1SEmmanuel Vadot 98cc087a1SEmmanuel Vadotmaintainers: 108cc087a1SEmmanuel Vadot - Shawn Lin <shawn.lin@rock-chips.com> 118cc087a1SEmmanuel Vadot - Simon Xue <xxm@rock-chips.com> 128cc087a1SEmmanuel Vadot - Heiko Stuebner <heiko@sntech.de> 138cc087a1SEmmanuel Vadot 148cc087a1SEmmanuel Vadotdescription: |+ 15*0e8011faSEmmanuel Vadot RK3568 SoC PCIe Root Complex controller is based on the Synopsys DesignWare 168cc087a1SEmmanuel Vadot PCIe IP and thus inherits all the common properties defined in 178bab661aSEmmanuel Vadot snps,dw-pcie.yaml. 188cc087a1SEmmanuel Vadot 198cc087a1SEmmanuel VadotallOf: 208bab661aSEmmanuel Vadot - $ref: /schemas/pci/snps,dw-pcie.yaml# 21*0e8011faSEmmanuel Vadot - $ref: /schemas/pci/rockchip-dw-pcie-common.yaml# 228cc087a1SEmmanuel Vadot 238cc087a1SEmmanuel Vadotproperties: 248cc087a1SEmmanuel Vadot compatible: 25fac71e4eSEmmanuel Vadot oneOf: 26fac71e4eSEmmanuel Vadot - const: rockchip,rk3568-pcie 27fac71e4eSEmmanuel Vadot - items: 28fac71e4eSEmmanuel Vadot - enum: 29fac71e4eSEmmanuel Vadot - rockchip,rk3588-pcie 308cc087a1SEmmanuel Vadot - const: rockchip,rk3568-pcie 318cc087a1SEmmanuel Vadot 328cc087a1SEmmanuel Vadot reg: 338cc087a1SEmmanuel Vadot items: 348cc087a1SEmmanuel Vadot - description: Data Bus Interface (DBI) registers 358cc087a1SEmmanuel Vadot - description: Rockchip designed configuration registers 368cc087a1SEmmanuel Vadot - description: Config registers 378cc087a1SEmmanuel Vadot 388cc087a1SEmmanuel Vadot reg-names: 398cc087a1SEmmanuel Vadot items: 408cc087a1SEmmanuel Vadot - const: dbi 418cc087a1SEmmanuel Vadot - const: apb 428cc087a1SEmmanuel Vadot - const: config 438cc087a1SEmmanuel Vadot 44aa1a8ff2SEmmanuel Vadot legacy-interrupt-controller: 45aa1a8ff2SEmmanuel Vadot description: Interrupt controller node for handling legacy PCI interrupts. 46aa1a8ff2SEmmanuel Vadot type: object 47aa1a8ff2SEmmanuel Vadot additionalProperties: false 48aa1a8ff2SEmmanuel Vadot properties: 49aa1a8ff2SEmmanuel Vadot "#address-cells": 50aa1a8ff2SEmmanuel Vadot const: 0 51aa1a8ff2SEmmanuel Vadot 52aa1a8ff2SEmmanuel Vadot "#interrupt-cells": 53aa1a8ff2SEmmanuel Vadot const: 1 54aa1a8ff2SEmmanuel Vadot 55aa1a8ff2SEmmanuel Vadot interrupt-controller: true 56aa1a8ff2SEmmanuel Vadot 57aa1a8ff2SEmmanuel Vadot interrupts: 58aa1a8ff2SEmmanuel Vadot items: 59aa1a8ff2SEmmanuel Vadot - description: combined legacy interrupt 60aa1a8ff2SEmmanuel Vadot required: 61aa1a8ff2SEmmanuel Vadot - "#address-cells" 62aa1a8ff2SEmmanuel Vadot - "#interrupt-cells" 63aa1a8ff2SEmmanuel Vadot - interrupt-controller 64aa1a8ff2SEmmanuel Vadot - interrupts 65aa1a8ff2SEmmanuel Vadot 668cc087a1SEmmanuel Vadot msi-map: true 678cc087a1SEmmanuel Vadot 688cc087a1SEmmanuel Vadot ranges: 69f126890aSEmmanuel Vadot minItems: 2 70f126890aSEmmanuel Vadot maxItems: 3 718cc087a1SEmmanuel Vadot 728cc087a1SEmmanuel Vadot vpcie3v3-supply: true 738cc087a1SEmmanuel Vadot 748cc087a1SEmmanuel Vadotrequired: 758cc087a1SEmmanuel Vadot - msi-map 768cc087a1SEmmanuel Vadot 778cc087a1SEmmanuel VadotunevaluatedProperties: false 788cc087a1SEmmanuel Vadot 798cc087a1SEmmanuel Vadotexamples: 808cc087a1SEmmanuel Vadot - | 81aa1a8ff2SEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 828cc087a1SEmmanuel Vadot 838cc087a1SEmmanuel Vadot bus { 848cc087a1SEmmanuel Vadot #address-cells = <2>; 858cc087a1SEmmanuel Vadot #size-cells = <2>; 868cc087a1SEmmanuel Vadot 878cc087a1SEmmanuel Vadot pcie3x2: pcie@fe280000 { 88d5b0e70fSEmmanuel Vadot compatible = "rockchip,rk3568-pcie"; 898cc087a1SEmmanuel Vadot reg = <0x3 0xc0800000 0x0 0x390000>, 908cc087a1SEmmanuel Vadot <0x0 0xfe280000 0x0 0x10000>, 918cc087a1SEmmanuel Vadot <0x3 0x80000000 0x0 0x100000>; 928cc087a1SEmmanuel Vadot reg-names = "dbi", "apb", "config"; 938cc087a1SEmmanuel Vadot bus-range = <0x20 0x2f>; 948cc087a1SEmmanuel Vadot clocks = <&cru 143>, <&cru 144>, 958cc087a1SEmmanuel Vadot <&cru 145>, <&cru 146>, 968cc087a1SEmmanuel Vadot <&cru 147>; 978cc087a1SEmmanuel Vadot clock-names = "aclk_mst", "aclk_slv", 988cc087a1SEmmanuel Vadot "aclk_dbi", "pclk", 998cc087a1SEmmanuel Vadot "aux"; 1008cc087a1SEmmanuel Vadot device_type = "pci"; 101aa1a8ff2SEmmanuel Vadot interrupts = <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>, 102aa1a8ff2SEmmanuel Vadot <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>, 103aa1a8ff2SEmmanuel Vadot <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>, 104aa1a8ff2SEmmanuel Vadot <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>, 105aa1a8ff2SEmmanuel Vadot <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>; 106aa1a8ff2SEmmanuel Vadot interrupt-names = "sys", "pmc", "msg", "legacy", "err"; 1078cc087a1SEmmanuel Vadot linux,pci-domain = <2>; 1088cc087a1SEmmanuel Vadot max-link-speed = <2>; 1098cc087a1SEmmanuel Vadot msi-map = <0x2000 &its 0x2000 0x1000>; 1108cc087a1SEmmanuel Vadot num-lanes = <2>; 1118cc087a1SEmmanuel Vadot phys = <&pcie30phy>; 1128cc087a1SEmmanuel Vadot phy-names = "pcie-phy"; 1138cc087a1SEmmanuel Vadot power-domains = <&power 15>; 1148cc087a1SEmmanuel Vadot ranges = <0x81000000 0x0 0x80800000 0x3 0x80800000 0x0 0x100000>, 1158cc087a1SEmmanuel Vadot <0x83000000 0x0 0x80900000 0x3 0x80900000 0x0 0x3f700000>; 1168cc087a1SEmmanuel Vadot resets = <&cru 193>; 1178cc087a1SEmmanuel Vadot reset-names = "pipe"; 1188cc087a1SEmmanuel Vadot #address-cells = <3>; 1198cc087a1SEmmanuel Vadot #size-cells = <2>; 120aa1a8ff2SEmmanuel Vadot 121aa1a8ff2SEmmanuel Vadot legacy-interrupt-controller { 122aa1a8ff2SEmmanuel Vadot interrupt-controller; 123aa1a8ff2SEmmanuel Vadot #address-cells = <0>; 124aa1a8ff2SEmmanuel Vadot #interrupt-cells = <1>; 125aa1a8ff2SEmmanuel Vadot interrupt-parent = <&gic>; 126aa1a8ff2SEmmanuel Vadot interrupts = <GIC_SPI 72 IRQ_TYPE_EDGE_RISING>; 127aa1a8ff2SEmmanuel Vadot }; 1288cc087a1SEmmanuel Vadot }; 1298cc087a1SEmmanuel Vadot }; 1308cc087a1SEmmanuel Vadot... 131