exynos4210-origen.dts 7.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367
  1. // SPDX-License-Identifier: GPL-2.0
  2. /*
  3. * Samsung's Exynos4210 based Origen board device tree source
  4. *
  5. * Copyright (c) 2010-2011 Samsung Electronics Co., Ltd.
  6. * http://www.samsung.com
  7. * Copyright (c) 2010-2011 Linaro Ltd.
  8. * www.linaro.org
  9. *
  10. * Device tree source file for Insignal's Origen board which is based on
  11. * Samsung's Exynos4210 SoC.
  12. */
  13. /dts-v1/;
  14. #include "exynos4210.dtsi"
  15. #include <dt-bindings/gpio/gpio.h>
  16. #include <dt-bindings/input/input.h>
  17. #include <dt-bindings/leds/common.h>
  18. #include "exynos-mfc-reserved-memory.dtsi"
  19. / {
  20. model = "Insignal Origen evaluation board based on Exynos4210";
  21. compatible = "insignal,origen", "samsung,exynos4210", "samsung,exynos4";
  22. memory@40000000 {
  23. device_type = "memory";
  24. reg = <0x40000000 0x10000000
  25. 0x50000000 0x10000000
  26. 0x60000000 0x10000000
  27. 0x70000000 0x10000000>;
  28. };
  29. chosen {
  30. bootargs = "root=/dev/ram0 rw ramdisk=8192 initrd=0x41000000,8M init=/linuxrc";
  31. stdout-path = "serial2:115200n8";
  32. };
  33. mmc_reg: voltage-regulator {
  34. compatible = "regulator-fixed";
  35. regulator-name = "VMEM_VDD_2.8V";
  36. regulator-min-microvolt = <2800000>;
  37. regulator-max-microvolt = <2800000>;
  38. gpio = <&gpx1 1 GPIO_ACTIVE_HIGH>;
  39. enable-active-high;
  40. };
  41. gpio-keys {
  42. compatible = "gpio-keys";
  43. key-up {
  44. label = "Up";
  45. gpios = <&gpx2 0 GPIO_ACTIVE_LOW>;
  46. linux,code = <KEY_UP>;
  47. wakeup-source;
  48. };
  49. key-down {
  50. label = "Down";
  51. gpios = <&gpx2 1 GPIO_ACTIVE_LOW>;
  52. linux,code = <KEY_DOWN>;
  53. wakeup-source;
  54. };
  55. key-back {
  56. label = "Back";
  57. gpios = <&gpx1 7 GPIO_ACTIVE_LOW>;
  58. linux,code = <KEY_BACK>;
  59. wakeup-source;
  60. };
  61. key-home {
  62. label = "Home";
  63. gpios = <&gpx1 6 GPIO_ACTIVE_LOW>;
  64. linux,code = <KEY_HOME>;
  65. wakeup-source;
  66. };
  67. key-menu {
  68. label = "Menu";
  69. gpios = <&gpx1 5 GPIO_ACTIVE_LOW>;
  70. linux,code = <KEY_MENU>;
  71. wakeup-source;
  72. };
  73. };
  74. leds {
  75. compatible = "gpio-leds";
  76. status {
  77. gpios = <&gpx1 3 GPIO_ACTIVE_LOW>;
  78. function = LED_FUNCTION_HEARTBEAT;
  79. linux,default-trigger = "heartbeat";
  80. };
  81. };
  82. fixed-rate-clocks {
  83. xxti {
  84. compatible = "samsung,clock-xxti";
  85. clock-frequency = <0>;
  86. };
  87. xusbxti {
  88. compatible = "samsung,clock-xusbxti";
  89. clock-frequency = <24000000>;
  90. };
  91. pmic_ap_clk: pmic-ap-clk {
  92. /* Workaround for missing clock on max8997 PMIC */
  93. compatible = "fixed-clock";
  94. #clock-cells = <0>;
  95. clock-frequency = <32768>;
  96. };
  97. };
  98. display-timings {
  99. native-mode = <&timing0>;
  100. timing0: timing {
  101. clock-frequency = <47500000>;
  102. hactive = <1024>;
  103. vactive = <600>;
  104. hfront-porch = <64>;
  105. hback-porch = <16>;
  106. hsync-len = <48>;
  107. vback-porch = <64>;
  108. vfront-porch = <16>;
  109. vsync-len = <3>;
  110. };
  111. };
  112. };
  113. &cpu0 {
  114. cpu0-supply = <&buck1_reg>;
  115. };
  116. &cpu_thermal {
  117. cooling-maps {
  118. map0 {
  119. /* Corresponds to 800MHz */
  120. cooling-device = <&cpu0 2 2>;
  121. };
  122. map1 {
  123. /* Corresponds to 200MHz */
  124. cooling-device = <&cpu0 4 4>;
  125. };
  126. };
  127. };
  128. &exynos_usbphy {
  129. status = "okay";
  130. };
  131. &fimd {
  132. pinctrl-0 = <&lcd_en &lcd_clk &lcd_data24 &pwm0_out>;
  133. pinctrl-names = "default";
  134. status = "okay";
  135. };
  136. &gpu {
  137. mali-supply = <&buck3_reg>;
  138. status = "okay";
  139. };
  140. &hsotg {
  141. vusb_d-supply = <&ldo3_reg>;
  142. vusb_a-supply = <&ldo8_reg>;
  143. dr_mode = "peripheral";
  144. status = "okay";
  145. };
  146. &i2c_0 {
  147. status = "okay";
  148. samsung,i2c-sda-delay = <100>;
  149. samsung,i2c-max-bus-freq = <20000>;
  150. pinctrl-0 = <&i2c0_bus>;
  151. pinctrl-names = "default";
  152. pmic@66 {
  153. compatible = "maxim,max8997-pmic";
  154. reg = <0x66>;
  155. interrupt-parent = <&gpx0>;
  156. interrupts = <4 IRQ_TYPE_NONE>, <3 IRQ_TYPE_NONE>;
  157. pinctrl-names = "default";
  158. pinctrl-0 = <&max8997_irq>;
  159. max8997,pmic-buck1-dvs-voltage = <1350000>;
  160. max8997,pmic-buck2-dvs-voltage = <1100000>;
  161. max8997,pmic-buck5-dvs-voltage = <1200000>;
  162. regulators {
  163. ldo1_reg: LDO1 {
  164. regulator-name = "VDD_ABB_3.3V";
  165. regulator-min-microvolt = <3300000>;
  166. regulator-max-microvolt = <3300000>;
  167. };
  168. ldo2_reg: LDO2 {
  169. regulator-name = "VDD_ALIVE_1.1V";
  170. regulator-min-microvolt = <1100000>;
  171. regulator-max-microvolt = <1100000>;
  172. regulator-always-on;
  173. };
  174. ldo3_reg: LDO3 {
  175. regulator-name = "VMIPI_1.1V";
  176. regulator-min-microvolt = <1100000>;
  177. regulator-max-microvolt = <1100000>;
  178. };
  179. ldo4_reg: LDO4 {
  180. regulator-name = "VDD_RTC_1.8V";
  181. regulator-min-microvolt = <1800000>;
  182. regulator-max-microvolt = <1800000>;
  183. regulator-always-on;
  184. };
  185. ldo6_reg: LDO6 {
  186. regulator-name = "VMIPI_1.8V";
  187. regulator-min-microvolt = <1800000>;
  188. regulator-max-microvolt = <1800000>;
  189. regulator-always-on;
  190. };
  191. ldo7_reg: LDO7 {
  192. regulator-name = "VDD_AUD_1.8V";
  193. regulator-min-microvolt = <1800000>;
  194. regulator-max-microvolt = <1800000>;
  195. };
  196. ldo8_reg: LDO8 {
  197. regulator-name = "VADC_3.3V";
  198. regulator-min-microvolt = <3300000>;
  199. regulator-max-microvolt = <3300000>;
  200. };
  201. ldo9_reg: LDO9 {
  202. regulator-name = "DVDD_SWB_2.8V";
  203. regulator-min-microvolt = <2800000>;
  204. regulator-max-microvolt = <2800000>;
  205. regulator-always-on;
  206. };
  207. ldo10_reg: LDO10 {
  208. regulator-name = "VDD_PLL_1.1V";
  209. regulator-min-microvolt = <1100000>;
  210. regulator-max-microvolt = <1100000>;
  211. regulator-always-on;
  212. };
  213. ldo11_reg: LDO11 {
  214. regulator-name = "VDD_AUD_3V";
  215. regulator-min-microvolt = <3000000>;
  216. regulator-max-microvolt = <3000000>;
  217. };
  218. ldo14_reg: LDO14 {
  219. regulator-name = "AVDD18_SWB_1.8V";
  220. regulator-min-microvolt = <1800000>;
  221. regulator-max-microvolt = <1800000>;
  222. regulator-always-on;
  223. };
  224. ldo17_reg: LDO17 {
  225. regulator-name = "VDD_SWB_3.3V";
  226. regulator-min-microvolt = <3300000>;
  227. regulator-max-microvolt = <3300000>;
  228. regulator-always-on;
  229. };
  230. ldo21_reg: LDO21 {
  231. regulator-name = "VDD_MIF_1.2V";
  232. regulator-min-microvolt = <1200000>;
  233. regulator-max-microvolt = <1200000>;
  234. regulator-always-on;
  235. };
  236. buck1_reg: BUCK1 {
  237. regulator-name = "VDD_ARM_1.2V";
  238. regulator-min-microvolt = <950000>;
  239. regulator-max-microvolt = <1350000>;
  240. regulator-always-on;
  241. regulator-boot-on;
  242. };
  243. buck2_reg: BUCK2 {
  244. regulator-name = "VDD_INT_1.1V";
  245. regulator-min-microvolt = <900000>;
  246. regulator-max-microvolt = <1100000>;
  247. regulator-always-on;
  248. regulator-boot-on;
  249. };
  250. buck3_reg: BUCK3 {
  251. regulator-name = "VDD_G3D_1.1V";
  252. regulator-min-microvolt = <900000>;
  253. regulator-max-microvolt = <1100000>;
  254. };
  255. buck5_reg: BUCK5 {
  256. regulator-name = "VDDQ_M1M2_1.2V";
  257. regulator-min-microvolt = <1200000>;
  258. regulator-max-microvolt = <1200000>;
  259. regulator-always-on;
  260. };
  261. buck7_reg: BUCK7 {
  262. regulator-name = "VDD_LCD_3.3V";
  263. regulator-min-microvolt = <3300000>;
  264. regulator-max-microvolt = <3300000>;
  265. regulator-boot-on;
  266. regulator-always-on;
  267. };
  268. EN32KHZ_AP {
  269. regulator-name = "EN32KHZ_AP";
  270. regulator-always-on;
  271. };
  272. };
  273. };
  274. };
  275. &pinctrl_1 {
  276. max8997_irq: max8997-irq-pins {
  277. samsung,pins = "gpx0-3", "gpx0-4";
  278. samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
  279. };
  280. };
  281. &sdhci_0 {
  282. bus-width = <4>;
  283. pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_cd>;
  284. pinctrl-names = "default";
  285. vmmc-supply = <&mmc_reg>;
  286. status = "okay";
  287. };
  288. &sdhci_2 {
  289. bus-width = <4>;
  290. pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sd2_cd>;
  291. pinctrl-names = "default";
  292. vmmc-supply = <&mmc_reg>;
  293. status = "okay";
  294. };
  295. &serial_0 {
  296. status = "okay";
  297. };
  298. &serial_1 {
  299. status = "okay";
  300. };
  301. &serial_2 {
  302. status = "okay";
  303. };
  304. &serial_3 {
  305. status = "okay";
  306. };
  307. &rtc {
  308. status = "okay";
  309. clocks = <&clock CLK_RTC>, <&pmic_ap_clk>;
  310. clock-names = "rtc", "rtc_src";
  311. };
  312. &tmu {
  313. status = "okay";
  314. };