ste-u300.dts 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275
  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. syscon = <&syscon>;
  25. };
  26. syscon: syscon@c0011000 {
  27. compatible = "stericsson,u300-syscon";
  28. reg = <0xc0011000 0x1000>;
  29. };
  30. timer: timer@c0014000 {
  31. compatible = "stericsson,u300-apptimer";
  32. reg = <0xc0014000 0x1000>;
  33. interrupt-parent = <&vica>;
  34. interrupts = <24 25 26 27>;
  35. };
  36. gpio: gpio@c0016000 {
  37. compatible = "stericsson,gpio-coh901";
  38. reg = <0xc0016000 0x1000>;
  39. interrupt-parent = <&vicb>;
  40. interrupts = <0 1 2 18 21 22 23>;
  41. interrupt-names = "gpio0", "gpio1", "gpio2", "gpio3",
  42. "gpio4", "gpio5", "gpio6";
  43. interrupt-controller;
  44. #interrupt-cells = <2>;
  45. gpio-controller;
  46. #gpio-cells = <2>;
  47. };
  48. pinctrl: pinctrl@c0011000 {
  49. compatible = "stericsson,pinctrl-u300";
  50. reg = <0xc0011000 0x1000>;
  51. };
  52. watchdog: watchdog@c0012000 {
  53. compatible = "stericsson,coh901327";
  54. reg = <0xc0012000 0x1000>;
  55. interrupt-parent = <&vicb>;
  56. interrupts = <3>;
  57. };
  58. rtc: rtc@c0017000 {
  59. compatible = "stericsson,coh901331";
  60. reg = <0xc0017000 0x1000>;
  61. interrupt-parent = <&vicb>;
  62. interrupts = <10>;
  63. };
  64. dmac: dma-controller@c00020000 {
  65. compatible = "stericsson,coh901318";
  66. reg = <0xc0020000 0x1000>;
  67. interrupt-parent = <&vica>;
  68. interrupts = <2>;
  69. #dma-cells = <1>;
  70. dma-channels = <40>;
  71. };
  72. /* A NAND flash of 128 MiB */
  73. fsmc: flash@40000000 {
  74. compatible = "stericsson,fsmc-nand";
  75. #address-cells = <1>;
  76. #size-cells = <1>;
  77. reg = <0x9f800000 0x1000>, /* FSMC Register*/
  78. <0x80000000 0x4000>, /* NAND Base DATA */
  79. <0x80020000 0x4000>, /* NAND Base ADDR */
  80. <0x80010000 0x4000>; /* NAND Base CMD */
  81. reg-names = "fsmc_regs", "nand_data", "nand_addr", "nand_cmd";
  82. nand-skip-bbtscan;
  83. partition@0 {
  84. label = "boot records";
  85. reg = <0x0 0x20000>;
  86. };
  87. partition@20000 {
  88. label = "free";
  89. reg = <0x20000 0x7e0000>;
  90. };
  91. partition@800000 {
  92. label = "platform";
  93. reg = <0x800000 0xf800000>;
  94. };
  95. };
  96. i2c0: i2c@c0004000 {
  97. compatible = "st,ddci2c";
  98. reg = <0xc0004000 0x1000>;
  99. interrupt-parent = <&vicb>;
  100. interrupts = <8>;
  101. #address-cells = <1>;
  102. #size-cells = <0>;
  103. ab3100: ab3100@0x48 {
  104. compatible = "stericsson,ab3100";
  105. reg = <0x48>;
  106. interrupt-parent = <&vica>;
  107. interrupts = <0>; /* EXT0 IRQ */
  108. ab3100-regulators {
  109. compatible = "stericsson,ab3100-regulators";
  110. ab3100_ldo_a_reg: ab3100_ldo_a {
  111. regulator-compatible = "ab3100_ldo_a";
  112. startup-delay-us = <200>;
  113. regulator-always-on;
  114. regulator-boot-on;
  115. };
  116. ab3100_ldo_c_reg: ab3100_ldo_c {
  117. regulator-compatible = "ab3100_ldo_c";
  118. startup-delay-us = <200>;
  119. };
  120. ab3100_ldo_d_reg: ab3100_ldo_d {
  121. regulator-compatible = "ab3100_ldo_d";
  122. startup-delay-us = <200>;
  123. };
  124. ab3100_ldo_e_reg: ab3100_ldo_e {
  125. regulator-compatible = "ab3100_ldo_e";
  126. regulator-min-microvolt = <1800000>;
  127. regulator-max-microvolt = <1800000>;
  128. startup-delay-us = <200>;
  129. regulator-always-on;
  130. regulator-boot-on;
  131. };
  132. ab3100_ldo_f_reg: ab3100_ldo_f {
  133. regulator-compatible = "ab3100_ldo_f";
  134. regulator-min-microvolt = <2500000>;
  135. regulator-max-microvolt = <2500000>;
  136. startup-delay-us = <600>;
  137. regulator-always-on;
  138. regulator-boot-on;
  139. };
  140. ab3100_ldo_g_reg: ab3100_ldo_g {
  141. regulator-compatible = "ab3100_ldo_g";
  142. regulator-min-microvolt = <1500000>;
  143. regulator-max-microvolt = <2850000>;
  144. startup-delay-us = <400>;
  145. };
  146. ab3100_ldo_h_reg: ab3100_ldo_h {
  147. regulator-compatible = "ab3100_ldo_h";
  148. regulator-min-microvolt = <1200000>;
  149. regulator-max-microvolt = <2750000>;
  150. startup-delay-us = <200>;
  151. };
  152. ab3100_ldo_k_reg: ab3100_ldo_k {
  153. regulator-compatible = "ab3100_ldo_k";
  154. regulator-min-microvolt = <1800000>;
  155. regulator-max-microvolt = <2750000>;
  156. startup-delay-us = <200>;
  157. };
  158. ab3100_ext_reg: ab3100_ext {
  159. regulator-compatible = "ab3100_ext";
  160. };
  161. ab3100_buck_reg: ab3100_buck {
  162. regulator-compatible = "ab3100_buck";
  163. regulator-min-microvolt = <1200000>;
  164. regulator-max-microvolt = <1800000>;
  165. startup-delay-us = <1000>;
  166. regulator-always-on;
  167. regulator-boot-on;
  168. };
  169. };
  170. };
  171. };
  172. i2c1: i2c@c0005000 {
  173. compatible = "st,ddci2c";
  174. reg = <0xc0005000 0x1000>;
  175. interrupt-parent = <&vicb>;
  176. interrupts = <9>;
  177. #address-cells = <1>;
  178. #size-cells = <0>;
  179. fwcam0: fwcam@0x10 {
  180. reg = <0x10>;
  181. };
  182. fwcam1: fwcam@0x5d {
  183. reg = <0x5d>;
  184. };
  185. };
  186. amba {
  187. compatible = "arm,amba-bus";
  188. #address-cells = <1>;
  189. #size-cells = <1>;
  190. ranges;
  191. vica: interrupt-controller@a0001000 {
  192. compatible = "arm,versatile-vic";
  193. interrupt-controller;
  194. #interrupt-cells = <1>;
  195. reg = <0xa0001000 0x20>;
  196. };
  197. vicb: interrupt-controller@a0002000 {
  198. compatible = "arm,versatile-vic";
  199. interrupt-controller;
  200. #interrupt-cells = <1>;
  201. reg = <0xa0002000 0x20>;
  202. };
  203. uart0: serial@c0013000 {
  204. compatible = "arm,pl011", "arm,primecell";
  205. reg = <0xc0013000 0x1000>;
  206. interrupt-parent = <&vica>;
  207. interrupts = <22>;
  208. dmas = <&dmac 17 &dmac 18>;
  209. dma-names = "tx", "rx";
  210. };
  211. uart1: serial@c0007000 {
  212. compatible = "arm,pl011", "arm,primecell";
  213. reg = <0xc0007000 0x1000>;
  214. interrupt-parent = <&vicb>;
  215. interrupts = <20>;
  216. dmas = <&dmac 38 &dmac 39>;
  217. dma-names = "tx", "rx";
  218. };
  219. mmcsd: mmcsd@c0001000 {
  220. compatible = "arm,pl18x", "arm,primecell";
  221. reg = <0xc0001000 0x1000>;
  222. interrupt-parent = <&vicb>;
  223. interrupts = <6 7>;
  224. max-frequency = <24000000>;
  225. bus-width = <4>; // SD-card slot
  226. mmc-cap-mmc-highspeed;
  227. mmc-cap-sd-highspeed;
  228. cd-gpios = <&gpio 12 0x4>;
  229. cd-inverted;
  230. vmmc-supply = <&ab3100_ldo_g_reg>;
  231. dmas = <&dmac 14>;
  232. dma-names = "rx";
  233. };
  234. spi: ssp@c0006000 {
  235. compatible = "arm,pl022", "arm,primecell";
  236. reg = <0xc0006000 0x1000>;
  237. interrupt-parent = <&vica>;
  238. interrupts = <23>;
  239. dmas = <&dmac 27 &dmac 28>;
  240. dma-names = "tx", "rx";
  241. num-cs = <3>;
  242. #address-cells = <1>;
  243. #size-cells = <0>;
  244. spi-dummy@1 {
  245. compatible = "arm,pl022-dummy";
  246. reg = <1>;
  247. spi-max-frequency = <20000000>;
  248. };
  249. };
  250. };
  251. };