versatile.txt 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. * ARM Versatile Platform Baseboard PCI interface
  2. PCI host controller found on the ARM Versatile PB board's FPGA.
  3. Required properties:
  4. - compatible: should contain "arm,versatile-pci" to identify the Versatile PCI
  5. controller.
  6. - reg: base addresses and lengths of the pci controller. There must be 3
  7. entries:
  8. - Versatile-specific registers
  9. - Self Config space
  10. - Config space
  11. - #address-cells: set to <3>
  12. - #size-cells: set to <2>
  13. - device_type: set to "pci"
  14. - bus-range: set to <0 0xff>
  15. - ranges: ranges for the PCI memory and I/O regions
  16. - #interrupt-cells: set to <1>
  17. - interrupt-map-mask and interrupt-map: standard PCI properties to define
  18. the mapping of the PCI interface to interrupt numbers.
  19. Example:
  20. pci-controller@10001000 {
  21. compatible = "arm,versatile-pci";
  22. device_type = "pci";
  23. reg = <0x10001000 0x1000
  24. 0x41000000 0x10000
  25. 0x42000000 0x100000>;
  26. bus-range = <0 0xff>;
  27. #address-cells = <3>;
  28. #size-cells = <2>;
  29. #interrupt-cells = <1>;
  30. ranges = <0x01000000 0 0x00000000 0x43000000 0 0x00010000 /* downstream I/O */
  31. 0x02000000 0 0x50000000 0x50000000 0 0x10000000 /* non-prefetchable memory */
  32. 0x42000000 0 0x60000000 0x60000000 0 0x10000000>; /* prefetchable memory */
  33. interrupt-map-mask = <0x1800 0 0 7>;
  34. interrupt-map = <0x1800 0 0 1 &sic 28
  35. 0x1800 0 0 2 &sic 29
  36. 0x1800 0 0 3 &sic 30
  37. 0x1800 0 0 4 &sic 27
  38. 0x1000 0 0 1 &sic 27
  39. 0x1000 0 0 2 &sic 28
  40. 0x1000 0 0 3 &sic 29
  41. 0x1000 0 0 4 &sic 30
  42. 0x0800 0 0 1 &sic 30
  43. 0x0800 0 0 2 &sic 27
  44. 0x0800 0 0 3 &sic 28
  45. 0x0800 0 0 4 &sic 29
  46. 0x0000 0 0 1 &sic 29
  47. 0x0000 0 0 2 &sic 30
  48. 0x0000 0 0 3 &sic 27
  49. 0x0000 0 0 4 &sic 28>;
  50. };