rk3229-xms6.dts 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304
  1. // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
  2. /dts-v1/;
  3. #include <dt-bindings/input/input.h>
  4. #include "rk3229.dtsi"
  5. / {
  6. model = "Mecer Xtreme Mini S6";
  7. compatible = "mecer,xms6", "rockchip,rk3229";
  8. aliases {
  9. mmc0 = &sdmmc;
  10. mmc1 = &sdio;
  11. mmc2 = &emmc;
  12. };
  13. memory@60000000 {
  14. device_type = "memory";
  15. reg = <0x60000000 0x40000000>;
  16. };
  17. dc_12v: dc-12v-regulator {
  18. compatible = "regulator-fixed";
  19. regulator-name = "dc_12v";
  20. regulator-always-on;
  21. regulator-boot-on;
  22. regulator-min-microvolt = <12000000>;
  23. regulator-max-microvolt = <12000000>;
  24. };
  25. ext_gmac: ext_gmac {
  26. compatible = "fixed-clock";
  27. clock-frequency = <125000000>;
  28. clock-output-names = "ext_gmac";
  29. #clock-cells = <0>;
  30. };
  31. power-led {
  32. compatible = "gpio-leds";
  33. blue_led: led-0 {
  34. gpios = <&gpio3 21 GPIO_ACTIVE_HIGH>;
  35. default-state = "on";
  36. };
  37. };
  38. sdio_pwrseq: sdio-pwrseq {
  39. compatible = "mmc-pwrseq-simple";
  40. reset-gpios = <&gpio2 26 GPIO_ACTIVE_LOW>,
  41. <&gpio2 29 GPIO_ACTIVE_LOW>;
  42. };
  43. vcc_host: vcc-host-regulator {
  44. compatible = "regulator-fixed";
  45. enable-active-high;
  46. gpio = <&gpio3 RK_PC4 GPIO_ACTIVE_HIGH>;
  47. pinctrl-names = "default";
  48. pinctrl-0 = <&host_vbus_drv>;
  49. regulator-name = "vcc_host";
  50. regulator-always-on;
  51. regulator-boot-on;
  52. vin-supply = <&vcc_sys>;
  53. };
  54. vcc_phy: vcc-phy-regulator {
  55. compatible = "regulator-fixed";
  56. enable-active-high;
  57. regulator-name = "vcc_phy";
  58. regulator-min-microvolt = <1800000>;
  59. regulator-max-microvolt = <1800000>;
  60. regulator-always-on;
  61. regulator-boot-on;
  62. vin-supply = <&vccio_1v8>;
  63. };
  64. vcc_sys: vcc-sys-regulator {
  65. compatible = "regulator-fixed";
  66. regulator-name = "vcc_sys";
  67. regulator-always-on;
  68. regulator-boot-on;
  69. regulator-min-microvolt = <5000000>;
  70. regulator-max-microvolt = <5000000>;
  71. vin-supply = <&dc_12v>;
  72. };
  73. vccio_1v8: vccio-1v8-regulator {
  74. compatible = "regulator-fixed";
  75. regulator-name = "vccio_1v8";
  76. regulator-min-microvolt = <1800000>;
  77. regulator-max-microvolt = <1800000>;
  78. regulator-always-on;
  79. vin-supply = <&vcc_sys>;
  80. };
  81. vccio_3v3: vccio-3v3-regulator {
  82. compatible = "regulator-fixed";
  83. regulator-name = "vccio_3v3";
  84. regulator-min-microvolt = <3300000>;
  85. regulator-max-microvolt = <3300000>;
  86. regulator-always-on;
  87. vin-supply = <&vcc_sys>;
  88. };
  89. vdd_arm: vdd-arm-regulator {
  90. compatible = "pwm-regulator";
  91. pwms = <&pwm1 0 25000 1>;
  92. pwm-supply = <&vcc_sys>;
  93. regulator-name = "vdd_arm";
  94. regulator-min-microvolt = <950000>;
  95. regulator-max-microvolt = <1400000>;
  96. regulator-always-on;
  97. regulator-boot-on;
  98. };
  99. vdd_log: vdd-log-regulator {
  100. compatible = "pwm-regulator";
  101. pwms = <&pwm2 0 25000 1>;
  102. pwm-supply = <&vcc_sys>;
  103. regulator-name = "vdd_log";
  104. regulator-min-microvolt = <1000000>;
  105. regulator-max-microvolt = <1300000>;
  106. regulator-always-on;
  107. regulator-boot-on;
  108. };
  109. };
  110. &cpu0 {
  111. cpu-supply = <&vdd_arm>;
  112. };
  113. &cpu1 {
  114. cpu-supply = <&vdd_arm>;
  115. };
  116. &cpu2 {
  117. cpu-supply = <&vdd_arm>;
  118. };
  119. &cpu3 {
  120. cpu-supply = <&vdd_arm>;
  121. };
  122. &emmc {
  123. cap-mmc-highspeed;
  124. non-removable;
  125. status = "okay";
  126. };
  127. &gmac {
  128. assigned-clocks = <&cru SCLK_MAC_SRC>;
  129. assigned-clock-rates = <50000000>;
  130. clock_in_out = "output";
  131. phy-handle = <&phy>;
  132. phy-mode = "rmii";
  133. phy-supply = <&vcc_phy>;
  134. status = "okay";
  135. mdio {
  136. compatible = "snps,dwmac-mdio";
  137. #address-cells = <1>;
  138. #size-cells = <0>;
  139. phy: ethernet-phy@0 {
  140. compatible = "ethernet-phy-id1234.d400",
  141. "ethernet-phy-ieee802.3-c22";
  142. reg = <0>;
  143. clocks = <&cru SCLK_MAC_PHY>;
  144. phy-is-integrated;
  145. resets = <&cru SRST_MACPHY>;
  146. };
  147. };
  148. };
  149. &gpu {
  150. mali-supply = <&vdd_log>;
  151. status = "okay";
  152. };
  153. &hdmi {
  154. status = "okay";
  155. };
  156. &hdmi_phy {
  157. status = "okay";
  158. };
  159. &iep_mmu {
  160. status = "okay";
  161. };
  162. &io_domains {
  163. status = "okay";
  164. vccio1-supply = <&vccio_3v3>;
  165. vccio2-supply = <&vccio_1v8>;
  166. vccio4-supply = <&vccio_3v3>;
  167. };
  168. &pinctrl {
  169. usb {
  170. host_vbus_drv: host-vbus-drv {
  171. rockchip,pins = <3 RK_PC4 RK_FUNC_GPIO &pcfg_pull_none>;
  172. };
  173. };
  174. };
  175. &pwm1 {
  176. status = "okay";
  177. };
  178. &pwm2 {
  179. status = "okay";
  180. };
  181. &sdio {
  182. bus-width = <4>;
  183. cap-sd-highspeed;
  184. cap-sdio-irq;
  185. mmc-pwrseq = <&sdio_pwrseq>;
  186. non-removable;
  187. vqmmc-supply = <&vccio_1v8>;
  188. status = "okay";
  189. };
  190. &sdmmc {
  191. cap-mmc-highspeed;
  192. disable-wp;
  193. status = "okay";
  194. };
  195. &tsadc {
  196. rockchip,hw-tshut-mode = <0>;
  197. status = "okay";
  198. };
  199. &u2phy0 {
  200. status = "okay";
  201. u2phy0_host: host-port {
  202. phy-supply = <&vcc_host>;
  203. status = "okay";
  204. };
  205. u2phy0_otg: otg-port {
  206. phy-supply = <&vcc_host>;
  207. status = "okay";
  208. };
  209. };
  210. &u2phy1 {
  211. status = "okay";
  212. u2phy1_host: host-port {
  213. phy-supply = <&vcc_host>;
  214. status = "okay";
  215. };
  216. u2phy1_otg: otg-port {
  217. phy-supply = <&vcc_host>;
  218. status = "okay";
  219. };
  220. };
  221. &uart2 {
  222. pinctrl-0 = <&uart21_xfer>;
  223. status = "okay";
  224. };
  225. &usb_host0_ehci {
  226. status = "okay";
  227. };
  228. &usb_host0_ohci {
  229. status = "okay";
  230. };
  231. &usb_host1_ehci {
  232. status = "okay";
  233. };
  234. &usb_host1_ohci {
  235. status = "okay";
  236. };
  237. &usb_host2_ehci {
  238. status = "okay";
  239. };
  240. &usb_host2_ohci {
  241. status = "okay";
  242. };
  243. &usb_otg {
  244. status = "okay";
  245. };
  246. &vop {
  247. status = "okay";
  248. };
  249. &vop_mmu {
  250. status = "okay";
  251. };