exynos4412-odroid-common.dtsi 8.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380
  1. /*
  2. * Common definition for Hardkernel's Exynos4412 based ODROID-X/X2/U2/U3 boards
  3. * device tree source
  4. *
  5. * This program is free software; you can redistribute it and/or modify
  6. * it under the terms of the GNU General Public License version 2 as
  7. * published by the Free Software Foundation.
  8. */
  9. #include <dt-bindings/input/input.h>
  10. #include "exynos4412.dtsi"
  11. / {
  12. firmware@0204F000 {
  13. compatible = "samsung,secure-firmware";
  14. reg = <0x0204F000 0x1000>;
  15. };
  16. gpio_keys {
  17. compatible = "gpio-keys";
  18. pinctrl-names = "default";
  19. pinctrl-0 = <&gpio_power_key>;
  20. power_key {
  21. interrupt-parent = <&gpx1>;
  22. interrupts = <3 0>;
  23. gpios = <&gpx1 3 1>;
  24. linux,code = <KEY_POWER>;
  25. label = "power key";
  26. debounce-interval = <10>;
  27. gpio-key,wakeup;
  28. };
  29. };
  30. i2s0: i2s@03830000 {
  31. pinctrl-0 = <&i2s0_bus>;
  32. pinctrl-names = "default";
  33. status = "okay";
  34. clocks = <&clock_audss EXYNOS_I2S_BUS>,
  35. <&clock_audss EXYNOS_DOUT_AUD_BUS>;
  36. clock-names = "iis", "i2s_opclk0";
  37. };
  38. sound: sound {
  39. compatible = "samsung,odroidx2-audio";
  40. samsung,i2s-controller = <&i2s0>;
  41. samsung,audio-codec = <&max98090>;
  42. };
  43. mmc@12550000 {
  44. pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>;
  45. pinctrl-names = "default";
  46. vmmc-supply = <&ldo20_reg &buck8_reg>;
  47. status = "okay";
  48. num-slots = <1>;
  49. broken-cd;
  50. card-detect-delay = <200>;
  51. samsung,dw-mshc-ciu-div = <3>;
  52. samsung,dw-mshc-sdr-timing = <2 3>;
  53. samsung,dw-mshc-ddr-timing = <1 2>;
  54. bus-width = <8>;
  55. cap-mmc-highspeed;
  56. };
  57. watchdog@10060000 {
  58. status = "okay";
  59. };
  60. rtc@10070000 {
  61. status = "okay";
  62. };
  63. g2d@10800000 {
  64. status = "okay";
  65. };
  66. camera {
  67. status = "okay";
  68. pinctrl-names = "default";
  69. pinctrl-0 = <>;
  70. fimc_0: fimc@11800000 {
  71. status = "okay";
  72. };
  73. fimc_1: fimc@11810000 {
  74. status = "okay";
  75. };
  76. fimc_2: fimc@11820000 {
  77. status = "okay";
  78. };
  79. fimc_3: fimc@11830000 {
  80. status = "okay";
  81. };
  82. };
  83. sdhci@12530000 {
  84. bus-width = <4>;
  85. pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus4>;
  86. pinctrl-names = "default";
  87. vmmc-supply = <&ldo4_reg &ldo21_reg>;
  88. cd-gpios = <&gpk2 2 0>;
  89. cd-inverted;
  90. status = "okay";
  91. };
  92. serial@13800000 {
  93. status = "okay";
  94. };
  95. serial@13810000 {
  96. status = "okay";
  97. };
  98. fixed-rate-clocks {
  99. xxti {
  100. compatible = "samsung,clock-xxti";
  101. clock-frequency = <0>;
  102. };
  103. xusbxti {
  104. compatible = "samsung,clock-xusbxti";
  105. clock-frequency = <24000000>;
  106. };
  107. };
  108. i2c@13860000 {
  109. pinctrl-0 = <&i2c0_bus>;
  110. pinctrl-names = "default";
  111. samsung,i2c-sda-delay = <100>;
  112. samsung,i2c-max-bus-freq = <400000>;
  113. status = "okay";
  114. usb3503: usb3503@08 {
  115. compatible = "smsc,usb3503";
  116. reg = <0x08>;
  117. intn-gpios = <&gpx3 0 0>;
  118. connect-gpios = <&gpx3 4 0>;
  119. reset-gpios = <&gpx3 5 0>;
  120. initial-mode = <1>;
  121. };
  122. max77686: pmic@09 {
  123. compatible = "maxim,max77686";
  124. interrupt-parent = <&gpx3>;
  125. interrupts = <2 0>;
  126. pinctrl-names = "default";
  127. pinctrl-0 = <&max77686_irq>;
  128. reg = <0x09>;
  129. #clock-cells = <1>;
  130. voltage-regulators {
  131. ldo1_reg: LDO1 {
  132. regulator-name = "VDD_ALIVE_1.0V";
  133. regulator-min-microvolt = <1000000>;
  134. regulator-max-microvolt = <1000000>;
  135. regulator-always-on;
  136. };
  137. ldo2_reg: LDO2 {
  138. regulator-name = "VDDQ_M1_2_1.8V";
  139. regulator-min-microvolt = <1800000>;
  140. regulator-max-microvolt = <1800000>;
  141. regulator-always-on;
  142. };
  143. ldo3_reg: LDO3 {
  144. regulator-name = "VDDQ_EXT_1.8V";
  145. regulator-min-microvolt = <1800000>;
  146. regulator-max-microvolt = <1800000>;
  147. regulator-always-on;
  148. };
  149. ldo4_reg: LDO4 {
  150. regulator-name = "VDDQ_MMC2_2.8V";
  151. regulator-min-microvolt = <2800000>;
  152. regulator-max-microvolt = <2800000>;
  153. regulator-always-on;
  154. regulator-boot-on;
  155. };
  156. ldo5_reg: LDO5 {
  157. regulator-name = "VDDQ_MMC1_3_1.8V";
  158. regulator-min-microvolt = <1800000>;
  159. regulator-max-microvolt = <1800000>;
  160. regulator-always-on;
  161. regulator-boot-on;
  162. };
  163. ldo6_reg: LDO6 {
  164. regulator-name = "VDD10_MPLL_1.0V";
  165. regulator-min-microvolt = <1000000>;
  166. regulator-max-microvolt = <1000000>;
  167. regulator-always-on;
  168. };
  169. ldo7_reg: LDO7 {
  170. regulator-name = "VDD10_XPLL_1.0V";
  171. regulator-min-microvolt = <1000000>;
  172. regulator-max-microvolt = <1000000>;
  173. regulator-always-on;
  174. };
  175. ldo11_reg: LDO11 {
  176. regulator-name = "VDD18_ABB1_1.8V";
  177. regulator-min-microvolt = <1800000>;
  178. regulator-max-microvolt = <1800000>;
  179. regulator-always-on;
  180. };
  181. ldo12_reg: LDO12 {
  182. regulator-name = "VDD33_USB_3.3V";
  183. regulator-min-microvolt = <3300000>;
  184. regulator-max-microvolt = <3300000>;
  185. regulator-always-on;
  186. regulator-boot-on;
  187. };
  188. ldo13_reg: LDO13 {
  189. regulator-name = "VDDQ_C2C_W_1.8V";
  190. regulator-min-microvolt = <1800000>;
  191. regulator-max-microvolt = <1800000>;
  192. regulator-always-on;
  193. regulator-boot-on;
  194. };
  195. ldo14_reg: LDO14 {
  196. regulator-name = "VDD18_ABB0_2_1.8V";
  197. regulator-min-microvolt = <1800000>;
  198. regulator-max-microvolt = <1800000>;
  199. regulator-always-on;
  200. regulator-boot-on;
  201. };
  202. ldo15_reg: LDO15 {
  203. regulator-name = "VDD10_HSIC_1.0V";
  204. regulator-min-microvolt = <1000000>;
  205. regulator-max-microvolt = <1000000>;
  206. regulator-always-on;
  207. regulator-boot-on;
  208. };
  209. ldo16_reg: LDO16 {
  210. regulator-name = "VDD18_HSIC_1.8V";
  211. regulator-min-microvolt = <1800000>;
  212. regulator-max-microvolt = <1800000>;
  213. regulator-always-on;
  214. regulator-boot-on;
  215. };
  216. ldo20_reg: LDO20 {
  217. regulator-name = "LDO20_1.8V";
  218. regulator-min-microvolt = <1800000>;
  219. regulator-max-microvolt = <1800000>;
  220. regulator-boot-on;
  221. };
  222. ldo21_reg: LDO21 {
  223. regulator-name = "LDO21_3.3V";
  224. regulator-min-microvolt = <3300000>;
  225. regulator-max-microvolt = <3300000>;
  226. regulator-always-on;
  227. regulator-boot-on;
  228. };
  229. ldo25_reg: LDO25 {
  230. regulator-name = "VDDQ_LCD_1.8V";
  231. regulator-min-microvolt = <1800000>;
  232. regulator-max-microvolt = <1800000>;
  233. regulator-always-on;
  234. regulator-boot-on;
  235. };
  236. buck1_reg: BUCK1 {
  237. regulator-name = "vdd_mif";
  238. regulator-min-microvolt = <1000000>;
  239. regulator-max-microvolt = <1000000>;
  240. regulator-always-on;
  241. regulator-boot-on;
  242. };
  243. buck2_reg: BUCK2 {
  244. regulator-name = "vdd_arm";
  245. regulator-min-microvolt = <900000>;
  246. regulator-max-microvolt = <1350000>;
  247. regulator-always-on;
  248. regulator-boot-on;
  249. };
  250. buck3_reg: BUCK3 {
  251. regulator-name = "vdd_int";
  252. regulator-min-microvolt = <1000000>;
  253. regulator-max-microvolt = <1000000>;
  254. regulator-always-on;
  255. regulator-boot-on;
  256. };
  257. buck4_reg: BUCK4 {
  258. regulator-name = "vdd_g3d";
  259. regulator-min-microvolt = <900000>;
  260. regulator-max-microvolt = <1100000>;
  261. regulator-microvolt-offset = <50000>;
  262. };
  263. buck5_reg: BUCK5 {
  264. regulator-name = "VDDQ_CKEM1_2_1.2V";
  265. regulator-min-microvolt = <1200000>;
  266. regulator-max-microvolt = <1200000>;
  267. regulator-always-on;
  268. regulator-boot-on;
  269. };
  270. buck6_reg: BUCK6 {
  271. regulator-name = "BUCK6_1.35V";
  272. regulator-min-microvolt = <1350000>;
  273. regulator-max-microvolt = <1350000>;
  274. regulator-always-on;
  275. regulator-boot-on;
  276. };
  277. buck7_reg: BUCK7 {
  278. regulator-name = "BUCK7_2.0V";
  279. regulator-min-microvolt = <2000000>;
  280. regulator-max-microvolt = <2000000>;
  281. regulator-always-on;
  282. };
  283. buck8_reg: BUCK8 {
  284. regulator-name = "BUCK8_2.8V";
  285. regulator-min-microvolt = <2800000>;
  286. regulator-max-microvolt = <2800000>;
  287. };
  288. };
  289. };
  290. };
  291. i2c@13870000 {
  292. pinctrl-names = "default";
  293. pinctrl-0 = <&i2c1_bus>;
  294. status = "okay";
  295. max98090: max98090@10 {
  296. compatible = "maxim,max98090";
  297. reg = <0x10>;
  298. interrupt-parent = <&gpx0>;
  299. interrupts = <0 0>;
  300. };
  301. };
  302. exynos-usbphy@125B0000 {
  303. status = "okay";
  304. };
  305. hsotg@12480000 {
  306. status = "okay";
  307. vusb_d-supply = <&ldo15_reg>;
  308. vusb_a-supply = <&ldo12_reg>;
  309. };
  310. ehci: ehci@12580000 {
  311. status = "okay";
  312. };
  313. };
  314. &pinctrl_1 {
  315. gpio_power_key: power_key {
  316. samsung,pins = "gpx1-3";
  317. samsung,pin-pud = <0>;
  318. };
  319. max77686_irq: max77686-irq {
  320. samsung,pins = "gpx3-2";
  321. samsung,pin-function = <0>;
  322. samsung,pin-pud = <0>;
  323. samsung,pin-drv = <0>;
  324. };
  325. };