[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20220725163905.2024437-5-jeremy.linton@arm.com>
Date: Mon, 25 Jul 2022 11:39:05 -0500
From: Jeremy Linton <jeremy.linton@....com>
To: linux-pci@...r.kernel.org
Cc: will@...nel.org, bhelgaas@...gle.com, robh+dt@...nel.org,
krzysztof.kozlowski+dt@...aro.org, lpieralisi@...nel.org,
kw@...ux.com, mark.rutland@....com, sudeep.holla@....com,
boqun.feng@...il.com, catalin.marinas@....com,
linux-arm-kernel@...ts.infradead.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org, Jeremy Linton <jeremy.linton@....com>
Subject: [PATCH 4/4] dt-bindings: PCI: Note the use of pci-host-smc-generic
Note the addition of pci-host-smc-generic for
firmware based config assistance, and the relaxation
of the 'reg' property for such machines.
Signed-off-by: Jeremy Linton <jeremy.linton@....com>
---
.../bindings/pci/host-generic-pci.yaml | 24 ++++++++++++++-----
1 file changed, 18 insertions(+), 6 deletions(-)
diff --git a/Documentation/devicetree/bindings/pci/host-generic-pci.yaml b/Documentation/devicetree/bindings/pci/host-generic-pci.yaml
index 6bcaa8f2c3cf..b4471617fa46 100644
--- a/Documentation/devicetree/bindings/pci/host-generic-pci.yaml
+++ b/Documentation/devicetree/bindings/pci/host-generic-pci.yaml
@@ -18,10 +18,11 @@ description: |
presenting a set of fixed windows describing a subset of IO, Memory and
Configuration Spaces.
- Configuration Space is assumed to be memory-mapped (as opposed to being
- accessed via an ioport) and laid out with a direct correspondence to the
- geography of a PCI bus address by concatenating the various components to
- form an offset.
+ Configuration Space is assumed to be laid out with a direct correspondence
+ to the geography of a PCI bus address by concatenating the various components
+ to form an offset. The CAM and ECAM mechanisms require a memory mapped
+ interface, while the SMC traps to the firmware to perform config space
+ reads and writes decoded similarly to the ECAM mapping.
For CAM, this 24-bit offset is:
@@ -86,6 +87,7 @@ properties:
enum:
- pci-host-cam-generic
- pci-host-ecam-generic
+ - pci-host-smc-generic
reg:
description:
@@ -93,7 +95,8 @@ properties:
bus. The base address corresponds to the first bus in the "bus-range"
property. If no "bus-range" is specified, this will be bus 0 (the
default). Some host controllers have a 2nd non-compliant address range,
- so 2 entries are allowed.
+ so 2 entries are allowed. Machines which implement the Arm PCI SMCCC spec
+ must not provide this property.
minItems: 1
maxItems: 2
@@ -109,7 +112,6 @@ properties:
required:
- compatible
- - reg
- ranges
allOf:
@@ -123,6 +125,16 @@ allOf:
required:
- dma-coherent
+ - if:
+ properties:
+ compatible:
+ not:
+ contains:
+ const: pci-host-smc-generic
+ then:
+ required:
+ - reg
+
- if:
properties:
compatible:
--
2.37.1
Powered by blists - more mailing lists