rk3328-roc-cc.dts 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268
  1. // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
  2. /*
  3. * Copyright (c) 2017 T-Chip Intelligent Technology Co., Ltd
  4. */
  5. /dts-v1/;
  6. #include "rk3328.dtsi"
  7. / {
  8. model = "Firefly roc-rk3328-cc";
  9. compatible = "firefly,roc-rk3328-cc", "rockchip,rk3328";
  10. chosen {
  11. stdout-path = "serial2:1500000n8";
  12. };
  13. gmac_clkin: external-gmac-clock {
  14. compatible = "fixed-clock";
  15. clock-frequency = <125000000>;
  16. clock-output-names = "gmac_clkin";
  17. #clock-cells = <0>;
  18. };
  19. dc_12v: dc-12v {
  20. compatible = "regulator-fixed";
  21. regulator-name = "dc_12v";
  22. regulator-always-on;
  23. regulator-boot-on;
  24. regulator-min-microvolt = <12000000>;
  25. regulator-max-microvolt = <12000000>;
  26. };
  27. vcc_sd: sdmmc-regulator {
  28. compatible = "regulator-fixed";
  29. gpio = <&gpio0 RK_PD6 GPIO_ACTIVE_LOW>;
  30. pinctrl-names = "default";
  31. pinctrl-0 = <&sdmmc0m1_gpio>;
  32. regulator-name = "vcc_sd";
  33. regulator-min-microvolt = <3300000>;
  34. regulator-max-microvolt = <3300000>;
  35. vin-supply = <&vcc_io>;
  36. };
  37. vcc_host1_5v: vcc_otg_5v: vcc-host1-5v-regulator {
  38. compatible = "regulator-fixed";
  39. enable-active-high;
  40. gpio = <&gpio1 RK_PD2 GPIO_ACTIVE_HIGH>;
  41. pinctrl-names = "default";
  42. pinctrl-0 = <&usb20_host_drv>;
  43. regulator-name = "vcc_host1_5v";
  44. regulator-always-on;
  45. vin-supply = <&vcc_sys>;
  46. };
  47. vcc_sys: vcc-sys {
  48. compatible = "regulator-fixed";
  49. regulator-name = "vcc_sys";
  50. regulator-always-on;
  51. regulator-boot-on;
  52. regulator-min-microvolt = <5000000>;
  53. regulator-max-microvolt = <5000000>;
  54. vin-supply = <&dc_12v>;
  55. };
  56. vcc_phy: vcc-phy-regulator {
  57. compatible = "regulator-fixed";
  58. regulator-name = "vcc_phy";
  59. regulator-always-on;
  60. regulator-boot-on;
  61. };
  62. };
  63. &cpu0 {
  64. cpu-supply = <&vdd_arm>;
  65. };
  66. &emmc {
  67. bus-width = <8>;
  68. cap-mmc-highspeed;
  69. non-removable;
  70. pinctrl-names = "default";
  71. pinctrl-0 = <&emmc_clk &emmc_cmd &emmc_bus8>;
  72. status = "okay";
  73. };
  74. &gmac2io {
  75. assigned-clocks = <&cru SCLK_MAC2IO>, <&cru SCLK_MAC2IO_EXT>;
  76. assigned-clock-parents = <&gmac_clkin>, <&gmac_clkin>;
  77. clock_in_out = "input";
  78. phy-supply = <&vcc_phy>;
  79. phy-mode = "rgmii";
  80. pinctrl-names = "default";
  81. pinctrl-0 = <&rgmiim1_pins>;
  82. snps,reset-gpio = <&gpio1 RK_PC2 GPIO_ACTIVE_LOW>;
  83. snps,reset-active-low;
  84. snps,reset-delays-us = <0 10000 50000>;
  85. tx_delay = <0x24>;
  86. rx_delay = <0x18>;
  87. status = "okay";
  88. };
  89. &i2c1 {
  90. status = "okay";
  91. rk805: pmic@18 {
  92. compatible = "rockchip,rk805";
  93. reg = <0x18>;
  94. interrupt-parent = <&gpio1>;
  95. interrupts = <24 IRQ_TYPE_LEVEL_LOW>;
  96. #clock-cells = <1>;
  97. clock-output-names = "xin32k", "rk805-clkout2";
  98. gpio-controller;
  99. #gpio-cells = <2>;
  100. pinctrl-names = "default";
  101. pinctrl-0 = <&pmic_int_l>;
  102. rockchip,system-power-controller;
  103. wakeup-source;
  104. vcc1-supply = <&vcc_sys>;
  105. vcc2-supply = <&vcc_sys>;
  106. vcc3-supply = <&vcc_sys>;
  107. vcc4-supply = <&vcc_sys>;
  108. vcc5-supply = <&vcc_io>;
  109. vcc6-supply = <&vcc_io>;
  110. regulators {
  111. vdd_logic: DCDC_REG1 {
  112. regulator-name = "vdd_logic";
  113. regulator-min-microvolt = <712500>;
  114. regulator-max-microvolt = <1450000>;
  115. regulator-always-on;
  116. regulator-boot-on;
  117. regulator-state-mem {
  118. regulator-on-in-suspend;
  119. regulator-suspend-microvolt = <1000000>;
  120. };
  121. };
  122. vdd_arm: DCDC_REG2 {
  123. regulator-name = "vdd_arm";
  124. regulator-min-microvolt = <712500>;
  125. regulator-max-microvolt = <1450000>;
  126. regulator-always-on;
  127. regulator-boot-on;
  128. regulator-state-mem {
  129. regulator-on-in-suspend;
  130. regulator-suspend-microvolt = <950000>;
  131. };
  132. };
  133. vcc_ddr: DCDC_REG3 {
  134. regulator-name = "vcc_ddr";
  135. regulator-always-on;
  136. regulator-boot-on;
  137. regulator-state-mem {
  138. regulator-on-in-suspend;
  139. };
  140. };
  141. vcc_io: DCDC_REG4 {
  142. regulator-name = "vcc_io";
  143. regulator-min-microvolt = <3300000>;
  144. regulator-max-microvolt = <3300000>;
  145. regulator-always-on;
  146. regulator-boot-on;
  147. regulator-state-mem {
  148. regulator-on-in-suspend;
  149. regulator-suspend-microvolt = <3300000>;
  150. };
  151. };
  152. vcc_18: LDO_REG1 {
  153. regulator-name = "vcc_18";
  154. regulator-min-microvolt = <1800000>;
  155. regulator-max-microvolt = <1800000>;
  156. regulator-always-on;
  157. regulator-boot-on;
  158. regulator-state-mem {
  159. regulator-on-in-suspend;
  160. regulator-suspend-microvolt = <1800000>;
  161. };
  162. };
  163. vcc18_emmc: LDO_REG2 {
  164. regulator-name = "vcc18_emmc";
  165. regulator-min-microvolt = <1800000>;
  166. regulator-max-microvolt = <1800000>;
  167. regulator-always-on;
  168. regulator-boot-on;
  169. regulator-state-mem {
  170. regulator-on-in-suspend;
  171. regulator-suspend-microvolt = <1800000>;
  172. };
  173. };
  174. vdd_10: LDO_REG3 {
  175. regulator-name = "vdd_10";
  176. regulator-min-microvolt = <1000000>;
  177. regulator-max-microvolt = <1000000>;
  178. regulator-always-on;
  179. regulator-boot-on;
  180. regulator-state-mem {
  181. regulator-on-in-suspend;
  182. regulator-suspend-microvolt = <1000000>;
  183. };
  184. };
  185. };
  186. };
  187. };
  188. &pinctrl {
  189. pmic {
  190. pmic_int_l: pmic-int-l {
  191. rockchip,pins = <1 RK_PD0 RK_FUNC_GPIO &pcfg_pull_up>;
  192. };
  193. };
  194. usb2 {
  195. usb20_host_drv: usb20-host-drv {
  196. rockchip,pins = <1 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
  197. };
  198. };
  199. };
  200. &sdmmc {
  201. bus-width = <4>;
  202. cap-mmc-highspeed;
  203. cap-sd-highspeed;
  204. disable-wp;
  205. max-frequency = <150000000>;
  206. pinctrl-names = "default";
  207. pinctrl-0 = <&sdmmc0_clk &sdmmc0_cmd &sdmmc0_dectn &sdmmc0_bus4>;
  208. vmmc-supply = <&vcc_sd>;
  209. status = "okay";
  210. };
  211. &tsadc {
  212. status = "okay";
  213. };
  214. &u2phy {
  215. status = "okay";
  216. };
  217. &u2phy_host {
  218. status = "okay";
  219. };
  220. &u2phy_otg {
  221. status = "okay";
  222. };
  223. &uart2 {
  224. status = "okay";
  225. };
  226. &usb20_otg {
  227. dr_mode = "host";
  228. status = "okay";
  229. };
  230. &usb_host0_ehci {
  231. status = "okay";
  232. };
  233. &usb_host0_ohci {
  234. status = "okay";
  235. };