holly.dts 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200
  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 = "tsi109-bridge", "tsi108-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 = "tsi109-i2c", "tsi108-i2c";
  53. interrupt-parent = <&MPIC>;
  54. interrupts = <e 2>;
  55. reg = <7000 400>;
  56. };
  57. MDIO: mdio@6000 {
  58. device_type = "mdio";
  59. compatible = "tsi109-mdio", "tsi108-mdio";
  60. reg = <6000 50>;
  61. #address-cells = <1>;
  62. #size-cells = <0>;
  63. PHY1: ethernet-phy@1 {
  64. compatible = "bcm5461a";
  65. reg = <1>;
  66. txc-rxc-delay-disable;
  67. };
  68. PHY2: ethernet-phy@2 {
  69. compatible = "bcm5461a";
  70. reg = <2>;
  71. txc-rxc-delay-disable;
  72. };
  73. };
  74. ethernet@6200 {
  75. device_type = "network";
  76. compatible = "tsi109-ethernet", "tsi108-ethernet";
  77. #address-cells = <1>;
  78. #size-cells = <0>;
  79. reg = <6000 200>;
  80. local-mac-address = [ 00 00 00 00 00 00 ];
  81. interrupt-parent = <&MPIC>;
  82. interrupts = <10 2>;
  83. mdio-handle = <&MDIO>;
  84. phy-handle = <&PHY1>;
  85. };
  86. ethernet@6600 {
  87. device_type = "network";
  88. compatible = "tsi109-ethernet", "tsi108-ethernet";
  89. #address-cells = <1>;
  90. #size-cells = <0>;
  91. reg = <6400 200>;
  92. local-mac-address = [ 00 00 00 00 00 00 ];
  93. interrupt-parent = <&MPIC>;
  94. interrupts = <11 2>;
  95. mdio-handle = <&MDIO>;
  96. phy-handle = <&PHY2>;
  97. };
  98. serial@7808 {
  99. device_type = "serial";
  100. compatible = "ns16550";
  101. reg = <7808 200>;
  102. virtual-reg = <c0007808>;
  103. clock-frequency = <3F9C6000>;
  104. current-speed = <1c200>;
  105. interrupt-parent = <&MPIC>;
  106. interrupts = <c 2>;
  107. };
  108. serial@7c08 {
  109. device_type = "serial";
  110. compatible = "ns16550";
  111. reg = <7c08 200>;
  112. virtual-reg = <c0007c08>;
  113. clock-frequency = <3F9C6000>;
  114. current-speed = <1c200>;
  115. interrupt-parent = <&MPIC>;
  116. interrupts = <d 2>;
  117. };
  118. MPIC: pic@7400 {
  119. device_type = "open-pic";
  120. compatible = "chrp,open-pic";
  121. interrupt-controller;
  122. #interrupt-cells = <2>;
  123. reg = <7400 400>;
  124. big-endian;
  125. };
  126. pci@1000 {
  127. device_type = "pci";
  128. compatible = "tsi109-pci", "tsi108-pci";
  129. #interrupt-cells = <1>;
  130. #size-cells = <2>;
  131. #address-cells = <3>;
  132. reg = <1000 1000>;
  133. bus-range = <0 0>;
  134. /*----------------------------------------------------+
  135. | PCI memory range.
  136. | 01 denotes I/O space
  137. | 02 denotes 32-bit memory space
  138. +----------------------------------------------------*/
  139. ranges = <02000000 0 40000000 40000000 0 10000000
  140. 01000000 0 00000000 7e000000 0 00010000>;
  141. clock-frequency = <7f28154>;
  142. interrupt-parent = <&MPIC>;
  143. interrupts = <17 2>;
  144. interrupt-map-mask = <f800 0 0 7>;
  145. /*----------------------------------------------------+
  146. | The INTA, INTB, INTC, INTD are shared.
  147. +----------------------------------------------------*/
  148. interrupt-map = <
  149. 0800 0 0 1 &RT0 24 0
  150. 0800 0 0 2 &RT0 25 0
  151. 0800 0 0 3 &RT0 26 0
  152. 0800 0 0 4 &RT0 27 0
  153. 1000 0 0 1 &RT0 25 0
  154. 1000 0 0 2 &RT0 26 0
  155. 1000 0 0 3 &RT0 27 0
  156. 1000 0 0 4 &RT0 24 0
  157. 1800 0 0 1 &RT0 26 0
  158. 1800 0 0 2 &RT0 27 0
  159. 1800 0 0 3 &RT0 24 0
  160. 1800 0 0 4 &RT0 25 0
  161. 2000 0 0 1 &RT0 27 0
  162. 2000 0 0 2 &RT0 24 0
  163. 2000 0 0 3 &RT0 25 0
  164. 2000 0 0 4 &RT0 26 0
  165. >;
  166. RT0: router@1180 {
  167. device_type = "pic-router";
  168. interrupt-controller;
  169. big-endian;
  170. clock-frequency = <0>;
  171. #address-cells = <0>;
  172. #interrupt-cells = <2>;
  173. interrupts = <17 2>;
  174. interrupt-parent = <&MPIC>;
  175. };
  176. };
  177. };
  178. chosen {
  179. linux,stdout-path = "/tsi109@c0000000/serial@7808";
  180. };
  181. };