amd-seattle-soc.dtsi 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172
  1. /*
  2. * DTS file for AMD Seattle SoC
  3. *
  4. * Copyright (C) 2014 Advanced Micro Devices, Inc.
  5. */
  6. / {
  7. compatible = "amd,seattle";
  8. interrupt-parent = <&gic0>;
  9. #address-cells = <2>;
  10. #size-cells = <2>;
  11. gic0: interrupt-controller@e1101000 {
  12. compatible = "arm,gic-400", "arm,cortex-a15-gic";
  13. interrupt-controller;
  14. #interrupt-cells = <3>;
  15. #address-cells = <2>;
  16. #size-cells = <2>;
  17. reg = <0x0 0xe1110000 0 0x1000>,
  18. <0x0 0xe112f000 0 0x2000>,
  19. <0x0 0xe1140000 0 0x10000>,
  20. <0x0 0xe1160000 0 0x10000>;
  21. interrupts = <1 9 0xf04>;
  22. ranges = <0 0 0 0xe1100000 0 0x100000>;
  23. v2m0: v2m@e0080000 {
  24. compatible = "arm,gic-v2m-frame";
  25. msi-controller;
  26. reg = <0x0 0x00080000 0 0x1000>;
  27. };
  28. };
  29. timer {
  30. compatible = "arm,armv8-timer";
  31. interrupts = <1 13 0xff04>,
  32. <1 14 0xff04>,
  33. <1 11 0xff04>,
  34. <1 10 0xff04>;
  35. };
  36. pmu {
  37. compatible = "arm,armv8-pmuv3";
  38. interrupts = <0 7 4>,
  39. <0 8 4>,
  40. <0 9 4>,
  41. <0 10 4>,
  42. <0 11 4>,
  43. <0 12 4>,
  44. <0 13 4>,
  45. <0 14 4>;
  46. };
  47. smb0: smb {
  48. compatible = "simple-bus";
  49. #address-cells = <2>;
  50. #size-cells = <2>;
  51. ranges;
  52. /* DDR range is 40-bit addressing */
  53. dma-ranges = <0x80 0x0 0x80 0x0 0x7f 0xffffffff>;
  54. /include/ "amd-seattle-clks.dtsi"
  55. sata0: sata@e0300000 {
  56. compatible = "snps,dwc-ahci";
  57. reg = <0 0xe0300000 0 0x800>;
  58. interrupts = <0 355 4>;
  59. clocks = <&sataclk_333mhz>;
  60. dma-coherent;
  61. };
  62. i2c0: i2c@e1000000 {
  63. status = "disabled";
  64. compatible = "snps,designware-i2c";
  65. reg = <0 0xe1000000 0 0x1000>;
  66. interrupts = <0 357 4>;
  67. clocks = <&uartspiclk_100mhz>;
  68. };
  69. serial0: serial@e1010000 {
  70. compatible = "arm,pl011", "arm,primecell";
  71. reg = <0 0xe1010000 0 0x1000>;
  72. interrupts = <0 328 4>;
  73. clocks = <&uartspiclk_100mhz>, <&uartspiclk_100mhz>;
  74. clock-names = "uartclk", "apb_pclk";
  75. };
  76. spi0: ssp@e1020000 {
  77. status = "disabled";
  78. compatible = "arm,pl022", "arm,primecell";
  79. #gpio-cells = <2>;
  80. reg = <0 0xe1020000 0 0x1000>;
  81. spi-controller;
  82. interrupts = <0 330 4>;
  83. clocks = <&uartspiclk_100mhz>;
  84. clock-names = "apb_pclk";
  85. };
  86. spi1: ssp@e1030000 {
  87. status = "disabled";
  88. compatible = "arm,pl022", "arm,primecell";
  89. #gpio-cells = <2>;
  90. reg = <0 0xe1030000 0 0x1000>;
  91. spi-controller;
  92. interrupts = <0 329 4>;
  93. clocks = <&uartspiclk_100mhz>;
  94. clock-names = "apb_pclk";
  95. num-cs = <1>;
  96. #address-cells = <1>;
  97. #size-cells = <0>;
  98. };
  99. gpio0: gpio@e1040000 {
  100. status = "disabled";
  101. compatible = "arm,pl061", "arm,primecell";
  102. #gpio-cells = <2>;
  103. reg = <0 0xe1040000 0 0x1000>;
  104. gpio-controller;
  105. interrupts = <0 359 4>;
  106. interrupt-controller;
  107. #interrupt-cells = <2>;
  108. clocks = <&uartspiclk_100mhz>;
  109. clock-names = "apb_pclk";
  110. };
  111. gpio1: gpio@e1050000 {
  112. status = "disabled";
  113. compatible = "arm,pl061", "arm,primecell";
  114. #gpio-cells = <2>;
  115. reg = <0 0xe1050000 0 0x1000>;
  116. gpio-controller;
  117. interrupts = <0 358 4>;
  118. clocks = <&uartspiclk_100mhz>;
  119. clock-names = "apb_pclk";
  120. };
  121. ccp0: ccp@e0100000 {
  122. status = "disabled";
  123. compatible = "amd,ccp-seattle-v1a";
  124. reg = <0 0xe0100000 0 0x10000>;
  125. interrupts = <0 3 4>;
  126. dma-coherent;
  127. };
  128. pcie0: pcie@f0000000 {
  129. compatible = "pci-host-ecam-generic";
  130. #address-cells = <3>;
  131. #size-cells = <2>;
  132. #interrupt-cells = <1>;
  133. device_type = "pci";
  134. bus-range = <0 0x7f>;
  135. msi-parent = <&v2m0>;
  136. reg = <0 0xf0000000 0 0x10000000>;
  137. interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
  138. interrupt-map =
  139. <0x1000 0x0 0x0 0x1 &gic0 0x0 0x0 0x0 0x120 0x1>,
  140. <0x1000 0x0 0x0 0x2 &gic0 0x0 0x0 0x0 0x121 0x1>,
  141. <0x1000 0x0 0x0 0x3 &gic0 0x0 0x0 0x0 0x122 0x1>,
  142. <0x1000 0x0 0x0 0x4 &gic0 0x0 0x0 0x0 0x123 0x1>;
  143. dma-coherent;
  144. dma-ranges = <0x43000000 0x80 0x0 0x80 0x0 0x7f 0xffffffff>;
  145. ranges =
  146. /* I/O Memory (size=64K) */
  147. <0x01000000 0x00 0x00000000 0x00 0xefff0000 0x00 0x00010000>,
  148. /* 32-bit MMIO (size=2G) */
  149. <0x02000000 0x00 0x40000000 0x00 0x40000000 0x00 0x80000000>,
  150. /* 64-bit MMIO (size= 124G) */
  151. <0x03000000 0x01 0x00000000 0x01 0x00000000 0x7f 0x00000000>;
  152. };
  153. };
  154. };