@@ -32,11 +32,11 @@ properties:
is selected. Note the PCIe CFG-space, PL and Shadow registers are
specific for each activated function, while the rest of the sub-spaces
are common for all of them (if there are more than one).
- minItems: 2
+ minItems: 1
maxItems: 7
reg-names:
- minItems: 2
+ minItems: 1
maxItems: 7
interrupts:
@@ -25,18 +25,33 @@ select:
allOf:
- $ref: /schemas/pci/pci-ep.yaml#
- $ref: /schemas/pci/snps,dw-pcie-common.yaml#
+ - if:
+ not:
+ required:
+ - ranges
+ then:
+ properties:
+ reg:
+ minItems: 2
+ reg-names:
+ minItems: 2
+ allOf:
+ - contains:
+ const: addr_space
properties:
+ ranges: true
+
reg:
description:
DBI, DBI2 reg-spaces and outbound memory window are required for the
normal controller functioning. iATU memory IO region is also required
if the space is unrolled (IP-core version >= 4.80a).
- minItems: 2
+ minItems: 1
maxItems: 7
reg-names:
- minItems: 2
+ minItems: 1
maxItems: 7
items:
oneOf:
@@ -106,8 +121,6 @@ properties:
allOf:
- contains:
const: dbi
- - contains:
- const: addr_space
interrupts:
description:
Do not require 'addr_space' in 'reg-names' when the device uses the 'ranges' property to indicate the outbound address space. This maintains the same restriction for cases where 'ranges' is absent. minItems of 'reg' and 'reg-names' change to 1 because only one 'dbi' register space is required if use 'ranges' describe outbound memory space. minItems of 'reg' and 'reg-names' in snps,dw-pcie-common.yaml also change to 1 from 2. It doesn't loss restriction because it is 2 in snps,dw-pcie.yaml. Signed-off-by: Frank Li <Frank.Li@nxp.com> --- .../bindings/pci/snps,dw-pcie-common.yaml | 4 ++-- .../devicetree/bindings/pci/snps,dw-pcie-ep.yaml | 21 +++++++++++++++++---- 2 files changed, 19 insertions(+), 6 deletions(-)