Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: GPL-2.0
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/pci/snps,dw-pcie.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006 
0007 title: Synopsys DesignWare PCIe interface
0008 
0009 maintainers:
0010   - Jingoo Han <jingoohan1@gmail.com>
0011   - Gustavo Pimentel <gustavo.pimentel@synopsys.com>
0012 
0013 description: |
0014   Synopsys DesignWare PCIe host controller
0015 
0016 allOf:
0017   - $ref: /schemas/pci/pci-bus.yaml#
0018 
0019 properties:
0020   compatible:
0021     anyOf:
0022       - {}
0023       - const: snps,dw-pcie
0024 
0025   reg:
0026     description: |
0027       It should contain Data Bus Interface (dbi) and config registers for all
0028       versions.
0029       For designware core version >= 4.80, it may contain ATU address space.
0030     minItems: 2
0031     maxItems: 5
0032 
0033   reg-names:
0034     minItems: 2
0035     maxItems: 5
0036     items:
0037       enum: [ dbi, dbi2, config, atu, atu_dma, app, appl, elbi, mgmt, ctrl,
0038               parf, cfg, link, ulreg, smu, mpu, apb, phy ]
0039 
0040   num-lanes:
0041     description: |
0042       number of lanes to use (this property should be specified unless
0043       the link is brought already up in firmware)
0044     maximum: 16
0045 
0046   reset-gpio:
0047     description: GPIO pin number of PERST# signal
0048     maxItems: 1
0049     deprecated: true
0050 
0051   reset-gpios:
0052     description: GPIO controlled connection to PERST# signal
0053     maxItems: 1
0054 
0055   interrupts: true
0056 
0057   interrupt-names: true
0058 
0059   clocks: true
0060 
0061   snps,enable-cdm-check:
0062     type: boolean
0063     description: |
0064       This is a boolean property and if present enables
0065       automatic checking of CDM (Configuration Dependent Module) registers
0066       for data corruption. CDM registers include standard PCIe configuration
0067       space registers, Port Logic registers, DMA and iATU (internal Address
0068       Translation Unit) registers.
0069 
0070   num-viewport:
0071     $ref: /schemas/types.yaml#/definitions/uint32
0072     maximum: 256
0073     description: |
0074       number of view ports configured in hardware. If a platform
0075       does not specify it, the driver autodetects it.
0076     deprecated: true
0077 
0078 additionalProperties: true
0079 
0080 required:
0081   - reg
0082   - reg-names
0083   - compatible
0084 
0085 examples:
0086   - |
0087     bus {
0088       #address-cells = <1>;
0089       #size-cells = <1>;
0090       pcie@dfc00000 {
0091         device_type = "pci";
0092         compatible = "snps,dw-pcie";
0093         reg = <0xdfc00000 0x0001000>, /* IP registers */
0094               <0xd0000000 0x0002000>; /* Configuration space */
0095         reg-names = "dbi", "config";
0096         #address-cells = <3>;
0097         #size-cells = <2>;
0098         ranges = <0x81000000 0 0x00000000 0xde000000 0 0x00010000>,
0099                  <0x82000000 0 0xd0400000 0xd0400000 0 0x0d000000>;
0100         interrupts = <25>, <24>;
0101         #interrupt-cells = <1>;
0102         num-lanes = <1>;
0103       };
0104     };