162306a36Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 262306a36Sopenharmony_ci%YAML 1.2 362306a36Sopenharmony_ci--- 462306a36Sopenharmony_ci$id: http://devicetree.org/schemas/pci/rockchip-dw-pcie.yaml# 562306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml# 662306a36Sopenharmony_ci 762306a36Sopenharmony_cititle: DesignWare based PCIe controller on Rockchip SoCs 862306a36Sopenharmony_ci 962306a36Sopenharmony_cimaintainers: 1062306a36Sopenharmony_ci - Shawn Lin <shawn.lin@rock-chips.com> 1162306a36Sopenharmony_ci - Simon Xue <xxm@rock-chips.com> 1262306a36Sopenharmony_ci - Heiko Stuebner <heiko@sntech.de> 1362306a36Sopenharmony_ci 1462306a36Sopenharmony_cidescription: |+ 1562306a36Sopenharmony_ci RK3568 SoC PCIe host controller is based on the Synopsys DesignWare 1662306a36Sopenharmony_ci PCIe IP and thus inherits all the common properties defined in 1762306a36Sopenharmony_ci snps,dw-pcie.yaml. 1862306a36Sopenharmony_ci 1962306a36Sopenharmony_ciallOf: 2062306a36Sopenharmony_ci - $ref: /schemas/pci/snps,dw-pcie.yaml# 2162306a36Sopenharmony_ci 2262306a36Sopenharmony_ciproperties: 2362306a36Sopenharmony_ci compatible: 2462306a36Sopenharmony_ci oneOf: 2562306a36Sopenharmony_ci - const: rockchip,rk3568-pcie 2662306a36Sopenharmony_ci - items: 2762306a36Sopenharmony_ci - enum: 2862306a36Sopenharmony_ci - rockchip,rk3588-pcie 2962306a36Sopenharmony_ci - const: rockchip,rk3568-pcie 3062306a36Sopenharmony_ci 3162306a36Sopenharmony_ci reg: 3262306a36Sopenharmony_ci items: 3362306a36Sopenharmony_ci - description: Data Bus Interface (DBI) registers 3462306a36Sopenharmony_ci - description: Rockchip designed configuration registers 3562306a36Sopenharmony_ci - description: Config registers 3662306a36Sopenharmony_ci 3762306a36Sopenharmony_ci reg-names: 3862306a36Sopenharmony_ci items: 3962306a36Sopenharmony_ci - const: dbi 4062306a36Sopenharmony_ci - const: apb 4162306a36Sopenharmony_ci - const: config 4262306a36Sopenharmony_ci 4362306a36Sopenharmony_ci clocks: 4462306a36Sopenharmony_ci minItems: 5 4562306a36Sopenharmony_ci items: 4662306a36Sopenharmony_ci - description: AHB clock for PCIe master 4762306a36Sopenharmony_ci - description: AHB clock for PCIe slave 4862306a36Sopenharmony_ci - description: AHB clock for PCIe dbi 4962306a36Sopenharmony_ci - description: APB clock for PCIe 5062306a36Sopenharmony_ci - description: Auxiliary clock for PCIe 5162306a36Sopenharmony_ci - description: PIPE clock 5262306a36Sopenharmony_ci 5362306a36Sopenharmony_ci clock-names: 5462306a36Sopenharmony_ci minItems: 5 5562306a36Sopenharmony_ci items: 5662306a36Sopenharmony_ci - const: aclk_mst 5762306a36Sopenharmony_ci - const: aclk_slv 5862306a36Sopenharmony_ci - const: aclk_dbi 5962306a36Sopenharmony_ci - const: pclk 6062306a36Sopenharmony_ci - const: aux 6162306a36Sopenharmony_ci - const: pipe 6262306a36Sopenharmony_ci 6362306a36Sopenharmony_ci interrupts: 6462306a36Sopenharmony_ci items: 6562306a36Sopenharmony_ci - description: 6662306a36Sopenharmony_ci Combined system interrupt, which is used to signal the following 6762306a36Sopenharmony_ci interrupts - phy_link_up, dll_link_up, link_req_rst_not, hp_pme, 6862306a36Sopenharmony_ci hp, hp_msi, link_auto_bw, link_auto_bw_msi, bw_mgt, bw_mgt_msi, 6962306a36Sopenharmony_ci edma_wr, edma_rd, dpa_sub_upd, rbar_update, link_eq_req, ep_elbi_app 7062306a36Sopenharmony_ci - description: 7162306a36Sopenharmony_ci Combined PM interrupt, which is used to signal the following 7262306a36Sopenharmony_ci interrupts - linkst_in_l1sub, linkst_in_l1, linkst_in_l2, 7362306a36Sopenharmony_ci linkst_in_l0s, linkst_out_l1sub, linkst_out_l1, linkst_out_l2, 7462306a36Sopenharmony_ci linkst_out_l0s, pm_dstate_update 7562306a36Sopenharmony_ci - description: 7662306a36Sopenharmony_ci Combined message interrupt, which is used to signal the following 7762306a36Sopenharmony_ci interrupts - ven_msg, unlock_msg, ltr_msg, cfg_pme, cfg_pme_msi, 7862306a36Sopenharmony_ci pm_pme, pm_to_ack, pm_turnoff, obff_idle, obff_obff, obff_cpu_active 7962306a36Sopenharmony_ci - description: 8062306a36Sopenharmony_ci Combined legacy interrupt, which is used to signal the following 8162306a36Sopenharmony_ci interrupts - inta, intb, intc, intd 8262306a36Sopenharmony_ci - description: 8362306a36Sopenharmony_ci Combined error interrupt, which is used to signal the following 8462306a36Sopenharmony_ci interrupts - aer_rc_err, aer_rc_err_msi, rx_cpl_timeout, 8562306a36Sopenharmony_ci tx_cpl_timeout, cor_err_sent, nf_err_sent, f_err_sent, cor_err_rx, 8662306a36Sopenharmony_ci nf_err_rx, f_err_rx, radm_qoverflow 8762306a36Sopenharmony_ci 8862306a36Sopenharmony_ci interrupt-names: 8962306a36Sopenharmony_ci items: 9062306a36Sopenharmony_ci - const: sys 9162306a36Sopenharmony_ci - const: pmc 9262306a36Sopenharmony_ci - const: msg 9362306a36Sopenharmony_ci - const: legacy 9462306a36Sopenharmony_ci - const: err 9562306a36Sopenharmony_ci 9662306a36Sopenharmony_ci legacy-interrupt-controller: 9762306a36Sopenharmony_ci description: Interrupt controller node for handling legacy PCI interrupts. 9862306a36Sopenharmony_ci type: object 9962306a36Sopenharmony_ci additionalProperties: false 10062306a36Sopenharmony_ci properties: 10162306a36Sopenharmony_ci "#address-cells": 10262306a36Sopenharmony_ci const: 0 10362306a36Sopenharmony_ci 10462306a36Sopenharmony_ci "#interrupt-cells": 10562306a36Sopenharmony_ci const: 1 10662306a36Sopenharmony_ci 10762306a36Sopenharmony_ci interrupt-controller: true 10862306a36Sopenharmony_ci 10962306a36Sopenharmony_ci interrupts: 11062306a36Sopenharmony_ci items: 11162306a36Sopenharmony_ci - description: combined legacy interrupt 11262306a36Sopenharmony_ci required: 11362306a36Sopenharmony_ci - "#address-cells" 11462306a36Sopenharmony_ci - "#interrupt-cells" 11562306a36Sopenharmony_ci - interrupt-controller 11662306a36Sopenharmony_ci - interrupts 11762306a36Sopenharmony_ci 11862306a36Sopenharmony_ci msi-map: true 11962306a36Sopenharmony_ci 12062306a36Sopenharmony_ci num-lanes: true 12162306a36Sopenharmony_ci 12262306a36Sopenharmony_ci phys: 12362306a36Sopenharmony_ci maxItems: 1 12462306a36Sopenharmony_ci 12562306a36Sopenharmony_ci phy-names: 12662306a36Sopenharmony_ci const: pcie-phy 12762306a36Sopenharmony_ci 12862306a36Sopenharmony_ci power-domains: 12962306a36Sopenharmony_ci maxItems: 1 13062306a36Sopenharmony_ci 13162306a36Sopenharmony_ci ranges: 13262306a36Sopenharmony_ci minItems: 2 13362306a36Sopenharmony_ci maxItems: 3 13462306a36Sopenharmony_ci 13562306a36Sopenharmony_ci resets: 13662306a36Sopenharmony_ci minItems: 1 13762306a36Sopenharmony_ci maxItems: 2 13862306a36Sopenharmony_ci 13962306a36Sopenharmony_ci reset-names: 14062306a36Sopenharmony_ci oneOf: 14162306a36Sopenharmony_ci - const: pipe 14262306a36Sopenharmony_ci - items: 14362306a36Sopenharmony_ci - const: pwr 14462306a36Sopenharmony_ci - const: pipe 14562306a36Sopenharmony_ci 14662306a36Sopenharmony_ci vpcie3v3-supply: true 14762306a36Sopenharmony_ci 14862306a36Sopenharmony_cirequired: 14962306a36Sopenharmony_ci - compatible 15062306a36Sopenharmony_ci - reg 15162306a36Sopenharmony_ci - reg-names 15262306a36Sopenharmony_ci - clocks 15362306a36Sopenharmony_ci - clock-names 15462306a36Sopenharmony_ci - msi-map 15562306a36Sopenharmony_ci - num-lanes 15662306a36Sopenharmony_ci - phys 15762306a36Sopenharmony_ci - phy-names 15862306a36Sopenharmony_ci - power-domains 15962306a36Sopenharmony_ci - resets 16062306a36Sopenharmony_ci - reset-names 16162306a36Sopenharmony_ci 16262306a36Sopenharmony_ciunevaluatedProperties: false 16362306a36Sopenharmony_ci 16462306a36Sopenharmony_ciexamples: 16562306a36Sopenharmony_ci - | 16662306a36Sopenharmony_ci #include <dt-bindings/interrupt-controller/arm-gic.h> 16762306a36Sopenharmony_ci 16862306a36Sopenharmony_ci bus { 16962306a36Sopenharmony_ci #address-cells = <2>; 17062306a36Sopenharmony_ci #size-cells = <2>; 17162306a36Sopenharmony_ci 17262306a36Sopenharmony_ci pcie3x2: pcie@fe280000 { 17362306a36Sopenharmony_ci compatible = "rockchip,rk3568-pcie"; 17462306a36Sopenharmony_ci reg = <0x3 0xc0800000 0x0 0x390000>, 17562306a36Sopenharmony_ci <0x0 0xfe280000 0x0 0x10000>, 17662306a36Sopenharmony_ci <0x3 0x80000000 0x0 0x100000>; 17762306a36Sopenharmony_ci reg-names = "dbi", "apb", "config"; 17862306a36Sopenharmony_ci bus-range = <0x20 0x2f>; 17962306a36Sopenharmony_ci clocks = <&cru 143>, <&cru 144>, 18062306a36Sopenharmony_ci <&cru 145>, <&cru 146>, 18162306a36Sopenharmony_ci <&cru 147>; 18262306a36Sopenharmony_ci clock-names = "aclk_mst", "aclk_slv", 18362306a36Sopenharmony_ci "aclk_dbi", "pclk", 18462306a36Sopenharmony_ci "aux"; 18562306a36Sopenharmony_ci device_type = "pci"; 18662306a36Sopenharmony_ci interrupts = <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>, 18762306a36Sopenharmony_ci <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>, 18862306a36Sopenharmony_ci <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>, 18962306a36Sopenharmony_ci <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>, 19062306a36Sopenharmony_ci <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>; 19162306a36Sopenharmony_ci interrupt-names = "sys", "pmc", "msg", "legacy", "err"; 19262306a36Sopenharmony_ci linux,pci-domain = <2>; 19362306a36Sopenharmony_ci max-link-speed = <2>; 19462306a36Sopenharmony_ci msi-map = <0x2000 &its 0x2000 0x1000>; 19562306a36Sopenharmony_ci num-lanes = <2>; 19662306a36Sopenharmony_ci phys = <&pcie30phy>; 19762306a36Sopenharmony_ci phy-names = "pcie-phy"; 19862306a36Sopenharmony_ci power-domains = <&power 15>; 19962306a36Sopenharmony_ci ranges = <0x81000000 0x0 0x80800000 0x3 0x80800000 0x0 0x100000>, 20062306a36Sopenharmony_ci <0x83000000 0x0 0x80900000 0x3 0x80900000 0x0 0x3f700000>; 20162306a36Sopenharmony_ci resets = <&cru 193>; 20262306a36Sopenharmony_ci reset-names = "pipe"; 20362306a36Sopenharmony_ci #address-cells = <3>; 20462306a36Sopenharmony_ci #size-cells = <2>; 20562306a36Sopenharmony_ci 20662306a36Sopenharmony_ci legacy-interrupt-controller { 20762306a36Sopenharmony_ci interrupt-controller; 20862306a36Sopenharmony_ci #address-cells = <0>; 20962306a36Sopenharmony_ci #interrupt-cells = <1>; 21062306a36Sopenharmony_ci interrupt-parent = <&gic>; 21162306a36Sopenharmony_ci interrupts = <GIC_SPI 72 IRQ_TYPE_EDGE_RISING>; 21262306a36Sopenharmony_ci }; 21362306a36Sopenharmony_ci }; 21462306a36Sopenharmony_ci }; 21562306a36Sopenharmony_ci... 216