ste-u300.dts 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226
  1. /*
  2. * Device Tree for the ST-Ericsson U300 Machine and SoC
  3. */
  4. /dts-v1/;
  5. /include/ "skeleton.dtsi"
  6. / {
  7. model = "ST-Ericsson U300";
  8. compatible = "stericsson,u300";
  9. #address-cells = <1>;
  10. #size-cells = <1>;
  11. chosen {
  12. bootargs = "root=/dev/ram0 console=ttyAMA0,115200n8 earlyprintk";
  13. };
  14. aliases {
  15. serial0 = &uart0;
  16. serial1 = &uart1;
  17. };
  18. memory {
  19. reg = <0x48000000 0x03c00000>;
  20. };
  21. s365 {
  22. compatible = "stericsson,s365";
  23. vana15-supply = <&ab3100_ldo_d_reg>;
  24. };
  25. timer: timer@c0014000 {
  26. compatible = "stericsson,u300-apptimer";
  27. reg = <0xc0014000 0x1000>;
  28. interrupt-parent = <&vica>;
  29. interrupts = <24 25 26 27>;
  30. };
  31. gpio: gpio@c0016000 {
  32. compatible = "stericsson,gpio-coh901";
  33. reg = <0xc0016000 0x1000>;
  34. interrupt-parent = <&vicb>;
  35. interrupts = <0 1 2 18 21 22 23>;
  36. interrupt-names = "gpio0", "gpio1", "gpio2", "gpio3",
  37. "gpio4", "gpio5", "gpio6";
  38. interrupt-controller;
  39. #interrupt-cells = <2>;
  40. gpio-controller;
  41. #gpio-cells = <2>;
  42. };
  43. pinctrl: pinctrl@c0011000 {
  44. compatible = "stericsson,pinctrl-u300";
  45. reg = <0xc0011000 0x1000>;
  46. };
  47. watchdog: watchdog@c0012000 {
  48. compatible = "stericsson,coh901327";
  49. reg = <0xc0012000 0x1000>;
  50. interrupt-parent = <&vicb>;
  51. interrupts = <3>;
  52. };
  53. rtc: rtc@c0017000 {
  54. compatible = "stericsson,coh901331";
  55. reg = <0xc0017000 0x1000>;
  56. interrupt-parent = <&vicb>;
  57. interrupts = <10>;
  58. };
  59. dmac: dma-controller@c00020000 {
  60. compatible = "stericsson,coh901318";
  61. reg = <0xc0020000 0x1000>;
  62. interrupt-parent = <&vica>;
  63. interrupts = <2>;
  64. #dma-cells = <1>;
  65. dma-channels = <40>;
  66. };
  67. i2c0: i2c@c0004000 {
  68. compatible = "st,ddci2c";
  69. reg = <0xc0004000 0x1000>;
  70. interrupt-parent = <&vicb>;
  71. interrupts = <8>;
  72. #address-cells = <1>;
  73. #size-cells = <0>;
  74. ab3100: ab3100@0x48 {
  75. compatible = "stericsson,ab3100";
  76. reg = <0x48>;
  77. interrupt-parent = <&vica>;
  78. interrupts = <0>; /* EXT0 IRQ */
  79. ab3100-regulators {
  80. compatible = "stericsson,ab3100-regulators";
  81. ab3100_ldo_a_reg: ab3100_ldo_a {
  82. regulator-compatible = "ab3100_ldo_a";
  83. startup-delay-us = <200>;
  84. regulator-always-on;
  85. regulator-boot-on;
  86. };
  87. ab3100_ldo_c_reg: ab3100_ldo_c {
  88. regulator-compatible = "ab3100_ldo_c";
  89. startup-delay-us = <200>;
  90. };
  91. ab3100_ldo_d_reg: ab3100_ldo_d {
  92. regulator-compatible = "ab3100_ldo_d";
  93. startup-delay-us = <200>;
  94. };
  95. ab3100_ldo_e_reg: ab3100_ldo_e {
  96. regulator-compatible = "ab3100_ldo_e";
  97. regulator-min-microvolt = <1800000>;
  98. regulator-max-microvolt = <1800000>;
  99. startup-delay-us = <200>;
  100. regulator-always-on;
  101. regulator-boot-on;
  102. };
  103. ab3100_ldo_f_reg: ab3100_ldo_f {
  104. regulator-compatible = "ab3100_ldo_f";
  105. regulator-min-microvolt = <2500000>;
  106. regulator-max-microvolt = <2500000>;
  107. startup-delay-us = <600>;
  108. regulator-always-on;
  109. regulator-boot-on;
  110. };
  111. ab3100_ldo_g_reg: ab3100_ldo_g {
  112. regulator-compatible = "ab3100_ldo_g";
  113. regulator-min-microvolt = <1500000>;
  114. regulator-max-microvolt = <2850000>;
  115. startup-delay-us = <400>;
  116. };
  117. ab3100_ldo_h_reg: ab3100_ldo_h {
  118. regulator-compatible = "ab3100_ldo_h";
  119. regulator-min-microvolt = <1200000>;
  120. regulator-max-microvolt = <2750000>;
  121. startup-delay-us = <200>;
  122. };
  123. ab3100_ldo_k_reg: ab3100_ldo_k {
  124. regulator-compatible = "ab3100_ldo_k";
  125. regulator-min-microvolt = <1800000>;
  126. regulator-max-microvolt = <2750000>;
  127. startup-delay-us = <200>;
  128. };
  129. ab3100_ext_reg: ab3100_ext {
  130. regulator-compatible = "ab3100_ext";
  131. };
  132. ab3100_buck_reg: ab3100_buck {
  133. regulator-compatible = "ab3100_buck";
  134. regulator-min-microvolt = <1200000>;
  135. regulator-max-microvolt = <1800000>;
  136. startup-delay-us = <1000>;
  137. regulator-always-on;
  138. regulator-boot-on;
  139. };
  140. };
  141. };
  142. };
  143. i2c1: i2c@c0005000 {
  144. compatible = "st,ddci2c";
  145. reg = <0xc0005000 0x1000>;
  146. interrupt-parent = <&vicb>;
  147. interrupts = <9>;
  148. #address-cells = <1>;
  149. #size-cells = <0>;
  150. fwcam0: fwcam@0x10 {
  151. reg = <0x10>;
  152. };
  153. fwcam1: fwcam@0x5d {
  154. reg = <0x5d>;
  155. };
  156. };
  157. amba {
  158. compatible = "arm,amba-bus";
  159. #address-cells = <1>;
  160. #size-cells = <1>;
  161. ranges;
  162. vica: interrupt-controller@a0001000 {
  163. compatible = "arm,versatile-vic";
  164. interrupt-controller;
  165. #interrupt-cells = <1>;
  166. reg = <0xa0001000 0x20>;
  167. };
  168. vicb: interrupt-controller@a0002000 {
  169. compatible = "arm,versatile-vic";
  170. interrupt-controller;
  171. #interrupt-cells = <1>;
  172. reg = <0xa0002000 0x20>;
  173. };
  174. uart0: serial@c0013000 {
  175. compatible = "arm,pl011", "arm,primecell";
  176. reg = <0xc0013000 0x1000>;
  177. interrupt-parent = <&vica>;
  178. interrupts = <22>;
  179. dmas = <&dmac 17 &dmac 18>;
  180. dma-names = "tx", "rx";
  181. };
  182. uart1: serial@c0007000 {
  183. compatible = "arm,pl011", "arm,primecell";
  184. reg = <0xc0007000 0x1000>;
  185. interrupt-parent = <&vicb>;
  186. interrupts = <20>;
  187. dmas = <&dmac 38 &dmac 39>;
  188. dma-names = "tx", "rx";
  189. };
  190. mmcsd: mmcsd@c0001000 {
  191. compatible = "arm,pl18x", "arm,primecell";
  192. reg = <0xc0001000 0x1000>;
  193. interrupt-parent = <&vicb>;
  194. interrupts = <6 7>;
  195. max-frequency = <24000000>;
  196. bus-width = <4>; // SD-card slot
  197. mmc-cap-mmc-highspeed;
  198. mmc-cap-sd-highspeed;
  199. cd-gpios = <&gpio 12 0x4>;
  200. cd-inverted;
  201. vmmc-supply = <&ab3100_ldo_g_reg>;
  202. dmas = <&dmac 14>;
  203. dma-names = "rx";
  204. };
  205. };
  206. };