wm8650.dtsi 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163
  1. /*
  2. * wm8650.dtsi - Device tree file for Wondermedia WM8650 SoC
  3. *
  4. * Copyright (C) 2012 Tony Prisk <linux@prisktech.co.nz>
  5. *
  6. * Licensed under GPLv2 or later
  7. */
  8. /include/ "skeleton.dtsi"
  9. / {
  10. compatible = "wm,wm8650";
  11. soc {
  12. #address-cells = <1>;
  13. #size-cells = <1>;
  14. compatible = "simple-bus";
  15. ranges;
  16. interrupt-parent = <&intc0>;
  17. intc0: interrupt-controller@d8140000 {
  18. compatible = "via,vt8500-intc";
  19. interrupt-controller;
  20. reg = <0xd8140000 0x10000>;
  21. #interrupt-cells = <1>;
  22. };
  23. /* Secondary IC cascaded to intc0 */
  24. intc1: interrupt-controller@d8150000 {
  25. compatible = "via,vt8500-intc";
  26. interrupt-controller;
  27. #interrupt-cells = <1>;
  28. reg = <0xD8150000 0x10000>;
  29. interrupts = <56 57 58 59 60 61 62 63>;
  30. };
  31. pinctrl: pinctrl@d8110000 {
  32. compatible = "wm,wm8650-pinctrl";
  33. reg = <0xd8110000 0x10000>;
  34. interrupt-controller;
  35. #interrupt-cells = <2>;
  36. gpio-controller;
  37. #gpio-cells = <2>;
  38. };
  39. pmc@d8130000 {
  40. compatible = "via,vt8500-pmc";
  41. reg = <0xd8130000 0x1000>;
  42. clocks {
  43. #address-cells = <1>;
  44. #size-cells = <0>;
  45. ref25: ref25M {
  46. #clock-cells = <0>;
  47. compatible = "fixed-clock";
  48. clock-frequency = <25000000>;
  49. };
  50. ref24: ref24M {
  51. #clock-cells = <0>;
  52. compatible = "fixed-clock";
  53. clock-frequency = <24000000>;
  54. };
  55. plla: plla {
  56. #clock-cells = <0>;
  57. compatible = "wm,wm8650-pll-clock";
  58. clocks = <&ref25>;
  59. reg = <0x200>;
  60. };
  61. pllb: pllb {
  62. #clock-cells = <0>;
  63. compatible = "wm,wm8650-pll-clock";
  64. clocks = <&ref25>;
  65. reg = <0x204>;
  66. };
  67. clkuart0: uart0 {
  68. #clock-cells = <0>;
  69. compatible = "via,vt8500-device-clock";
  70. clocks = <&ref24>;
  71. enable-reg = <0x250>;
  72. enable-bit = <1>;
  73. };
  74. clkuart1: uart1 {
  75. #clock-cells = <0>;
  76. compatible = "via,vt8500-device-clock";
  77. clocks = <&ref24>;
  78. enable-reg = <0x250>;
  79. enable-bit = <2>;
  80. };
  81. arm: arm {
  82. #clock-cells = <0>;
  83. compatible = "via,vt8500-device-clock";
  84. clocks = <&plla>;
  85. divisor-reg = <0x300>;
  86. };
  87. sdhc: sdhc {
  88. #clock-cells = <0>;
  89. compatible = "via,vt8500-device-clock";
  90. clocks = <&pllb>;
  91. divisor-reg = <0x328>;
  92. divisor-mask = <0x3f>;
  93. enable-reg = <0x254>;
  94. enable-bit = <18>;
  95. };
  96. };
  97. };
  98. timer@d8130100 {
  99. compatible = "via,vt8500-timer";
  100. reg = <0xd8130100 0x28>;
  101. interrupts = <36>;
  102. };
  103. ehci@d8007900 {
  104. compatible = "via,vt8500-ehci";
  105. reg = <0xd8007900 0x200>;
  106. interrupts = <43>;
  107. };
  108. uhci@d8007b00 {
  109. compatible = "platform-uhci";
  110. reg = <0xd8007b00 0x200>;
  111. interrupts = <43>;
  112. };
  113. fb: fb@d8050800 {
  114. compatible = "wm,wm8505-fb";
  115. reg = <0xd8050800 0x200>;
  116. };
  117. ge_rops@d8050400 {
  118. compatible = "wm,prizm-ge-rops";
  119. reg = <0xd8050400 0x100>;
  120. };
  121. uart@d8200000 {
  122. compatible = "via,vt8500-uart";
  123. reg = <0xd8200000 0x1040>;
  124. interrupts = <32>;
  125. clocks = <&clkuart0>;
  126. };
  127. uart@d82b0000 {
  128. compatible = "via,vt8500-uart";
  129. reg = <0xd82b0000 0x1040>;
  130. interrupts = <33>;
  131. clocks = <&clkuart1>;
  132. };
  133. rtc@d8100000 {
  134. compatible = "via,vt8500-rtc";
  135. reg = <0xd8100000 0x10000>;
  136. interrupts = <48>;
  137. };
  138. };
  139. };