1*c66ec88fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*c66ec88fSEmmanuel Vadot# Copyright (C) 2019 Texas Instruments Incorporated - http://www.ti.com/ 3*c66ec88fSEmmanuel Vadot%YAML 1.2 4*c66ec88fSEmmanuel Vadot--- 5*c66ec88fSEmmanuel Vadot$id: "http://devicetree.org/schemas/pci/ti,j721e-pci-host.yaml#" 6*c66ec88fSEmmanuel Vadot$schema: "http://devicetree.org/meta-schemas/core.yaml#" 7*c66ec88fSEmmanuel Vadot 8*c66ec88fSEmmanuel Vadottitle: TI J721E PCI Host (PCIe Wrapper) 9*c66ec88fSEmmanuel Vadot 10*c66ec88fSEmmanuel Vadotmaintainers: 11*c66ec88fSEmmanuel Vadot - Kishon Vijay Abraham I <kishon@ti.com> 12*c66ec88fSEmmanuel Vadot 13*c66ec88fSEmmanuel VadotallOf: 14*c66ec88fSEmmanuel Vadot - $ref: "cdns-pcie-host.yaml#" 15*c66ec88fSEmmanuel Vadot 16*c66ec88fSEmmanuel Vadotproperties: 17*c66ec88fSEmmanuel Vadot compatible: 18*c66ec88fSEmmanuel Vadot enum: 19*c66ec88fSEmmanuel Vadot - ti,j721e-pcie-host 20*c66ec88fSEmmanuel Vadot 21*c66ec88fSEmmanuel Vadot reg: 22*c66ec88fSEmmanuel Vadot maxItems: 4 23*c66ec88fSEmmanuel Vadot 24*c66ec88fSEmmanuel Vadot reg-names: 25*c66ec88fSEmmanuel Vadot items: 26*c66ec88fSEmmanuel Vadot - const: intd_cfg 27*c66ec88fSEmmanuel Vadot - const: user_cfg 28*c66ec88fSEmmanuel Vadot - const: reg 29*c66ec88fSEmmanuel Vadot - const: cfg 30*c66ec88fSEmmanuel Vadot 31*c66ec88fSEmmanuel Vadot ti,syscon-pcie-ctrl: 32*c66ec88fSEmmanuel Vadot description: Phandle to the SYSCON entry required for configuring PCIe mode 33*c66ec88fSEmmanuel Vadot and link speed. 34*c66ec88fSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/phandle 35*c66ec88fSEmmanuel Vadot 36*c66ec88fSEmmanuel Vadot power-domains: 37*c66ec88fSEmmanuel Vadot maxItems: 1 38*c66ec88fSEmmanuel Vadot 39*c66ec88fSEmmanuel Vadot clocks: 40*c66ec88fSEmmanuel Vadot maxItems: 1 41*c66ec88fSEmmanuel Vadot description: clock-specifier to represent input to the PCIe 42*c66ec88fSEmmanuel Vadot 43*c66ec88fSEmmanuel Vadot clock-names: 44*c66ec88fSEmmanuel Vadot items: 45*c66ec88fSEmmanuel Vadot - const: fck 46*c66ec88fSEmmanuel Vadot 47*c66ec88fSEmmanuel Vadot vendor-id: 48*c66ec88fSEmmanuel Vadot const: 0x104c 49*c66ec88fSEmmanuel Vadot 50*c66ec88fSEmmanuel Vadot device-id: 51*c66ec88fSEmmanuel Vadot const: 0xb00d 52*c66ec88fSEmmanuel Vadot 53*c66ec88fSEmmanuel Vadot msi-map: true 54*c66ec88fSEmmanuel Vadot 55*c66ec88fSEmmanuel Vadotrequired: 56*c66ec88fSEmmanuel Vadot - compatible 57*c66ec88fSEmmanuel Vadot - reg 58*c66ec88fSEmmanuel Vadot - reg-names 59*c66ec88fSEmmanuel Vadot - ti,syscon-pcie-ctrl 60*c66ec88fSEmmanuel Vadot - max-link-speed 61*c66ec88fSEmmanuel Vadot - num-lanes 62*c66ec88fSEmmanuel Vadot - power-domains 63*c66ec88fSEmmanuel Vadot - clocks 64*c66ec88fSEmmanuel Vadot - clock-names 65*c66ec88fSEmmanuel Vadot - vendor-id 66*c66ec88fSEmmanuel Vadot - device-id 67*c66ec88fSEmmanuel Vadot - msi-map 68*c66ec88fSEmmanuel Vadot - dma-coherent 69*c66ec88fSEmmanuel Vadot - dma-ranges 70*c66ec88fSEmmanuel Vadot - ranges 71*c66ec88fSEmmanuel Vadot - reset-gpios 72*c66ec88fSEmmanuel Vadot - phys 73*c66ec88fSEmmanuel Vadot - phy-names 74*c66ec88fSEmmanuel Vadot 75*c66ec88fSEmmanuel Vadotexamples: 76*c66ec88fSEmmanuel Vadot - | 77*c66ec88fSEmmanuel Vadot #include <dt-bindings/soc/ti,sci_pm_domain.h> 78*c66ec88fSEmmanuel Vadot #include <dt-bindings/gpio/gpio.h> 79*c66ec88fSEmmanuel Vadot 80*c66ec88fSEmmanuel Vadot bus { 81*c66ec88fSEmmanuel Vadot #address-cells = <2>; 82*c66ec88fSEmmanuel Vadot #size-cells = <2>; 83*c66ec88fSEmmanuel Vadot 84*c66ec88fSEmmanuel Vadot pcie0_rc: pcie@2900000 { 85*c66ec88fSEmmanuel Vadot compatible = "ti,j721e-pcie-host"; 86*c66ec88fSEmmanuel Vadot reg = <0x00 0x02900000 0x00 0x1000>, 87*c66ec88fSEmmanuel Vadot <0x00 0x02907000 0x00 0x400>, 88*c66ec88fSEmmanuel Vadot <0x00 0x0d000000 0x00 0x00800000>, 89*c66ec88fSEmmanuel Vadot <0x00 0x10000000 0x00 0x00001000>; 90*c66ec88fSEmmanuel Vadot reg-names = "intd_cfg", "user_cfg", "reg", "cfg"; 91*c66ec88fSEmmanuel Vadot ti,syscon-pcie-ctrl = <&pcie0_ctrl>; 92*c66ec88fSEmmanuel Vadot max-link-speed = <3>; 93*c66ec88fSEmmanuel Vadot num-lanes = <2>; 94*c66ec88fSEmmanuel Vadot power-domains = <&k3_pds 239 TI_SCI_PD_EXCLUSIVE>; 95*c66ec88fSEmmanuel Vadot clocks = <&k3_clks 239 1>; 96*c66ec88fSEmmanuel Vadot clock-names = "fck"; 97*c66ec88fSEmmanuel Vadot device_type = "pci"; 98*c66ec88fSEmmanuel Vadot #address-cells = <3>; 99*c66ec88fSEmmanuel Vadot #size-cells = <2>; 100*c66ec88fSEmmanuel Vadot bus-range = <0x0 0xf>; 101*c66ec88fSEmmanuel Vadot vendor-id = <0x104c>; 102*c66ec88fSEmmanuel Vadot device-id = <0xb00d>; 103*c66ec88fSEmmanuel Vadot msi-map = <0x0 &gic_its 0x0 0x10000>; 104*c66ec88fSEmmanuel Vadot dma-coherent; 105*c66ec88fSEmmanuel Vadot reset-gpios = <&exp1 6 GPIO_ACTIVE_HIGH>; 106*c66ec88fSEmmanuel Vadot phys = <&serdes0_pcie_link>; 107*c66ec88fSEmmanuel Vadot phy-names = "pcie-phy"; 108*c66ec88fSEmmanuel Vadot ranges = <0x01000000 0x0 0x10001000 0x00 0x10001000 0x0 0x0010000>, 109*c66ec88fSEmmanuel Vadot <0x02000000 0x0 0x10011000 0x00 0x10011000 0x0 0x7fef000>; 110*c66ec88fSEmmanuel Vadot dma-ranges = <0x02000000 0x0 0x0 0x0 0x0 0x10000 0x0>; 111*c66ec88fSEmmanuel Vadot }; 112*c66ec88fSEmmanuel Vadot }; 113