meson8m2-mxiii-plus.dts 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247
  1. // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
  2. /*
  3. * Copyright (c) 2018 Oleg Ivanov <[email protected]>
  4. * Copyright (c) 2018 Martin Blumenstingl <[email protected]>
  5. */
  6. /dts-v1/;
  7. #include "meson8m2.dtsi"
  8. #include <dt-bindings/gpio/gpio.h>
  9. #include <dt-bindings/input/input.h>
  10. / {
  11. model = "Tronsmart MXIII Plus";
  12. compatible = "tronsmart,mxiii-plus", "amlogic,meson8m2";
  13. aliases {
  14. ethernet0 = &ethmac;
  15. i2c0 = &i2c_AO;
  16. serial0 = &uart_AO;
  17. serial1 = &uart_A;
  18. mmc0 = &sd_card_slot;
  19. };
  20. chosen {
  21. stdout-path = "serial0:115200n8";
  22. };
  23. memory {
  24. device_type = "memory";
  25. reg = <0x40000000 0x80000000>;
  26. };
  27. adc-keys {
  28. compatible = "adc-keys";
  29. io-channels = <&saradc 0>;
  30. io-channel-names = "buttons";
  31. keyup-threshold-microvolt = <1710000>;
  32. button-function {
  33. label = "Function";
  34. linux,code = <KEY_FN>;
  35. press-threshold-microvolt = <10000>;
  36. };
  37. };
  38. vcc_3v3: regulator-vcc3v3 {
  39. compatible = "regulator-fixed";
  40. regulator-name = "VCC3V3";
  41. regulator-min-microvolt = <3300000>;
  42. regulator-max-microvolt = <3300000>;
  43. };
  44. };
  45. &cpu0 {
  46. cpu-supply = <&vcck>;
  47. };
  48. &ethmac {
  49. status = "okay";
  50. pinctrl-0 = <&eth_rgmii_pins>;
  51. pinctrl-names = "default";
  52. phy-handle = <&eth_phy0>;
  53. phy-mode = "rgmii-id";
  54. mdio {
  55. compatible = "snps,dwmac-mdio";
  56. #address-cells = <1>;
  57. #size-cells = <0>;
  58. eth_phy0: ethernet-phy@0 {
  59. /* Realtek RTL8211F (0x001cc916) */
  60. reg = <0>;
  61. reset-assert-us = <10000>;
  62. reset-deassert-us = <80000>;
  63. reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>;
  64. };
  65. };
  66. };
  67. &ir_receiver {
  68. status = "okay";
  69. pinctrl-0 = <&ir_recv_pins>;
  70. pinctrl-names = "default";
  71. };
  72. &i2c_AO {
  73. status = "okay";
  74. pinctrl-0 = <&i2c_ao_pins>;
  75. pinctrl-names = "default";
  76. pmic@32 {
  77. compatible = "ricoh,rn5t618";
  78. reg = <0x32>;
  79. system-power-controller;
  80. regulators {
  81. vcck: DCDC1 {
  82. regulator-name = "VCCK";
  83. regulator-min-microvolt = <825000>;
  84. regulator-max-microvolt = <1150000>;
  85. regulator-boot-on;
  86. regulator-always-on;
  87. };
  88. vddee: DCDC2 {
  89. /* the output is also used as VDDAO */
  90. regulator-name = "VDD_EE";
  91. regulator-min-microvolt = <950000>;
  92. regulator-max-microvolt = <1150000>;
  93. regulator-boot-on;
  94. regulator-always-on;
  95. };
  96. DCDC3 {
  97. regulator-name = "VDD_DDR";
  98. regulator-min-microvolt = <1500000>;
  99. regulator-max-microvolt = <1500000>;
  100. regulator-boot-on;
  101. regulator-always-on;
  102. };
  103. LDO1 {
  104. regulator-name = "VDDIO_AO28";
  105. regulator-min-microvolt = <2900000>;
  106. regulator-max-microvolt = <2900000>;
  107. regulator-boot-on;
  108. regulator-always-on;
  109. };
  110. vddio_ao1v8: LDO2 {
  111. regulator-name = "VDDIO_AO18";
  112. regulator-min-microvolt = <1800000>;
  113. regulator-max-microvolt = <1800000>;
  114. regulator-boot-on;
  115. regulator-always-on;
  116. };
  117. LDO3 {
  118. regulator-name = "VCC1V8";
  119. regulator-min-microvolt = <1800000>;
  120. regulator-max-microvolt = <1800000>;
  121. regulator-boot-on;
  122. regulator-always-on;
  123. };
  124. LDO4 {
  125. regulator-name = "VCC2V8";
  126. regulator-min-microvolt = <2850000>;
  127. regulator-max-microvolt = <2850000>;
  128. regulator-boot-on;
  129. regulator-always-on;
  130. };
  131. LDO5 {
  132. regulator-name = "AVDD1V8";
  133. regulator-min-microvolt = <1800000>;
  134. regulator-max-microvolt = <1800000>;
  135. regulator-boot-on;
  136. regulator-always-on;
  137. };
  138. LDORTC1 {
  139. regulator-name = "VDD_LDO";
  140. regulator-min-microvolt = <2700000>;
  141. regulator-max-microvolt = <2700000>;
  142. regulator-boot-on;
  143. regulator-always-on;
  144. };
  145. LDORTC2 {
  146. regulator-name = "RTC_0V9";
  147. regulator-min-microvolt = <900000>;
  148. regulator-max-microvolt = <900000>;
  149. regulator-boot-on;
  150. regulator-always-on;
  151. };
  152. };
  153. };
  154. };
  155. &mali {
  156. mali-supply = <&vddee>;
  157. };
  158. &saradc {
  159. status = "okay";
  160. vref-supply = <&vddio_ao1v8>;
  161. };
  162. &sdio {
  163. status = "okay";
  164. pinctrl-0 = <&sd_b_pins>;
  165. pinctrl-names = "default";
  166. /* SD card */
  167. sd_card_slot: slot@1 {
  168. compatible = "mmc-slot";
  169. reg = <1>;
  170. status = "okay";
  171. bus-width = <4>;
  172. no-sdio;
  173. cap-mmc-highspeed;
  174. cap-sd-highspeed;
  175. disable-wp;
  176. cd-gpios = <&gpio CARD_6 GPIO_ACTIVE_LOW>;
  177. vmmc-supply = <&vcc_3v3>;
  178. };
  179. };
  180. /* connected to the Bluetooth module */
  181. &uart_A {
  182. status = "okay";
  183. pinctrl-0 = <&uart_a1_pins>, <&uart_a1_cts_rts_pins>;
  184. pinctrl-names = "default";
  185. uart-has-rtscts;
  186. };
  187. &uart_AO {
  188. status = "okay";
  189. pinctrl-0 = <&uart_ao_a_pins>;
  190. pinctrl-names = "default";
  191. };
  192. &usb0 {
  193. status = "okay";
  194. };
  195. &usb1 {
  196. status = "okay";
  197. };
  198. &usb0_phy {
  199. status = "okay";
  200. };
  201. &usb1_phy {
  202. status = "okay";
  203. };