rcar-pci.txt 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. * Renesas RCar PCIe interface
  2. Required properties:
  3. compatible: "renesas,pcie-r8a7779" for the R8A7779 SoC;
  4. "renesas,pcie-r8a7790" for the R8A7790 SoC;
  5. "renesas,pcie-r8a7791" for the R8A7791 SoC;
  6. "renesas,pcie-r8a7793" for the R8A7793 SoC;
  7. "renesas,pcie-r8a7795" for the R8A7795 SoC;
  8. "renesas,pcie-rcar-gen2" for a generic R-Car Gen2 compatible device.
  9. "renesas,pcie-rcar-gen3" for a generic R-Car Gen3 compatible device.
  10. When compatible with the generic version, nodes must list the
  11. SoC-specific version corresponding to the platform first
  12. followed by the generic version.
  13. - reg: base address and length of the pcie controller registers.
  14. - #address-cells: set to <3>
  15. - #size-cells: set to <2>
  16. - bus-range: PCI bus numbers covered
  17. - device_type: set to "pci"
  18. - ranges: ranges for the PCI memory and I/O regions.
  19. - dma-ranges: ranges for the inbound memory regions.
  20. - interrupts: two interrupt sources for MSI interrupts, followed by interrupt
  21. source for hardware related interrupts (e.g. link speed change).
  22. - #interrupt-cells: set to <1>
  23. - interrupt-map-mask and interrupt-map: standard PCI properties
  24. to define the mapping of the PCIe interface to interrupt
  25. numbers.
  26. - clocks: from common clock binding: clock specifiers for the PCIe controller
  27. and PCIe bus clocks.
  28. - clock-names: from common clock binding: should be "pcie" and "pcie_bus".
  29. Example:
  30. SoC specific DT Entry:
  31. pcie: pcie@fe000000 {
  32. compatible = "renesas,pcie-r8a7791", "renesas,pcie-rcar-gen2";
  33. reg = <0 0xfe000000 0 0x80000>;
  34. #address-cells = <3>;
  35. #size-cells = <2>;
  36. bus-range = <0x00 0xff>;
  37. device_type = "pci";
  38. ranges = <0x01000000 0 0x00000000 0 0xfe100000 0 0x00100000
  39. 0x02000000 0 0xfe200000 0 0xfe200000 0 0x00200000
  40. 0x02000000 0 0x30000000 0 0x30000000 0 0x08000000
  41. 0x42000000 0 0x38000000 0 0x38000000 0 0x08000000>;
  42. dma-ranges = <0x42000000 0 0x40000000 0 0x40000000 0 0x40000000
  43. 0x42000000 2 0x00000000 2 0x00000000 0 0x40000000>;
  44. interrupts = <0 116 4>, <0 117 4>, <0 118 4>;
  45. #interrupt-cells = <1>;
  46. interrupt-map-mask = <0 0 0 0>;
  47. interrupt-map = <0 0 0 0 &gic 0 116 4>;
  48. clocks = <&mstp3_clks R8A7791_CLK_PCIE>, <&pcie_bus_clk>;
  49. clock-names = "pcie", "pcie_bus";
  50. status = "disabled";
  51. };