Skip to content

Commit 20165a8

Browse files
Mrinmay SarkarMani-Sadhasivam
authored andcommitted
dt-bindings: PCI: qcom,sa8255p-pcie-ep: Document firmware managed PCIe endpoint
Document the required configuration to enable the PCIe Endpoint controller on SA8255p which is managed by firmware using power-domain based handling. Signed-off-by: Mrinmay Sarkar <mrinmay.sarkar@oss.qualcomm.com> [mani: added MAINTAINERS entry] Signed-off-by: Manivannan Sadhasivam <mani@kernel.org> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com> Link: https://patch.msgid.link/20260106-firmware_managed_ep-v5-1-1933432127ec@oss.qualcomm.com
1 parent 8f0b4cc commit 20165a8

2 files changed

Lines changed: 111 additions & 0 deletions

File tree

Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/pci/qcom,sa8255p-pcie-ep.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Qualcomm firmware managed PCIe Endpoint Controller
8+
9+
description:
10+
Qualcomm SA8255p SoC PCIe endpoint controller is based on the Synopsys
11+
DesignWare PCIe IP which is managed by firmware.
12+
13+
maintainers:
14+
- Manivannan Sadhasivam <mani@kernel.org>
15+
16+
properties:
17+
compatible:
18+
const: qcom,sa8255p-pcie-ep
19+
20+
reg:
21+
items:
22+
- description: Qualcomm-specific PARF configuration registers
23+
- description: DesignWare PCIe registers
24+
- description: External local bus interface registers
25+
- description: Address Translation Unit (ATU) registers
26+
- description: Memory region used to map remote RC address space
27+
- description: BAR memory region
28+
- description: DMA register space
29+
30+
reg-names:
31+
items:
32+
- const: parf
33+
- const: dbi
34+
- const: elbi
35+
- const: atu
36+
- const: addr_space
37+
- const: mmio
38+
- const: dma
39+
40+
interrupts:
41+
items:
42+
- description: PCIe Global interrupt
43+
- description: PCIe Doorbell interrupt
44+
- description: DMA interrupt
45+
46+
interrupt-names:
47+
items:
48+
- const: global
49+
- const: doorbell
50+
- const: dma
51+
52+
iommus:
53+
maxItems: 1
54+
55+
reset-gpios:
56+
description: GPIO used as PERST# input signal
57+
maxItems: 1
58+
59+
wake-gpios:
60+
description: GPIO used as WAKE# output signal
61+
maxItems: 1
62+
63+
power-domains:
64+
maxItems: 1
65+
66+
dma-coherent: true
67+
68+
num-lanes:
69+
default: 2
70+
71+
required:
72+
- compatible
73+
- reg
74+
- reg-names
75+
- interrupts
76+
- interrupt-names
77+
- reset-gpios
78+
- power-domains
79+
80+
additionalProperties: false
81+
82+
examples:
83+
- |
84+
#include <dt-bindings/gpio/gpio.h>
85+
#include <dt-bindings/interrupt-controller/arm-gic.h>
86+
soc {
87+
#address-cells = <2>;
88+
#size-cells = <2>;
89+
pcie1_ep: pcie-ep@1c10000 {
90+
compatible = "qcom,sa8255p-pcie-ep";
91+
reg = <0x0 0x01c10000 0x0 0x3000>,
92+
<0x0 0x60000000 0x0 0xf20>,
93+
<0x0 0x60000f20 0x0 0xa8>,
94+
<0x0 0x60001000 0x0 0x4000>,
95+
<0x0 0x60200000 0x0 0x100000>,
96+
<0x0 0x01c13000 0x0 0x1000>,
97+
<0x0 0x60005000 0x0 0x2000>;
98+
reg-names = "parf", "dbi", "elbi", "atu", "addr_space", "mmio", "dma";
99+
interrupts = <GIC_SPI 518 IRQ_TYPE_LEVEL_HIGH>,
100+
<GIC_SPI 152 IRQ_TYPE_LEVEL_HIGH>,
101+
<GIC_SPI 474 IRQ_TYPE_LEVEL_HIGH>;
102+
interrupt-names = "global", "doorbell", "dma";
103+
reset-gpios = <&tlmm 4 GPIO_ACTIVE_LOW>;
104+
wake-gpios = <&tlmm 5 GPIO_ACTIVE_LOW>;
105+
dma-coherent;
106+
iommus = <&pcie_smmu 0x80 0x7f>;
107+
power-domains = <&scmi6_pd 1>;
108+
num-lanes = <4>;
109+
};
110+
};

MAINTAINERS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20357,6 +20357,7 @@ L: linux-pci@vger.kernel.org
2035720357
L: linux-arm-msm@vger.kernel.org
2035820358
S: Maintained
2035920359
F: Documentation/devicetree/bindings/pci/qcom,pcie-ep.yaml
20360+
F: Documentation/devicetree/bindings/pci/qcom,sa8255p-pcie-ep.yaml
2036020361
F: drivers/pci/controller/dwc/pcie-qcom-common.c
2036120362
F: drivers/pci/controller/dwc/pcie-qcom-ep.c
2036220363

0 commit comments

Comments
 (0)