1*4882a593Smuzhiyun* Samsung Exynos 5440 PCIe interface 2*4882a593Smuzhiyun 3*4882a593SmuzhiyunThis PCIe host controller is based on the Synopsys DesignWare PCIe IP 4*4882a593Smuzhiyunand thus inherits all the common properties defined in designware-pcie.txt. 5*4882a593Smuzhiyun 6*4882a593SmuzhiyunRequired properties: 7*4882a593Smuzhiyun- compatible: "samsung,exynos5440-pcie" 8*4882a593Smuzhiyun- reg: base addresses and lengths of the PCIe controller, 9*4882a593Smuzhiyun- reg-names : First name should be set to "elbi". 10*4882a593Smuzhiyun And use the "config" instead of getting the configuration address space 11*4882a593Smuzhiyun from "ranges". 12*4882a593Smuzhiyun NOTE: When using the "config" property, reg-names must be set. 13*4882a593Smuzhiyun- interrupts: A list of interrupt outputs for level interrupt, 14*4882a593Smuzhiyun pulse interrupt, special interrupt. 15*4882a593Smuzhiyun- phys: From PHY binding. Phandle for the generic PHY. 16*4882a593Smuzhiyun Refer to Documentation/devicetree/bindings/phy/samsung-phy.txt 17*4882a593Smuzhiyun 18*4882a593SmuzhiyunFor other common properties, refer to 19*4882a593Smuzhiyun Documentation/devicetree/bindings/pci/designware-pcie.txt 20*4882a593Smuzhiyun 21*4882a593SmuzhiyunExample: 22*4882a593Smuzhiyun 23*4882a593SmuzhiyunSoC-specific DT Entry (with using PHY framework): 24*4882a593Smuzhiyun 25*4882a593Smuzhiyun pcie_phy0: pcie-phy@270000 { 26*4882a593Smuzhiyun ... 27*4882a593Smuzhiyun reg = <0x270000 0x1000>, <0x271000 0x40>; 28*4882a593Smuzhiyun reg-names = "phy", "block"; 29*4882a593Smuzhiyun ... 30*4882a593Smuzhiyun }; 31*4882a593Smuzhiyun 32*4882a593Smuzhiyun pcie@290000 { 33*4882a593Smuzhiyun compatible = "samsung,exynos5440-pcie", "snps,dw-pcie"; 34*4882a593Smuzhiyun reg = <0x290000 0x1000>, <0x40000000 0x1000>; 35*4882a593Smuzhiyun reg-names = "elbi", "config"; 36*4882a593Smuzhiyun clocks = <&clock 28>, <&clock 27>; 37*4882a593Smuzhiyun clock-names = "pcie", "pcie_bus"; 38*4882a593Smuzhiyun #address-cells = <3>; 39*4882a593Smuzhiyun #size-cells = <2>; 40*4882a593Smuzhiyun device_type = "pci"; 41*4882a593Smuzhiyun phys = <&pcie_phy0>; 42*4882a593Smuzhiyun ranges = <0x81000000 0 0 0x60001000 0 0x00010000 43*4882a593Smuzhiyun 0x82000000 0 0x60011000 0x60011000 0 0x1ffef000>; 44*4882a593Smuzhiyun #interrupt-cells = <1>; 45*4882a593Smuzhiyun interrupt-map-mask = <0 0 0 0>; 46*4882a593Smuzhiyun interrupt-map = <0 0 0 0 &gic GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>; 47*4882a593Smuzhiyun num-lanes = <4>; 48*4882a593Smuzhiyun }; 49*4882a593Smuzhiyun 50*4882a593SmuzhiyunBoard-specific DT Entry: 51*4882a593Smuzhiyun 52*4882a593Smuzhiyun pcie@290000 { 53*4882a593Smuzhiyun reset-gpio = <&pin_ctrl 5 0>; 54*4882a593Smuzhiyun }; 55*4882a593Smuzhiyun 56*4882a593Smuzhiyun pcie@2a0000 { 57*4882a593Smuzhiyun reset-gpio = <&pin_ctrl 22 0>; 58*4882a593Smuzhiyun }; 59