exynos4412-itop-elite.dts 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230
  1. // SPDX-License-Identifier: GPL-2.0
  2. /*
  3. * TOPEET's Exynos4412 based itop board device tree source
  4. *
  5. * Copyright (c) 2016 SUMOMO Computer Association
  6. * https://www.sumomo.mobi
  7. * Randy Li <[email protected]>
  8. *
  9. * Device tree source file for TOPEET iTop Exynos 4412 core board
  10. * which is based on Samsung's Exynos4412 SoC.
  11. */
  12. /dts-v1/;
  13. #include <dt-bindings/leds/common.h>
  14. #include <dt-bindings/pwm/pwm.h>
  15. #include <dt-bindings/sound/samsung-i2s.h>
  16. #include "exynos4412-itop-scp-core.dtsi"
  17. / {
  18. model = "TOPEET iTop 4412 Elite board based on Exynos4412";
  19. compatible = "topeet,itop4412-elite", "samsung,exynos4412", "samsung,exynos4";
  20. chosen {
  21. bootargs = "root=/dev/mmcblk0p2 rw rootfstype=ext4 rootdelay=1 rootwait";
  22. stdout-path = "serial2:115200n8";
  23. };
  24. leds {
  25. compatible = "gpio-leds";
  26. led2 {
  27. function = LED_FUNCTION_HEARTBEAT;
  28. color = <LED_COLOR_ID_RED>;
  29. gpios = <&gpx1 0 GPIO_ACTIVE_HIGH>;
  30. default-state = "off";
  31. linux,default-trigger = "heartbeat";
  32. };
  33. led3 {
  34. label = "red:user";
  35. color = <LED_COLOR_ID_RED>;
  36. gpios = <&gpk1 1 GPIO_ACTIVE_HIGH>;
  37. default-state = "off";
  38. };
  39. };
  40. gpio-keys {
  41. compatible = "gpio-keys";
  42. key-home {
  43. label = "GPIO Key Home";
  44. linux,code = <KEY_HOME>;
  45. gpios = <&gpx1 1 GPIO_ACTIVE_LOW>;
  46. };
  47. key-back {
  48. label = "GPIO Key Back";
  49. linux,code = <KEY_BACK>;
  50. gpios = <&gpx1 2 GPIO_ACTIVE_LOW>;
  51. };
  52. key-sleep {
  53. label = "GPIO Key Sleep";
  54. linux,code = <KEY_POWER>;
  55. gpios = <&gpx3 3 GPIO_ACTIVE_LOW>;
  56. };
  57. key-vol-up {
  58. label = "GPIO Key Vol+";
  59. linux,code = <KEY_UP>;
  60. gpios = <&gpx2 1 GPIO_ACTIVE_LOW>;
  61. };
  62. key-vol-down {
  63. label = "GPIO Key Vol-";
  64. linux,code = <KEY_DOWN>;
  65. gpios = <&gpx2 0 GPIO_ACTIVE_LOW>;
  66. };
  67. };
  68. sound {
  69. compatible = "simple-audio-card";
  70. simple-audio-card,name = "wm-sound";
  71. simple-audio-card,format = "i2s";
  72. simple-audio-card,bitclock-master = <&link0_codec>;
  73. simple-audio-card,frame-master = <&link0_codec>;
  74. simple-audio-card,widgets =
  75. "Microphone", "Mic Jack",
  76. "Line", "Line In",
  77. "Line", "Line Out",
  78. "Speaker", "Speaker",
  79. "Headphone", "Headphone Jack";
  80. simple-audio-card,routing =
  81. "Headphone Jack", "HP_L",
  82. "Headphone Jack", "HP_R",
  83. "Speaker", "SPK_LP",
  84. "Speaker", "SPK_LN",
  85. "Speaker", "SPK_RP",
  86. "Speaker", "SPK_RN",
  87. "LINPUT1", "Mic Jack",
  88. "LINPUT3", "Mic Jack",
  89. "RINPUT1", "Mic Jack",
  90. "RINPUT2", "Mic Jack";
  91. simple-audio-card,cpu {
  92. sound-dai = <&i2s0 0>;
  93. };
  94. link0_codec: simple-audio-card,codec {
  95. sound-dai = <&codec>;
  96. clocks = <&i2s0 CLK_I2S_CDCLK>;
  97. system-clock-frequency = <11289600>;
  98. };
  99. };
  100. beep {
  101. compatible = "pwm-beeper";
  102. pwms = <&pwm 0 4000000 PWM_POLARITY_INVERTED>;
  103. };
  104. };
  105. &adc {
  106. vdd-supply = <&ldo3_reg>;
  107. status = "okay";
  108. };
  109. &camera {
  110. pinctrl-0 = <&cam_port_a_clk_active>;
  111. pinctrl-names = "default";
  112. status = "okay";
  113. assigned-clocks = <&clock CLK_MOUT_CAM0>;
  114. assigned-clock-parents = <&clock CLK_XUSBXTI>;
  115. };
  116. &clock_audss {
  117. assigned-clocks = <&clock_audss EXYNOS_MOUT_AUDSS>,
  118. <&clock_audss EXYNOS_MOUT_I2S>,
  119. <&clock_audss EXYNOS_DOUT_SRP>,
  120. <&clock_audss EXYNOS_DOUT_AUD_BUS>;
  121. assigned-clock-parents = <&clock CLK_FOUT_EPLL>,
  122. <&clock_audss EXYNOS_MOUT_AUDSS>;
  123. assigned-clock-rates = <0>, <0>, <112896000>, <11289600>;
  124. };
  125. &ehci {
  126. status = "okay";
  127. /* In order to reset USB ethernet */
  128. samsung,vbus-gpio = <&gpc0 1 GPIO_ACTIVE_HIGH>;
  129. phys = <&exynos_usbphy 1>, <&exynos_usbphy 3>;
  130. phy-names = "host", "hsic1";
  131. };
  132. &exynos_usbphy {
  133. status = "okay";
  134. };
  135. &fimc_0 {
  136. status = "okay";
  137. assigned-clocks = <&clock CLK_MOUT_FIMC0>,
  138. <&clock CLK_SCLK_FIMC0>;
  139. assigned-clock-parents = <&clock CLK_MOUT_MPLL_USER_T>;
  140. assigned-clock-rates = <0>, <176000000>;
  141. };
  142. &hsotg {
  143. dr_mode = "peripheral";
  144. status = "okay";
  145. };
  146. &i2c_4 {
  147. samsung,i2c-sda-delay = <100>;
  148. samsung,i2c-slave-addr = <0x10>;
  149. samsung,i2c-max-bus-freq = <100000>;
  150. pinctrl-0 = <&i2c4_bus>;
  151. pinctrl-names = "default";
  152. status = "okay";
  153. codec: audio-codec@1a {
  154. compatible = "wlf,wm8960";
  155. reg = <0x1a>;
  156. clocks = <&pmu_system_controller 0>;
  157. clock-names = "mclk";
  158. wlf,shared-lrclk;
  159. #sound-dai-cells = <0>;
  160. };
  161. };
  162. &i2s0 {
  163. pinctrl-0 = <&i2s0_bus>;
  164. pinctrl-names = "default";
  165. status = "okay";
  166. };
  167. &pinctrl_1 {
  168. ether-reset-pins {
  169. samsung,pins = "gpc0-1";
  170. samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
  171. samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
  172. samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
  173. };
  174. };
  175. &pwm {
  176. status = "okay";
  177. pinctrl-0 = <&pwm0_out>;
  178. pinctrl-names = "default";
  179. samsung,pwm-outputs = <0>;
  180. };
  181. &sdhci_2 {
  182. bus-width = <4>;
  183. pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4>;
  184. pinctrl-names = "default";
  185. cd-gpio = <&gpx0 7 GPIO_ACTIVE_LOW>;
  186. cap-sd-highspeed;
  187. vmmc-supply = <&ldo23_reg>;
  188. vqmmc-supply = <&ldo17_reg>;
  189. status = "okay";
  190. };
  191. &serial_1 {
  192. status = "okay";
  193. };
  194. &serial_2 {
  195. status = "okay";
  196. };