Skip to content

Commit 27b1aac

Browse files
committed
Merge branch 'pci/dt-bindings'
- Add qcom DT binding for 'global' interrupt (PCIe controller and link-specific events) for ipq8074, ipq8074-gen3, ipq6018, sa8775p, sc7280, sc8180x sdm845, sm8150, sm8250, sm8350 (Manivannan Sadhasivam) - Add qcom DT binding for 8 MSI SPI interrupts for msm8998, ipq8074, ipq8074-gen3, ipq6018 (Manivannan Sadhasivam) - Add dw rockchip DT binding for rk3576 and rk3562 (Kever Yang) - Correct indentation and style of examples in brcm,stb-pcie, cdns,cdns-pcie-ep, intel,keembay-pcie-ep, intel,keembay-pcie, microchip,pcie-host, rcar-pci-ep, rcar-pci-host, xilinx-versal-cpm (Krzysztof Kozlowski) - Fix include placement in sifive,fu740-pcie example (Krzysztof Kozlowski) - Convert Marvell EBU (dove, kirkwood, armada-370, armada-xp) and armada8k from text to schema DT bindings (Rob Herring) - Remove obsolete .txt DT bindings for content that has been moved to schemas (Rob Herring) - Add qcom DT binding for MHI registers in IPQ5332, IPQ6018, IPQ8074 and IPQ9574 (Varadarajan Narayanan) - Convert v3,v360epc-pci from text to DT schema binding (Rob Herring) - Change microchip,pcie-host DT binding to be 'dma-noncoherent' since PolarFire may be configured that way (Conor Dooley) * pci/dt-bindings: dt-bindings: PCI: microchip,pcie-host: Fix DMA coherency property dt-bindings: PCI: Convert v3,v360epc-pci to DT schema dt-bindings: PCI: qcom: Add MHI registers for IPQ9574 dt-bindings: PCI: Remove obsolete .txt docs dt-bindings: PCI: Convert marvell,armada8k-pcie to schema dt-bindings: PCI: Convert Marvell EBU to schema dt-bindings: PCI: sifive,fu740-pcie: Fix include placement in DTS example dt-bindings: PCI: Correct indentation and style in DTS example dt-bindings: PCI: dwc: rockchip: Add rk3562 support dt-bindings: PCI: dw: rockchip: Add rk3576 support dt-bindings: PCI: qcom,pcie-sc8180x: Add 'global' interrupt dt-bindings: PCI: qcom: Allow IPQ6018 to use 8 MSI and one 'global' interrupt dt-bindings: PCI: qcom: Allow IPQ8074 to use 8 MSI and one 'global' interrupt dt-bindings: PCI: qcom: Allow MSM8998 to use 8 MSI and one 'global' interrupt dt-bindings: PCI: qcom: Add 'global' interrupt for SDM845 SoC dt-bindings: PCI: qcom,pcie-sc7280: Add 'global' interrupt dt-bindings: PCI: qcom,pcie-sa8775p: Add 'global' interrupt dt-bindings: PCI: qcom,pcie-sm8350: Add 'global' interrupt dt-bindings: PCI: qcom,pcie-sm8250: Add 'global' interrupt dt-bindings: PCI: qcom,pcie-sm8150: Add 'global' interrupt
2 parents db847ad + db82660 commit 27b1aac

31 files changed

+804
-1157
lines changed

Documentation/devicetree/bindings/pci/brcm,stb-pcie.yaml

Lines changed: 43 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -186,49 +186,48 @@ examples:
186186
#include <dt-bindings/interrupt-controller/arm-gic.h>
187187
188188
scb {
189-
#address-cells = <2>;
190-
#size-cells = <1>;
191-
pcie0: pcie@7d500000 {
192-
compatible = "brcm,bcm2711-pcie";
193-
reg = <0x0 0x7d500000 0x9310>;
194-
device_type = "pci";
195-
#address-cells = <3>;
196-
#size-cells = <2>;
197-
#interrupt-cells = <1>;
198-
interrupts = <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>,
199-
<GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>;
200-
interrupt-names = "pcie", "msi";
201-
interrupt-map-mask = <0x0 0x0 0x0 0x7>;
202-
interrupt-map = <0 0 0 1 &gicv2 GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH
203-
0 0 0 2 &gicv2 GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH
204-
0 0 0 3 &gicv2 GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH
205-
0 0 0 4 &gicv2 GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>;
206-
207-
msi-parent = <&pcie0>;
208-
msi-controller;
209-
ranges = <0x02000000 0x0 0xf8000000 0x6 0x00000000 0x0 0x04000000>;
210-
dma-ranges = <0x42000000 0x1 0x00000000 0x0 0x40000000 0x0 0x80000000>,
211-
<0x42000000 0x1 0x80000000 0x3 0x00000000 0x0 0x80000000>;
212-
brcm,enable-ssc;
213-
brcm,scb-sizes = <0x0000000080000000 0x0000000080000000>;
214-
215-
/* PCIe bridge, Root Port */
216-
pci@0,0 {
217-
#address-cells = <3>;
218-
#size-cells = <2>;
219-
reg = <0x0 0x0 0x0 0x0 0x0>;
220-
compatible = "pciclass,0604";
221-
device_type = "pci";
222-
vpcie3v3-supply = <&vreg7>;
223-
ranges;
224-
225-
/* PCIe endpoint */
226-
pci-ep@0,0 {
227-
assigned-addresses =
228-
<0x82010000 0x0 0xf8000000 0x6 0x00000000 0x0 0x2000>;
229-
reg = <0x0 0x0 0x0 0x0 0x0>;
230-
compatible = "pci14e4,1688";
231-
};
232-
};
189+
#address-cells = <2>;
190+
#size-cells = <1>;
191+
pcie0: pcie@7d500000 {
192+
compatible = "brcm,bcm2711-pcie";
193+
reg = <0x0 0x7d500000 0x9310>;
194+
device_type = "pci";
195+
#address-cells = <3>;
196+
#size-cells = <2>;
197+
#interrupt-cells = <1>;
198+
interrupts = <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>,
199+
<GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>;
200+
interrupt-names = "pcie", "msi";
201+
interrupt-map-mask = <0x0 0x0 0x0 0x7>;
202+
interrupt-map = <0 0 0 1 &gicv2 GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH
203+
0 0 0 2 &gicv2 GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH
204+
0 0 0 3 &gicv2 GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH
205+
0 0 0 4 &gicv2 GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>;
206+
207+
msi-parent = <&pcie0>;
208+
msi-controller;
209+
ranges = <0x02000000 0x0 0xf8000000 0x6 0x00000000 0x0 0x04000000>;
210+
dma-ranges = <0x42000000 0x1 0x00000000 0x0 0x40000000 0x0 0x80000000>,
211+
<0x42000000 0x1 0x80000000 0x3 0x00000000 0x0 0x80000000>;
212+
brcm,enable-ssc;
213+
brcm,scb-sizes = <0x0000000080000000 0x0000000080000000>;
214+
215+
/* PCIe bridge, Root Port */
216+
pci@0,0 {
217+
#address-cells = <3>;
218+
#size-cells = <2>;
219+
reg = <0x0 0x0 0x0 0x0 0x0>;
220+
compatible = "pciclass,0604";
221+
device_type = "pci";
222+
vpcie3v3-supply = <&vreg7>;
223+
ranges;
224+
225+
/* PCIe endpoint */
226+
pci-ep@0,0 {
227+
assigned-addresses = <0x82010000 0x0 0xf8000000 0x6 0x00000000 0x0 0x2000>;
228+
reg = <0x0 0x0 0x0 0x0 0x0>;
229+
compatible = "pci14e4,1688";
230+
};
233231
};
232+
};
234233
};

Documentation/devicetree/bindings/pci/cdns,cdns-pcie-ep.yaml

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -37,14 +37,14 @@ examples:
3737
#size-cells = <2>;
3838
3939
pcie-ep@fc000000 {
40-
compatible = "cdns,cdns-pcie-ep";
41-
reg = <0x0 0xfc000000 0x0 0x01000000>,
42-
<0x0 0x80000000 0x0 0x40000000>;
43-
reg-names = "reg", "mem";
44-
cdns,max-outbound-regions = <16>;
45-
max-functions = /bits/ 8 <8>;
46-
phys = <&pcie_phy0>;
47-
phy-names = "pcie-phy";
40+
compatible = "cdns,cdns-pcie-ep";
41+
reg = <0x0 0xfc000000 0x0 0x01000000>,
42+
<0x0 0x80000000 0x0 0x40000000>;
43+
reg-names = "reg", "mem";
44+
cdns,max-outbound-regions = <16>;
45+
max-functions = /bits/ 8 <8>;
46+
phys = <&pcie_phy0>;
47+
phy-names = "pcie-phy";
4848
};
4949
};
5050
...

Documentation/devicetree/bindings/pci/intel,keembay-pcie-ep.yaml

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -53,17 +53,17 @@ examples:
5353
#include <dt-bindings/interrupt-controller/arm-gic.h>
5454
#include <dt-bindings/interrupt-controller/irq.h>
5555
pcie-ep@37000000 {
56-
compatible = "intel,keembay-pcie-ep";
57-
reg = <0x37000000 0x00001000>,
58-
<0x37100000 0x00001000>,
59-
<0x37300000 0x00001000>,
60-
<0x36000000 0x01000000>,
61-
<0x37800000 0x00000200>;
62-
reg-names = "dbi", "dbi2", "atu", "addr_space", "apb";
63-
interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>,
64-
<GIC_SPI 108 IRQ_TYPE_EDGE_RISING>,
65-
<GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>,
66-
<GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
67-
interrupt-names = "pcie", "pcie_ev", "pcie_err", "pcie_mem_access";
68-
num-lanes = <2>;
56+
compatible = "intel,keembay-pcie-ep";
57+
reg = <0x37000000 0x00001000>,
58+
<0x37100000 0x00001000>,
59+
<0x37300000 0x00001000>,
60+
<0x36000000 0x01000000>,
61+
<0x37800000 0x00000200>;
62+
reg-names = "dbi", "dbi2", "atu", "addr_space", "apb";
63+
interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>,
64+
<GIC_SPI 108 IRQ_TYPE_EDGE_RISING>,
65+
<GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>,
66+
<GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
67+
interrupt-names = "pcie", "pcie_ev", "pcie_err", "pcie_mem_access";
68+
num-lanes = <2>;
6969
};

Documentation/devicetree/bindings/pci/intel,keembay-pcie.yaml

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -75,23 +75,23 @@ examples:
7575
#define KEEM_BAY_A53_PCIE
7676
#define KEEM_BAY_A53_AUX_PCIE
7777
pcie@37000000 {
78-
compatible = "intel,keembay-pcie";
79-
reg = <0x37000000 0x00001000>,
80-
<0x37300000 0x00001000>,
81-
<0x36e00000 0x00200000>,
82-
<0x37800000 0x00000200>;
83-
reg-names = "dbi", "atu", "config", "apb";
84-
#address-cells = <3>;
85-
#size-cells = <2>;
86-
device_type = "pci";
87-
ranges = <0x02000000 0 0x36000000 0x36000000 0 0x00e00000>;
88-
interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>,
89-
<GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>,
90-
<GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>;
91-
interrupt-names = "pcie", "pcie_ev", "pcie_err";
92-
clocks = <&scmi_clk KEEM_BAY_A53_PCIE>,
93-
<&scmi_clk KEEM_BAY_A53_AUX_PCIE>;
94-
clock-names = "master", "aux";
95-
reset-gpios = <&pca2 9 GPIO_ACTIVE_LOW>;
96-
num-lanes = <2>;
78+
compatible = "intel,keembay-pcie";
79+
reg = <0x37000000 0x00001000>,
80+
<0x37300000 0x00001000>,
81+
<0x36e00000 0x00200000>,
82+
<0x37800000 0x00000200>;
83+
reg-names = "dbi", "atu", "config", "apb";
84+
#address-cells = <3>;
85+
#size-cells = <2>;
86+
device_type = "pci";
87+
ranges = <0x02000000 0 0x36000000 0x36000000 0 0x00e00000>;
88+
interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>,
89+
<GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>,
90+
<GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>;
91+
interrupt-names = "pcie", "pcie_ev", "pcie_err";
92+
clocks = <&scmi_clk KEEM_BAY_A53_PCIE>,
93+
<&scmi_clk KEEM_BAY_A53_AUX_PCIE>;
94+
clock-names = "master", "aux";
95+
reset-gpios = <&pca2 9 GPIO_ACTIVE_LOW>;
96+
num-lanes = <2>;
9797
};
Lines changed: 100 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,100 @@
1+
# SPDX-License-Identifier: GPL-2.0
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/pci/marvell,armada8k-pcie.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Marvell Armada 7K/8K PCIe interface
8+
9+
maintainers:
10+
- Thomas Petazzoni <[email protected]>
11+
12+
description:
13+
This PCIe host controller is based on the Synopsys DesignWare PCIe IP.
14+
15+
select:
16+
properties:
17+
compatible:
18+
contains:
19+
enum:
20+
- marvell,armada8k-pcie
21+
required:
22+
- compatible
23+
24+
allOf:
25+
- $ref: snps,dw-pcie.yaml#
26+
27+
properties:
28+
compatible:
29+
items:
30+
- enum:
31+
- marvell,armada8k-pcie
32+
- const: snps,dw-pcie
33+
34+
reg:
35+
maxItems: 2
36+
37+
reg-names:
38+
items:
39+
- const: ctrl
40+
- const: config
41+
42+
clocks:
43+
minItems: 1
44+
maxItems: 2
45+
46+
clock-names:
47+
items:
48+
- const: core
49+
- const: reg
50+
51+
interrupts:
52+
maxItems: 1
53+
54+
msi-parent:
55+
maxItems: 1
56+
57+
phys:
58+
minItems: 1
59+
maxItems: 4
60+
61+
phy-names:
62+
minItems: 1
63+
maxItems: 4
64+
65+
marvell,reset-gpio:
66+
maxItems: 1
67+
deprecated: true
68+
69+
required:
70+
- interrupt-map
71+
- clocks
72+
- msi-parent
73+
74+
unevaluatedProperties: false
75+
76+
examples:
77+
- |
78+
#include <dt-bindings/interrupt-controller/arm-gic.h>
79+
#include <dt-bindings/interrupt-controller/irq.h>
80+
81+
pcie@f2600000 {
82+
compatible = "marvell,armada8k-pcie", "snps,dw-pcie";
83+
reg = <0xf2600000 0x10000>, <0xf6f00000 0x80000>;
84+
reg-names = "ctrl", "config";
85+
#address-cells = <3>;
86+
#size-cells = <2>;
87+
#interrupt-cells = <1>;
88+
device_type = "pci";
89+
dma-coherent;
90+
msi-parent = <&gic_v2m0>;
91+
92+
ranges = <0x81000000 0 0xf9000000 0xf9000000 0 0x10000>, /* downstream I/O */
93+
<0x82000000 0 0xf6000000 0xf6000000 0 0xf00000>; /* non-prefetchable memory */
94+
interrupt-map-mask = <0 0 0 0>;
95+
interrupt-map = <0 0 0 0 &gic 0 GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
96+
interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
97+
num-lanes = <1>;
98+
clocks = <&cpm_syscon0 1 13>;
99+
};
100+
...

0 commit comments

Comments
 (0)