1c96c936aSThippeswamy Havalige# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2c96c936aSThippeswamy Havalige%YAML 1.2 3c96c936aSThippeswamy Havalige--- 4c96c936aSThippeswamy Havalige$id: http://devicetree.org/schemas/pci/amd,versal2-mdb-host.yaml# 5c96c936aSThippeswamy Havalige$schema: http://devicetree.org/meta-schemas/core.yaml# 6c96c936aSThippeswamy Havalige 7c96c936aSThippeswamy Havaligetitle: AMD Versal2 MDB(Multimedia DMA Bridge) Host Controller 8c96c936aSThippeswamy Havalige 9c96c936aSThippeswamy Havaligemaintainers: 10c96c936aSThippeswamy Havalige - Thippeswamy Havalige <thippeswamy.havalige@amd.com> 11c96c936aSThippeswamy Havalige 12c96c936aSThippeswamy HavaligeallOf: 13c96c936aSThippeswamy Havalige - $ref: /schemas/pci/pci-host-bridge.yaml# 14c96c936aSThippeswamy Havalige - $ref: /schemas/pci/snps,dw-pcie.yaml# 15c96c936aSThippeswamy Havalige 16c96c936aSThippeswamy Havaligeproperties: 17c96c936aSThippeswamy Havalige compatible: 18c96c936aSThippeswamy Havalige const: amd,versal2-mdb-host 19c96c936aSThippeswamy Havalige 20c96c936aSThippeswamy Havalige reg: 21c96c936aSThippeswamy Havalige items: 22c96c936aSThippeswamy Havalige - description: MDB System Level Control and Status Register (SLCR) Base 23c96c936aSThippeswamy Havalige - description: configuration region 24c96c936aSThippeswamy Havalige - description: data bus interface 25c96c936aSThippeswamy Havalige - description: address translation unit register 26c96c936aSThippeswamy Havalige 27c96c936aSThippeswamy Havalige reg-names: 28c96c936aSThippeswamy Havalige items: 29c96c936aSThippeswamy Havalige - const: slcr 30c96c936aSThippeswamy Havalige - const: config 31c96c936aSThippeswamy Havalige - const: dbi 32c96c936aSThippeswamy Havalige - const: atu 33c96c936aSThippeswamy Havalige 34c96c936aSThippeswamy Havalige ranges: 35c96c936aSThippeswamy Havalige maxItems: 2 36c96c936aSThippeswamy Havalige 37c96c936aSThippeswamy Havalige msi-map: 38c96c936aSThippeswamy Havalige maxItems: 1 39c96c936aSThippeswamy Havalige 40c96c936aSThippeswamy Havalige interrupts: 41c96c936aSThippeswamy Havalige maxItems: 1 42c96c936aSThippeswamy Havalige 43c96c936aSThippeswamy Havalige interrupt-map-mask: 44c96c936aSThippeswamy Havalige items: 45c96c936aSThippeswamy Havalige - const: 0 46c96c936aSThippeswamy Havalige - const: 0 47c96c936aSThippeswamy Havalige - const: 0 48c96c936aSThippeswamy Havalige - const: 7 49c96c936aSThippeswamy Havalige 50c96c936aSThippeswamy Havalige interrupt-map: 51c96c936aSThippeswamy Havalige maxItems: 4 52c96c936aSThippeswamy Havalige 53c96c936aSThippeswamy Havalige "#interrupt-cells": 54c96c936aSThippeswamy Havalige const: 1 55c96c936aSThippeswamy Havalige 56c96c936aSThippeswamy Havalige interrupt-controller: 57c96c936aSThippeswamy Havalige description: identifies the node as an interrupt controller 58c96c936aSThippeswamy Havalige type: object 59c96c936aSThippeswamy Havalige additionalProperties: false 60c96c936aSThippeswamy Havalige properties: 61c96c936aSThippeswamy Havalige interrupt-controller: true 62c96c936aSThippeswamy Havalige 63c96c936aSThippeswamy Havalige "#address-cells": 64c96c936aSThippeswamy Havalige const: 0 65c96c936aSThippeswamy Havalige 66c96c936aSThippeswamy Havalige "#interrupt-cells": 67c96c936aSThippeswamy Havalige const: 1 68c96c936aSThippeswamy Havalige 69c96c936aSThippeswamy Havalige required: 70c96c936aSThippeswamy Havalige - interrupt-controller 71c96c936aSThippeswamy Havalige - "#address-cells" 72c96c936aSThippeswamy Havalige - "#interrupt-cells" 73c96c936aSThippeswamy Havalige 74*0b9275edSSai Krishna MushampatternProperties: 75*0b9275edSSai Krishna Musham '^pcie@[0-2],0$': 76*0b9275edSSai Krishna Musham type: object 77*0b9275edSSai Krishna Musham $ref: /schemas/pci/pci-pci-bridge.yaml# 78*0b9275edSSai Krishna Musham 79*0b9275edSSai Krishna Musham properties: 80*0b9275edSSai Krishna Musham reg: 81*0b9275edSSai Krishna Musham maxItems: 1 82*0b9275edSSai Krishna Musham 83*0b9275edSSai Krishna Musham unevaluatedProperties: false 84*0b9275edSSai Krishna Musham 85c96c936aSThippeswamy Havaligerequired: 86c96c936aSThippeswamy Havalige - reg 87c96c936aSThippeswamy Havalige - reg-names 88c96c936aSThippeswamy Havalige - interrupts 89c96c936aSThippeswamy Havalige - interrupt-map 90c96c936aSThippeswamy Havalige - interrupt-map-mask 91c96c936aSThippeswamy Havalige - msi-map 92c96c936aSThippeswamy Havalige - "#interrupt-cells" 93c96c936aSThippeswamy Havalige - interrupt-controller 94c96c936aSThippeswamy Havalige 95c96c936aSThippeswamy HavaligeunevaluatedProperties: false 96c96c936aSThippeswamy Havalige 97c96c936aSThippeswamy Havaligeexamples: 98c96c936aSThippeswamy Havalige - | 99c96c936aSThippeswamy Havalige #include <dt-bindings/interrupt-controller/arm-gic.h> 100c96c936aSThippeswamy Havalige #include <dt-bindings/interrupt-controller/irq.h> 101*0b9275edSSai Krishna Musham #include <dt-bindings/gpio/gpio.h> 102c96c936aSThippeswamy Havalige 103c96c936aSThippeswamy Havalige soc { 104c96c936aSThippeswamy Havalige #address-cells = <2>; 105c96c936aSThippeswamy Havalige #size-cells = <2>; 106c96c936aSThippeswamy Havalige pcie@ed931000 { 107c96c936aSThippeswamy Havalige compatible = "amd,versal2-mdb-host"; 108c96c936aSThippeswamy Havalige reg = <0x0 0xed931000 0x0 0x2000>, 109c96c936aSThippeswamy Havalige <0x1000 0x100000 0x0 0xff00000>, 110c96c936aSThippeswamy Havalige <0x1000 0x0 0x0 0x1000>, 111c96c936aSThippeswamy Havalige <0x0 0xed860000 0x0 0x2000>; 112c96c936aSThippeswamy Havalige reg-names = "slcr", "config", "dbi", "atu"; 113c96c936aSThippeswamy Havalige ranges = <0x2000000 0x00 0xa0000000 0x00 0xa0000000 0x00 0x10000000>, 114c96c936aSThippeswamy Havalige <0x43000000 0x1100 0x00 0x1100 0x00 0x00 0x1000000>; 115c96c936aSThippeswamy Havalige interrupts = <GIC_SPI 165 IRQ_TYPE_LEVEL_HIGH>; 116c96c936aSThippeswamy Havalige interrupt-parent = <&gic>; 117c96c936aSThippeswamy Havalige interrupt-map-mask = <0 0 0 7>; 118c96c936aSThippeswamy Havalige interrupt-map = <0 0 0 1 &pcie_intc_0 0>, 119c96c936aSThippeswamy Havalige <0 0 0 2 &pcie_intc_0 1>, 120c96c936aSThippeswamy Havalige <0 0 0 3 &pcie_intc_0 2>, 121c96c936aSThippeswamy Havalige <0 0 0 4 &pcie_intc_0 3>; 122c96c936aSThippeswamy Havalige msi-map = <0x0 &gic_its 0x00 0x10000>; 123c96c936aSThippeswamy Havalige #address-cells = <3>; 124c96c936aSThippeswamy Havalige #size-cells = <2>; 125c96c936aSThippeswamy Havalige #interrupt-cells = <1>; 126c96c936aSThippeswamy Havalige device_type = "pci"; 127*0b9275edSSai Krishna Musham 128*0b9275edSSai Krishna Musham pcie@0,0 { 129*0b9275edSSai Krishna Musham device_type = "pci"; 130*0b9275edSSai Krishna Musham reg = <0x0 0x0 0x0 0x0 0x0>; 131*0b9275edSSai Krishna Musham reset-gpios = <&tca6416_u37 7 GPIO_ACTIVE_LOW>; 132*0b9275edSSai Krishna Musham #address-cells = <3>; 133*0b9275edSSai Krishna Musham #size-cells = <2>; 134*0b9275edSSai Krishna Musham ranges; 135*0b9275edSSai Krishna Musham }; 136*0b9275edSSai Krishna Musham 137c96c936aSThippeswamy Havalige pcie_intc_0: interrupt-controller { 138c96c936aSThippeswamy Havalige #address-cells = <0>; 139c96c936aSThippeswamy Havalige #interrupt-cells = <1>; 140c96c936aSThippeswamy Havalige interrupt-controller; 141c96c936aSThippeswamy Havalige }; 142c96c936aSThippeswamy Havalige }; 143c96c936aSThippeswamy Havalige }; 144