pxa910.dtsi 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177
  1. // SPDX-License-Identifier: GPL-2.0-only
  2. /*
  3. * Copyright (C) 2012 Marvell Technology Group Ltd.
  4. * Author: Haojian Zhuang <[email protected]>
  5. */
  6. #include <dt-bindings/clock/marvell,pxa910.h>
  7. / {
  8. #address-cells = <1>;
  9. #size-cells = <1>;
  10. aliases {
  11. serial0 = &uart1;
  12. serial1 = &uart2;
  13. serial2 = &uart3;
  14. i2c0 = &twsi1;
  15. i2c1 = &twsi2;
  16. };
  17. soc {
  18. #address-cells = <1>;
  19. #size-cells = <1>;
  20. compatible = "simple-bus";
  21. interrupt-parent = <&intc>;
  22. ranges;
  23. L2: l2-cache {
  24. compatible = "marvell,tauros2-cache";
  25. marvell,tauros2-cache-features = <0x3>;
  26. };
  27. axi@d4200000 { /* AXI */
  28. compatible = "mrvl,axi-bus", "simple-bus";
  29. #address-cells = <1>;
  30. #size-cells = <1>;
  31. reg = <0xd4200000 0x00200000>;
  32. ranges;
  33. intc: interrupt-controller@d4282000 {
  34. compatible = "mrvl,mmp-intc";
  35. interrupt-controller;
  36. #interrupt-cells = <1>;
  37. reg = <0xd4282000 0x1000>;
  38. mrvl,intc-nr-irqs = <64>;
  39. };
  40. };
  41. apb@d4000000 { /* APB */
  42. compatible = "mrvl,apb-bus", "simple-bus";
  43. #address-cells = <1>;
  44. #size-cells = <1>;
  45. reg = <0xd4000000 0x00200000>;
  46. ranges;
  47. timer0: timer@d4014000 {
  48. compatible = "mrvl,mmp-timer";
  49. reg = <0xd4014000 0x100>;
  50. interrupts = <13>;
  51. };
  52. timer1: timer@d4016000 {
  53. compatible = "mrvl,mmp-timer";
  54. reg = <0xd4016000 0x100>;
  55. interrupts = <29>;
  56. status = "disabled";
  57. };
  58. uart1: serial@d4017000 {
  59. compatible = "mrvl,mmp-uart", "intel,xscale-uart";
  60. reg = <0xd4017000 0x1000>;
  61. reg-shift = <2>;
  62. interrupts = <27>;
  63. clocks = <&soc_clocks PXA910_CLK_UART0>;
  64. resets = <&soc_clocks PXA910_CLK_UART0>;
  65. status = "disabled";
  66. };
  67. uart2: serial@d4018000 {
  68. compatible = "mrvl,mmp-uart", "intel,xscale-uart";
  69. reg = <0xd4018000 0x1000>;
  70. reg-shift = <2>;
  71. interrupts = <28>;
  72. clocks = <&soc_clocks PXA910_CLK_UART1>;
  73. resets = <&soc_clocks PXA910_CLK_UART1>;
  74. status = "disabled";
  75. };
  76. uart3: serial@d4036000 {
  77. compatible = "mrvl,mmp-uart", "intel,xscale-uart";
  78. reg = <0xd4036000 0x1000>;
  79. reg-shift = <2>;
  80. interrupts = <59>;
  81. clocks = <&soc_clocks PXA910_CLK_UART2>;
  82. resets = <&soc_clocks PXA910_CLK_UART2>;
  83. status = "disabled";
  84. };
  85. gpio@d4019000 {
  86. compatible = "marvell,mmp-gpio";
  87. #address-cells = <1>;
  88. #size-cells = <1>;
  89. reg = <0xd4019000 0x1000>;
  90. gpio-controller;
  91. #gpio-cells = <2>;
  92. interrupts = <49>;
  93. interrupt-names = "gpio_mux";
  94. clocks = <&soc_clocks PXA910_CLK_GPIO>;
  95. resets = <&soc_clocks PXA910_CLK_GPIO>;
  96. interrupt-controller;
  97. #interrupt-cells = <2>;
  98. ranges;
  99. gcb0: gpio@d4019000 {
  100. reg = <0xd4019000 0x4>;
  101. };
  102. gcb1: gpio@d4019004 {
  103. reg = <0xd4019004 0x4>;
  104. };
  105. gcb2: gpio@d4019008 {
  106. reg = <0xd4019008 0x4>;
  107. };
  108. gcb3: gpio@d4019100 {
  109. reg = <0xd4019100 0x4>;
  110. };
  111. };
  112. twsi1: i2c@d4011000 {
  113. compatible = "mrvl,mmp-twsi";
  114. #address-cells = <1>;
  115. #size-cells = <0>;
  116. reg = <0xd4011000 0x1000>;
  117. interrupts = <7>;
  118. clocks = <&soc_clocks PXA910_CLK_TWSI0>;
  119. resets = <&soc_clocks PXA910_CLK_TWSI0>;
  120. mrvl,i2c-fast-mode;
  121. status = "disabled";
  122. };
  123. twsi2: i2c@d4037000 {
  124. compatible = "mrvl,mmp-twsi";
  125. #address-cells = <1>;
  126. #size-cells = <0>;
  127. reg = <0xd4037000 0x1000>;
  128. interrupts = <54>;
  129. clocks = <&soc_clocks PXA910_CLK_TWSI1>;
  130. resets = <&soc_clocks PXA910_CLK_TWSI1>;
  131. status = "disabled";
  132. };
  133. rtc: rtc@d4010000 {
  134. compatible = "mrvl,mmp-rtc";
  135. reg = <0xd4010000 0x1000>;
  136. interrupts = <5>, <6>;
  137. interrupt-names = "rtc 1Hz", "rtc alarm";
  138. clocks = <&soc_clocks PXA910_CLK_RTC>;
  139. resets = <&soc_clocks PXA910_CLK_RTC>;
  140. status = "disabled";
  141. };
  142. };
  143. soc_clocks: clocks{
  144. compatible = "marvell,pxa910-clock";
  145. reg = <0xd4050000 0x1000>,
  146. <0xd4282800 0x400>,
  147. <0xd4015000 0x1000>,
  148. <0xd403b000 0x1000>;
  149. reg-names = "mpmu", "apmu", "apbc", "apbcp";
  150. #clock-cells = <1>;
  151. #reset-cells = <1>;
  152. };
  153. };
  154. };