[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20230616170022.76107-2-sebastian.reichel@collabora.com>
Date: Fri, 16 Jun 2023 19:00:19 +0200
From: Sebastian Reichel <sebastian.reichel@...labora.com>
To: linux-pci@...r.kernel.org, linux-rockchip@...ts.infradead.org
Cc: Jingoo Han <jingoohan1@...il.com>,
Gustavo Pimentel <gustavo.pimentel@...opsys.com>,
Bjorn Helgaas <bhelgaas@...gle.com>,
Lorenzo Pieralisi <lpieralisi@...nel.org>,
Krzysztof WilczyĆski <kw@...ux.com>,
Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
Conor Dooley <conor+dt@...nel.org>,
Heiko Stuebner <heiko@...ech.de>,
Shawn Lin <shawn.lin@...k-chips.com>,
Simon Xue <xxm@...k-chips.com>, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
Sebastian Reichel <sebastian.reichel@...labora.com>,
kernel@...labora.com
Subject: [PATCH v1 1/4] dt-bindings: PCI: dwc: rockchip: Fix interrupt-names issue
The RK356x (and RK3588) have 5 ganged interrupts. For example the
"legacy" interrupt combines "inta/intb/intc/intd" with a register
providing the details.
Currently the binding is not specifying these interrupts resulting
in a bunch of errors for all rk356x boards using PCIe.
Fix this by specifying the interrupts and add them to the example
to prevent regressions.
Signed-off-by: Sebastian Reichel <sebastian.reichel@...labora.com>
---
.../bindings/pci/rockchip-dw-pcie.yaml | 18 ++++++++++++++++++
.../devicetree/bindings/pci/snps,dw-pcie.yaml | 15 ++++++++++++++-
2 files changed, 32 insertions(+), 1 deletion(-)
diff --git a/Documentation/devicetree/bindings/pci/rockchip-dw-pcie.yaml b/Documentation/devicetree/bindings/pci/rockchip-dw-pcie.yaml
index 24c88942e59e..98e45d2d8dfe 100644
--- a/Documentation/devicetree/bindings/pci/rockchip-dw-pcie.yaml
+++ b/Documentation/devicetree/bindings/pci/rockchip-dw-pcie.yaml
@@ -56,6 +56,17 @@ properties:
- const: pclk
- const: aux
+ interrupts:
+ maxItems: 5
+
+ interrupt-names:
+ items:
+ - const: sys
+ - const: pmc
+ - const: msg
+ - const: legacy
+ - const: err
+
msi-map: true
num-lanes: true
@@ -98,6 +109,7 @@ unevaluatedProperties: false
examples:
- |
+ #include <dt-bindings/interrupt-controller/arm-gic.h>
bus {
#address-cells = <2>;
@@ -117,6 +129,12 @@ examples:
"aclk_dbi", "pclk",
"aux";
device_type = "pci";
+ interrupts = <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "sys", "pmc", "msg", "legacy", "err";
linux,pci-domain = <2>;
max-link-speed = <2>;
msi-map = <0x2000 &its 0x2000 0x1000>;
diff --git a/Documentation/devicetree/bindings/pci/snps,dw-pcie.yaml b/Documentation/devicetree/bindings/pci/snps,dw-pcie.yaml
index 1a83f0f65f19..9f605eb297f5 100644
--- a/Documentation/devicetree/bindings/pci/snps,dw-pcie.yaml
+++ b/Documentation/devicetree/bindings/pci/snps,dw-pcie.yaml
@@ -193,9 +193,22 @@ properties:
oneOf:
- description: See native "app" IRQ for details
enum: [ intr ]
+ - description: Combined Legacy A/B/C/D interrupt signal.
+ const: legacy
+ - description: Combined System interrupt signal.
+ const: sys
+ - description: Combined Power Management interrupt signal.
+ const: pmc
+ - description: Combined Message Received interrupt signal.
+ const: msg
+ - description: Combined Error interrupt signal.
+ const: err
+
allOf:
- contains:
- const: msi
+ enum:
+ - msi
+ - msg
additionalProperties: true
--
2.39.2
Powered by blists - more mailing lists