# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) %YAML 1.2 --- $id: http://devicetree.org/schemas/pci/socionext,uniphier-pcie-ep.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: Socionext UniPhier PCIe endpoint controller description: | UniPhier PCIe endpoint controller is based on the Synopsys DesignWare PCI core. It shares common features with the PCIe DesignWare core and inherits common properties defined in Documentation/devicetree/bindings/pci/snps,dw-pcie-ep.yaml. maintainers: - Kunihiko Hayashi properties: compatible: enum: - socionext,uniphier-pro5-pcie-ep - socionext,uniphier-nx1-pcie-ep reg: minItems: 4 maxItems: 5 reg-names: minItems: 4 items: - const: dbi - const: dbi2 - const: link - const: addr_space - const: atu clocks: minItems: 1 maxItems: 2 clock-names: true resets: minItems: 1 maxItems: 2 reset-names: true num-ib-windows: const: 16 num-ob-windows: const: 16 num-lanes: true phys: maxItems: 1 phy-names: const: pcie-phy allOf: - $ref: /schemas/pci/snps,dw-pcie-ep.yaml# - if: properties: compatible: contains: const: socionext,uniphier-pro5-pcie-ep then: properties: reg: maxItems: 4 reg-names: maxItems: 4 clocks: minItems: 2 clock-names: items: - const: gio - const: link resets: minItems: 2 reset-names: items: - const: gio - const: link else: properties: reg: minItems: 5 reg-names: minItems: 5 clocks: maxItems: 1 clock-names: const: link resets: maxItems: 1 reset-names: const: link required: - compatible - reg - reg-names - clocks - clock-names - resets - reset-names unevaluatedProperties: false examples: - | pcie_ep: pcie-ep@66000000 { compatible = "socionext,uniphier-pro5-pcie-ep"; reg-names = "dbi", "dbi2", "link", "addr_space"; reg = <0x66000000 0x1000>, <0x66001000 0x1000>, <0x66010000 0x10000>, <0x67000000 0x400000>; clock-names = "gio", "link"; clocks = <&sys_clk 12>, <&sys_clk 24>; reset-names = "gio", "link"; resets = <&sys_rst 12>, <&sys_rst 24>; num-ib-windows = <16>; num-ob-windows = <16>; num-lanes = <4>; phy-names = "pcie-phy"; phys = <&pcie_phy>; };