exynos4210-trats.dts 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485
  1. /*
  2. * Samsung's Exynos4210 based Trats board device tree source
  3. *
  4. * Copyright (c) 2012 Samsung Electronics Co., Ltd.
  5. * http://www.samsung.com
  6. *
  7. * Device tree source file for Samsung's Trats board which is based on
  8. * Samsung's Exynos4210 SoC.
  9. *
  10. * This program is free software; you can redistribute it and/or modify
  11. * it under the terms of the GNU General Public License version 2 as
  12. * published by the Free Software Foundation.
  13. */
  14. /dts-v1/;
  15. #include "exynos4210.dtsi"
  16. / {
  17. model = "Samsung Trats based on Exynos4210";
  18. compatible = "samsung,trats", "samsung,exynos4210", "samsung,exynos4";
  19. memory {
  20. reg = <0x40000000 0x10000000
  21. 0x50000000 0x10000000
  22. 0x60000000 0x10000000
  23. 0x70000000 0x10000000>;
  24. };
  25. chosen {
  26. bootargs = "console=ttySAC2,115200N8 root=/dev/mmcblk0p5 rootwait earlyprintk panic=5";
  27. stdout-path = &serial_2;
  28. };
  29. regulators {
  30. compatible = "simple-bus";
  31. vemmc_reg: regulator-0 {
  32. compatible = "regulator-fixed";
  33. regulator-name = "VMEM_VDD_2.8V";
  34. regulator-min-microvolt = <2800000>;
  35. regulator-max-microvolt = <2800000>;
  36. gpio = <&gpk0 2 0>;
  37. enable-active-high;
  38. };
  39. tsp_reg: regulator-1 {
  40. compatible = "regulator-fixed";
  41. regulator-name = "TSP_FIXED_VOLTAGES";
  42. regulator-min-microvolt = <2800000>;
  43. regulator-max-microvolt = <2800000>;
  44. gpio = <&gpl0 3 0>;
  45. enable-active-high;
  46. };
  47. cam_af_28v_reg: regulator-2 {
  48. compatible = "regulator-fixed";
  49. regulator-name = "8M_AF_2.8V_EN";
  50. regulator-min-microvolt = <2800000>;
  51. regulator-max-microvolt = <2800000>;
  52. gpio = <&gpk1 1 0>;
  53. enable-active-high;
  54. };
  55. cam_io_en_reg: regulator-3 {
  56. compatible = "regulator-fixed";
  57. regulator-name = "CAM_IO_EN";
  58. regulator-min-microvolt = <2800000>;
  59. regulator-max-microvolt = <2800000>;
  60. gpio = <&gpe2 1 0>;
  61. enable-active-high;
  62. };
  63. cam_io_12v_reg: regulator-4 {
  64. compatible = "regulator-fixed";
  65. regulator-name = "8M_1.2V_EN";
  66. regulator-min-microvolt = <1200000>;
  67. regulator-max-microvolt = <1200000>;
  68. gpio = <&gpe2 5 0>;
  69. enable-active-high;
  70. };
  71. vt_core_15v_reg: regulator-5 {
  72. compatible = "regulator-fixed";
  73. regulator-name = "VT_CORE_1.5V";
  74. regulator-min-microvolt = <1500000>;
  75. regulator-max-microvolt = <1500000>;
  76. gpio = <&gpe2 2 0>;
  77. enable-active-high;
  78. };
  79. };
  80. hsotg@12480000 {
  81. vusb_d-supply = <&vusb_reg>;
  82. vusb_a-supply = <&vusbdac_reg>;
  83. dr_mode = "peripheral";
  84. status = "okay";
  85. };
  86. sdhci_emmc: sdhci@12510000 {
  87. bus-width = <8>;
  88. non-removable;
  89. pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus8>;
  90. pinctrl-names = "default";
  91. vmmc-supply = <&vemmc_reg>;
  92. status = "okay";
  93. };
  94. exynos-usbphy@125B0000 {
  95. status = "okay";
  96. };
  97. serial@13800000 {
  98. status = "okay";
  99. };
  100. serial@13810000 {
  101. status = "okay";
  102. };
  103. serial@13820000 {
  104. status = "okay";
  105. };
  106. serial@13830000 {
  107. status = "okay";
  108. };
  109. gpio-keys {
  110. compatible = "gpio-keys";
  111. vol-down-key {
  112. gpios = <&gpx2 1 1>;
  113. linux,code = <114>;
  114. label = "volume down";
  115. debounce-interval = <10>;
  116. };
  117. vol-up-key {
  118. gpios = <&gpx2 0 1>;
  119. linux,code = <115>;
  120. label = "volume up";
  121. debounce-interval = <10>;
  122. };
  123. power-key {
  124. gpios = <&gpx2 7 1>;
  125. linux,code = <116>;
  126. label = "power";
  127. debounce-interval = <10>;
  128. gpio-key,wakeup;
  129. };
  130. ok-key {
  131. gpios = <&gpx3 5 1>;
  132. linux,code = <352>;
  133. label = "ok";
  134. debounce-interval = <10>;
  135. };
  136. };
  137. i2c@13890000 {
  138. samsung,i2c-sda-delay = <100>;
  139. samsung,i2c-slave-addr = <0x10>;
  140. samsung,i2c-max-bus-freq = <400000>;
  141. pinctrl-0 = <&i2c3_bus>;
  142. pinctrl-names = "default";
  143. status = "okay";
  144. mms114-touchscreen@48 {
  145. compatible = "melfas,mms114";
  146. reg = <0x48>;
  147. interrupt-parent = <&gpx0>;
  148. interrupts = <4 2>;
  149. x-size = <720>;
  150. y-size = <1280>;
  151. avdd-supply = <&tsp_reg>;
  152. vdd-supply = <&tsp_reg>;
  153. };
  154. };
  155. i2c@138B0000 {
  156. samsung,i2c-sda-delay = <100>;
  157. samsung,i2c-slave-addr = <0x10>;
  158. samsung,i2c-max-bus-freq = <100000>;
  159. pinctrl-0 = <&i2c5_bus>;
  160. pinctrl-names = "default";
  161. status = "okay";
  162. max8997_pmic@66 {
  163. compatible = "maxim,max8997-pmic";
  164. reg = <0x66>;
  165. max8997,pmic-buck1-uses-gpio-dvs;
  166. max8997,pmic-buck2-uses-gpio-dvs;
  167. max8997,pmic-buck5-uses-gpio-dvs;
  168. max8997,pmic-ignore-gpiodvs-side-effect;
  169. max8997,pmic-buck125-default-dvs-idx = <0>;
  170. max8997,pmic-buck125-dvs-gpios = <&gpx0 5 0>,
  171. <&gpx0 6 0>,
  172. <&gpl0 0 0>;
  173. max8997,pmic-buck1-dvs-voltage = <1350000>, <1300000>,
  174. <1250000>, <1200000>,
  175. <1150000>, <1100000>,
  176. <1000000>, <950000>;
  177. max8997,pmic-buck2-dvs-voltage = <1100000>, <1000000>,
  178. <950000>, <900000>,
  179. <1100000>, <1000000>,
  180. <950000>, <900000>;
  181. max8997,pmic-buck5-dvs-voltage = <1200000>, <1200000>,
  182. <1200000>, <1200000>,
  183. <1200000>, <1200000>,
  184. <1200000>, <1200000>;
  185. regulators {
  186. valive_reg: LDO2 {
  187. regulator-name = "VALIVE_1.1V_C210";
  188. regulator-min-microvolt = <1100000>;
  189. regulator-max-microvolt = <1100000>;
  190. regulator-always-on;
  191. };
  192. vusb_reg: LDO3 {
  193. regulator-name = "VUSB_1.1V_C210";
  194. regulator-min-microvolt = <1100000>;
  195. regulator-max-microvolt = <1100000>;
  196. };
  197. vmipi_reg: LDO4 {
  198. regulator-name = "VMIPI_1.8V";
  199. regulator-min-microvolt = <1800000>;
  200. regulator-max-microvolt = <1800000>;
  201. };
  202. vpda_reg: LDO6 {
  203. regulator-name = "VCC_1.8V_PDA";
  204. regulator-min-microvolt = <1800000>;
  205. regulator-max-microvolt = <1800000>;
  206. regulator-always-on;
  207. };
  208. vcam_reg: LDO7 {
  209. regulator-name = "CAM_ISP_1.8V";
  210. regulator-min-microvolt = <1800000>;
  211. regulator-max-microvolt = <1800000>;
  212. };
  213. vusbdac_reg: LDO8 {
  214. regulator-name = "VUSB/VDAC_3.3V_C210";
  215. regulator-min-microvolt = <3300000>;
  216. regulator-max-microvolt = <3300000>;
  217. };
  218. vccpda_reg: LDO9 {
  219. regulator-name = "VCC_2.8V_PDA";
  220. regulator-min-microvolt = <2800000>;
  221. regulator-max-microvolt = <2800000>;
  222. regulator-always-on;
  223. };
  224. vpll_reg: LDO10 {
  225. regulator-name = "VPLL_1.1V_C210";
  226. regulator-min-microvolt = <1100000>;
  227. regulator-max-microvolt = <1100000>;
  228. regulator-always-on;
  229. };
  230. vtcam_reg: LDO12 {
  231. regulator-name = "VT_CAM_1.8V";
  232. regulator-min-microvolt = <1800000>;
  233. regulator-max-microvolt = <1800000>;
  234. };
  235. vcclcd_reg: LDO13 {
  236. regulator-name = "VCC_3.3V_LCD";
  237. regulator-min-microvolt = <3300000>;
  238. regulator-max-microvolt = <3300000>;
  239. };
  240. vlcd_reg: LDO15 {
  241. regulator-name = "VLCD_2.2V";
  242. regulator-min-microvolt = <2200000>;
  243. regulator-max-microvolt = <2200000>;
  244. };
  245. camsensor_reg: LDO16 {
  246. regulator-name = "CAM_SENSOR_IO_1.8V";
  247. regulator-min-microvolt = <1800000>;
  248. regulator-max-microvolt = <1800000>;
  249. };
  250. vddq_reg: LDO21 {
  251. regulator-name = "VDDQ_M1M2_1.2V";
  252. regulator-min-microvolt = <1200000>;
  253. regulator-max-microvolt = <1200000>;
  254. regulator-always-on;
  255. };
  256. varm_breg: BUCK1 {
  257. /*
  258. * HACK: The real name is VARM_1.2V_C210,
  259. * but exynos-cpufreq does not support
  260. * DT-based regulator lookup yet.
  261. */
  262. regulator-name = "vdd_arm";
  263. regulator-min-microvolt = <900000>;
  264. regulator-max-microvolt = <1350000>;
  265. regulator-always-on;
  266. };
  267. vint_breg: BUCK2 {
  268. regulator-name = "VINT_1.1V_C210";
  269. regulator-min-microvolt = <900000>;
  270. regulator-max-microvolt = <1100000>;
  271. regulator-always-on;
  272. };
  273. camisp_breg: BUCK4 {
  274. regulator-name = "CAM_ISP_CORE_1.2V";
  275. regulator-min-microvolt = <1200000>;
  276. regulator-max-microvolt = <1200000>;
  277. };
  278. vmem_breg: BUCK5 {
  279. regulator-name = "VMEM_1.2V_C210";
  280. regulator-min-microvolt = <1200000>;
  281. regulator-max-microvolt = <1200000>;
  282. regulator-always-on;
  283. };
  284. vccsub_breg: BUCK7 {
  285. regulator-name = "VCC_SUB_2.0V";
  286. regulator-min-microvolt = <2000000>;
  287. regulator-max-microvolt = <2000000>;
  288. regulator-always-on;
  289. };
  290. safe1_sreg: ESAFEOUT1 {
  291. regulator-name = "SAFEOUT1";
  292. regulator-always-on;
  293. };
  294. safe2_sreg: ESAFEOUT2 {
  295. regulator-name = "SAFEOUT2";
  296. regulator-boot-on;
  297. };
  298. };
  299. };
  300. };
  301. fixed-rate-clocks {
  302. xxti {
  303. compatible = "samsung,clock-xxti";
  304. clock-frequency = <0>;
  305. };
  306. xusbxti {
  307. compatible = "samsung,clock-xusbxti";
  308. clock-frequency = <24000000>;
  309. };
  310. };
  311. dsi_0: dsi@11C80000 {
  312. vddcore-supply = <&vusb_reg>;
  313. vddio-supply = <&vmipi_reg>;
  314. samsung,pll-clock-frequency = <24000000>;
  315. status = "okay";
  316. ports {
  317. #address-cells = <1>;
  318. #size-cells = <0>;
  319. port@1 {
  320. reg = <1>;
  321. dsi_out: endpoint {
  322. remote-endpoint = <&dsi_in>;
  323. samsung,burst-clock-frequency = <500000000>;
  324. samsung,esc-clock-frequency = <20000000>;
  325. };
  326. };
  327. };
  328. panel@0 {
  329. reg = <0>;
  330. compatible = "samsung,s6e8aa0";
  331. vdd3-supply = <&vcclcd_reg>;
  332. vci-supply = <&vlcd_reg>;
  333. reset-gpios = <&gpy4 5 0>;
  334. power-on-delay= <50>;
  335. reset-delay = <100>;
  336. init-delay = <100>;
  337. flip-horizontal;
  338. flip-vertical;
  339. panel-width-mm = <58>;
  340. panel-height-mm = <103>;
  341. display-timings {
  342. timing-0 {
  343. clock-frequency = <57153600>;
  344. hactive = <720>;
  345. vactive = <1280>;
  346. hfront-porch = <5>;
  347. hback-porch = <5>;
  348. hsync-len = <5>;
  349. vfront-porch = <13>;
  350. vback-porch = <1>;
  351. vsync-len = <2>;
  352. };
  353. };
  354. port {
  355. dsi_in: endpoint {
  356. remote-endpoint = <&dsi_out>;
  357. };
  358. };
  359. };
  360. };
  361. fimd@11c00000 {
  362. status = "okay";
  363. };
  364. tmu@100C0000 {
  365. status = "okay";
  366. };
  367. thermal-zones {
  368. cpu_thermal: cpu-thermal {
  369. cooling-maps {
  370. map0 {
  371. /* Corresponds to 800MHz at freq_table */
  372. cooling-device = <&cpu0 2 2>;
  373. };
  374. map1 {
  375. /* Corresponds to 200MHz at freq_table */
  376. cooling-device = <&cpu0 4 4>;
  377. };
  378. };
  379. };
  380. };
  381. camera {
  382. pinctrl-names = "default";
  383. pinctrl-0 = <>;
  384. status = "okay";
  385. fimc_0: fimc@11800000 {
  386. status = "okay";
  387. assigned-clocks = <&clock CLK_MOUT_FIMC0>,
  388. <&clock CLK_SCLK_FIMC0>;
  389. assigned-clock-parents = <&clock CLK_SCLK_MPLL>;
  390. assigned-clock-rates = <0>, <160000000>;
  391. };
  392. fimc_1: fimc@11810000 {
  393. status = "okay";
  394. assigned-clocks = <&clock CLK_MOUT_FIMC1>,
  395. <&clock CLK_SCLK_FIMC1>;
  396. assigned-clock-parents = <&clock CLK_SCLK_MPLL>;
  397. assigned-clock-rates = <0>, <160000000>;
  398. };
  399. fimc_2: fimc@11820000 {
  400. status = "okay";
  401. assigned-clocks = <&clock CLK_MOUT_FIMC2>,
  402. <&clock CLK_SCLK_FIMC2>;
  403. assigned-clock-parents = <&clock CLK_SCLK_MPLL>;
  404. assigned-clock-rates = <0>, <160000000>;
  405. };
  406. fimc_3: fimc@11830000 {
  407. status = "okay";
  408. assigned-clocks = <&clock CLK_MOUT_FIMC3>,
  409. <&clock CLK_SCLK_FIMC3>;
  410. assigned-clock-parents = <&clock CLK_SCLK_MPLL>;
  411. assigned-clock-rates = <0>, <160000000>;
  412. };
  413. };
  414. };