holly.dts 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198
  1. /*
  2. * Device Tree Source for IBM Holly (PPC 750CL with TSI controller)
  3. * Copyright 2007, IBM Corporation
  4. *
  5. * Stephen Winiecki <stevewin@us.ibm.com>
  6. * Josh Boyer <jwboyer@linux.vnet.ibm.com>
  7. *
  8. * This file is licensed under the terms of the GNU General Public
  9. * License version 2. This program is licensed "as is" without
  10. * any warranty of any kind, whether express or implied.
  11. *
  12. * To build:
  13. * dtc -I dts -O asm -o holly.S -b 0 holly.dts
  14. * dtc -I dts -O dtb -o holly.dtb -b 0 holly.dts
  15. */
  16. / {
  17. model = "41K7339";
  18. compatible = "ibm,holly";
  19. #address-cells = <1>;
  20. #size-cells = <1>;
  21. cpus {
  22. #address-cells = <1>;
  23. #size-cells =<0>;
  24. PowerPC,750CL@0 {
  25. device_type = "cpu";
  26. reg = <0>;
  27. d-cache-line-size = <20>;
  28. i-cache-line-size = <20>;
  29. d-cache-size = <8000>;
  30. i-cache-size = <8000>;
  31. d-cache-sets = <80>;
  32. i-cache-sets = <80>;
  33. timebase-frequency = <2faf080>;
  34. clock-frequency = <23c34600>;
  35. bus-frequency = <bebc200>;
  36. 32-bit;
  37. };
  38. };
  39. memory@0 {
  40. device_type = "memory";
  41. reg = <00000000 20000000>;
  42. };
  43. tsi109@c0000000 {
  44. device_type = "tsi-bridge";
  45. compatible = "tsi-bridge";
  46. #address-cells = <1>;
  47. #size-cells = <1>;
  48. ranges = <00000000 c0000000 00010000>;
  49. reg = <c0000000 00010000>;
  50. i2c@7000 {
  51. device_type = "i2c";
  52. compatible = "tsi-i2c";
  53. interrupt-parent = < &/tsi109@c0000000/pic@7400 >;
  54. interrupts = <e 2>;
  55. reg = <7000 400>;
  56. };
  57. mdio@6000 {
  58. device_type = "mdio";
  59. compatible = "tsi-ethernet";
  60. PHY1: ethernet-phy@6000 {
  61. device_type = "ethernet-phy";
  62. compatible = "bcm54xx";
  63. reg = <6000 50>;
  64. phy-id = <1>;
  65. };
  66. PHY2: ethernet-phy@6400 {
  67. device_type = "ethernet-phy";
  68. compatible = "bcm54xx";
  69. reg = <6000 50>;
  70. phy-id = <2>;
  71. };
  72. };
  73. ethernet@6200 {
  74. device_type = "network";
  75. compatible = "tsi-ethernet";
  76. #address-cells = <1>;
  77. #size-cells = <0>;
  78. reg = <6000 200>;
  79. local-mac-address = [ 00 00 00 00 00 00 ];
  80. interrupt-parent = < &/tsi109@c0000000/pic@7400 >;
  81. interrupts = <10 2>;
  82. phy-handle = <&PHY1>;
  83. };
  84. ethernet@6600 {
  85. device_type = "network";
  86. compatible = "tsi-ethernet";
  87. #address-cells = <1>;
  88. #size-cells = <0>;
  89. reg = <6400 200>;
  90. local-mac-address = [ 00 00 00 00 00 00 ];
  91. interrupt-parent = < &/tsi109@c0000000/pic@7400 >;
  92. interrupts = <11 2>;
  93. phy-handle = <&PHY2>;
  94. };
  95. serial@7808 {
  96. device_type = "serial";
  97. compatible = "ns16550";
  98. reg = <7808 200>;
  99. virtual-reg = <c0007808>;
  100. clock-frequency = <3F9C6000>;
  101. current-speed = <1c200>;
  102. interrupt-parent = < &/tsi109@c0000000/pic@7400 >;
  103. interrupts = <c 2>;
  104. };
  105. serial@7c08 {
  106. device_type = "serial";
  107. compatible = "ns16550";
  108. reg = <7c08 200>;
  109. virtual-reg = <c0007c08>;
  110. clock-frequency = <3F9C6000>;
  111. current-speed = <1c200>;
  112. interrupt-parent = < &/tsi109@c0000000/pic@7400 >;
  113. interrupts = <d 2>;
  114. };
  115. MPIC: pic@7400 {
  116. device_type = "open-pic";
  117. compatible = "chrp,open-pic";
  118. interrupt-controller;
  119. #interrupt-cells = <2>;
  120. reg = <7400 400>;
  121. big-endian;
  122. };
  123. pci@1000 {
  124. device_type = "pci";
  125. compatible = "tsi109";
  126. #interrupt-cells = <1>;
  127. #size-cells = <2>;
  128. #address-cells = <3>;
  129. reg = <1000 1000>;
  130. bus-range = <0 0>;
  131. /*----------------------------------------------------+
  132. | PCI memory range.
  133. | 01 denotes I/O space
  134. | 02 denotes 32-bit memory space
  135. +----------------------------------------------------*/
  136. ranges = <02000000 0 40000000 40000000 0 10000000
  137. 01000000 0 00000000 7e000000 0 00010000>;
  138. clock-frequency = <7f28154>;
  139. interrupt-parent = < &/tsi109@c0000000/pic@7400 >;
  140. interrupts = <17 2>;
  141. interrupt-map-mask = <f800 0 0 7>;
  142. /*----------------------------------------------------+
  143. | The INTA, INTB, INTC, INTD are shared.
  144. +----------------------------------------------------*/
  145. interrupt-map = <
  146. 0800 0 0 1 &RT0 24 0
  147. 0800 0 0 2 &RT0 25 0
  148. 0800 0 0 3 &RT0 26 0
  149. 0800 0 0 4 &RT0 27 0
  150. 1000 0 0 1 &RT0 25 0
  151. 1000 0 0 2 &RT0 26 0
  152. 1000 0 0 3 &RT0 27 0
  153. 1000 0 0 4 &RT0 24 0
  154. 1800 0 0 1 &RT0 26 0
  155. 1800 0 0 2 &RT0 27 0
  156. 1800 0 0 3 &RT0 24 0
  157. 1800 0 0 4 &RT0 25 0
  158. 2000 0 0 1 &RT0 27 0
  159. 2000 0 0 2 &RT0 24 0
  160. 2000 0 0 3 &RT0 25 0
  161. 2000 0 0 4 &RT0 26 0
  162. >;
  163. RT0: router@1180 {
  164. device_type = "pic-router";
  165. interrupt-controller;
  166. big-endian;
  167. clock-frequency = <0>;
  168. #address-cells = <0>;
  169. #interrupt-cells = <2>;
  170. interrupts = <17 2>;
  171. interrupt-parent = < &/tsi109@c0000000/pic@7400 >;
  172. };
  173. };
  174. };
  175. chosen {
  176. linux,stdout-path = "/tsi109@c0000000/serial@7808";
  177. bootargs = "console=ttyS0,115200";
  178. };
  179. };