1*833e5d42SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*833e5d42SEmmanuel Vadot%YAML 1.2 3*833e5d42SEmmanuel Vadot--- 4*833e5d42SEmmanuel Vadot$id: http://devicetree.org/schemas/pci/marvell,armada-3700-pcie.yaml# 5*833e5d42SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*833e5d42SEmmanuel Vadot 7*833e5d42SEmmanuel Vadottitle: Marvell Armada 3700 (Aardvark) PCIe Controller 8*833e5d42SEmmanuel Vadot 9*833e5d42SEmmanuel Vadotmaintainers: 10*833e5d42SEmmanuel Vadot - Thomas Petazzoni <thomas.petazzoni@bootlin.com> 11*833e5d42SEmmanuel Vadot - Pali Rohár <pali@kernel.org> 12*833e5d42SEmmanuel Vadot 13*833e5d42SEmmanuel VadotallOf: 14*833e5d42SEmmanuel Vadot - $ref: /schemas/pci/pci-host-bridge.yaml# 15*833e5d42SEmmanuel Vadot 16*833e5d42SEmmanuel Vadotproperties: 17*833e5d42SEmmanuel Vadot compatible: 18*833e5d42SEmmanuel Vadot const: marvell,armada-3700-pcie 19*833e5d42SEmmanuel Vadot 20*833e5d42SEmmanuel Vadot reg: 21*833e5d42SEmmanuel Vadot maxItems: 1 22*833e5d42SEmmanuel Vadot 23*833e5d42SEmmanuel Vadot clocks: 24*833e5d42SEmmanuel Vadot maxItems: 1 25*833e5d42SEmmanuel Vadot 26*833e5d42SEmmanuel Vadot interrupts: 27*833e5d42SEmmanuel Vadot maxItems: 1 28*833e5d42SEmmanuel Vadot 29*833e5d42SEmmanuel Vadot msi-controller: true 30*833e5d42SEmmanuel Vadot 31*833e5d42SEmmanuel Vadot msi-parent: 32*833e5d42SEmmanuel Vadot maxItems: 1 33*833e5d42SEmmanuel Vadot 34*833e5d42SEmmanuel Vadot phys: 35*833e5d42SEmmanuel Vadot maxItems: 1 36*833e5d42SEmmanuel Vadot 37*833e5d42SEmmanuel Vadot reset-gpios: 38*833e5d42SEmmanuel Vadot description: PCIe reset GPIO signals. 39*833e5d42SEmmanuel Vadot 40*833e5d42SEmmanuel Vadot interrupt-controller: 41*833e5d42SEmmanuel Vadot type: object 42*833e5d42SEmmanuel Vadot additionalProperties: false 43*833e5d42SEmmanuel Vadot 44*833e5d42SEmmanuel Vadot properties: 45*833e5d42SEmmanuel Vadot interrupt-controller: true 46*833e5d42SEmmanuel Vadot 47*833e5d42SEmmanuel Vadot '#interrupt-cells': 48*833e5d42SEmmanuel Vadot const: 1 49*833e5d42SEmmanuel Vadot 50*833e5d42SEmmanuel Vadot required: 51*833e5d42SEmmanuel Vadot - interrupt-controller 52*833e5d42SEmmanuel Vadot - '#interrupt-cells' 53*833e5d42SEmmanuel Vadot 54*833e5d42SEmmanuel Vadotrequired: 55*833e5d42SEmmanuel Vadot - compatible 56*833e5d42SEmmanuel Vadot - reg 57*833e5d42SEmmanuel Vadot - interrupts 58*833e5d42SEmmanuel Vadot - '#interrupt-cells' 59*833e5d42SEmmanuel Vadot 60*833e5d42SEmmanuel VadotunevaluatedProperties: false 61*833e5d42SEmmanuel Vadot 62*833e5d42SEmmanuel Vadotexamples: 63*833e5d42SEmmanuel Vadot - | 64*833e5d42SEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 65*833e5d42SEmmanuel Vadot #include <dt-bindings/gpio/gpio.h> 66*833e5d42SEmmanuel Vadot 67*833e5d42SEmmanuel Vadot bus { 68*833e5d42SEmmanuel Vadot #address-cells = <2>; 69*833e5d42SEmmanuel Vadot #size-cells = <2>; 70*833e5d42SEmmanuel Vadot 71*833e5d42SEmmanuel Vadot pcie@d0070000 { 72*833e5d42SEmmanuel Vadot compatible = "marvell,armada-3700-pcie"; 73*833e5d42SEmmanuel Vadot device_type = "pci"; 74*833e5d42SEmmanuel Vadot reg = <0 0xd0070000 0 0x20000>; 75*833e5d42SEmmanuel Vadot #address-cells = <3>; 76*833e5d42SEmmanuel Vadot #size-cells = <2>; 77*833e5d42SEmmanuel Vadot bus-range = <0x00 0xff>; 78*833e5d42SEmmanuel Vadot interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>; 79*833e5d42SEmmanuel Vadot msi-controller; 80*833e5d42SEmmanuel Vadot msi-parent = <&pcie0>; 81*833e5d42SEmmanuel Vadot ranges = <0x82000000 0 0xe8000000 0 0xe8000000 0 0x1000000>, 82*833e5d42SEmmanuel Vadot <0x81000000 0 0xe9000000 0 0xe9000000 0 0x10000>; 83*833e5d42SEmmanuel Vadot 84*833e5d42SEmmanuel Vadot #interrupt-cells = <1>; 85*833e5d42SEmmanuel Vadot interrupt-map-mask = <0 0 0 7>; 86*833e5d42SEmmanuel Vadot interrupt-map = <0 0 0 1 &pcie_intc 0>, 87*833e5d42SEmmanuel Vadot <0 0 0 2 &pcie_intc 1>, 88*833e5d42SEmmanuel Vadot <0 0 0 3 &pcie_intc 2>, 89*833e5d42SEmmanuel Vadot <0 0 0 4 &pcie_intc 3>; 90*833e5d42SEmmanuel Vadot phys = <&comphy1 0>; 91*833e5d42SEmmanuel Vadot max-link-speed = <2>; 92*833e5d42SEmmanuel Vadot reset-gpios = <&gpio1 15 GPIO_ACTIVE_LOW>; 93*833e5d42SEmmanuel Vadot 94*833e5d42SEmmanuel Vadot pcie_intc: interrupt-controller { 95*833e5d42SEmmanuel Vadot interrupt-controller; 96*833e5d42SEmmanuel Vadot #interrupt-cells = <1>; 97*833e5d42SEmmanuel Vadot }; 98*833e5d42SEmmanuel Vadot }; 99*833e5d42SEmmanuel Vadot }; 100