sun50i-a64-sopine-baseboard.dts 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206
  1. // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
  2. // Copyright (c) 2017 Icenowy Zheng <[email protected]>
  3. // Based on sun50i-a64-pine64.dts, which is:
  4. // Copyright (c) 2016 ARM Ltd.
  5. /dts-v1/;
  6. #include "sun50i-a64-sopine.dtsi"
  7. / {
  8. model = "SoPine with baseboard";
  9. compatible = "pine64,sopine-baseboard", "pine64,sopine",
  10. "allwinner,sun50i-a64";
  11. aliases {
  12. ethernet0 = &emac;
  13. serial0 = &uart0;
  14. serial1 = &uart1;
  15. serial2 = &uart2;
  16. serial3 = &uart3;
  17. serial4 = &uart4;
  18. };
  19. chosen {
  20. stdout-path = "serial0:115200n8";
  21. };
  22. hdmi-connector {
  23. compatible = "hdmi-connector";
  24. type = "a";
  25. port {
  26. hdmi_con_in: endpoint {
  27. remote-endpoint = <&hdmi_out_con>;
  28. };
  29. };
  30. };
  31. reg_vcc1v8: vcc1v8 {
  32. compatible = "regulator-fixed";
  33. regulator-name = "vcc1v8";
  34. regulator-min-microvolt = <1800000>;
  35. regulator-max-microvolt = <1800000>;
  36. };
  37. };
  38. &ac_power_supply {
  39. status = "okay";
  40. };
  41. &battery_power_supply {
  42. status = "okay";
  43. };
  44. &codec {
  45. status = "okay";
  46. };
  47. &codec_analog {
  48. status = "okay";
  49. };
  50. &dai {
  51. status = "okay";
  52. };
  53. &de {
  54. status = "okay";
  55. };
  56. &ehci0 {
  57. status = "okay";
  58. };
  59. &ehci1 {
  60. status = "okay";
  61. };
  62. &emac {
  63. pinctrl-names = "default";
  64. pinctrl-0 = <&rgmii_pins>;
  65. phy-mode = "rgmii-txid";
  66. phy-handle = <&ext_rgmii_phy>;
  67. phy-supply = <&reg_dc1sw>;
  68. status = "okay";
  69. };
  70. &hdmi {
  71. hvcc-supply = <&reg_dldo1>;
  72. status = "okay";
  73. };
  74. &hdmi_out {
  75. hdmi_out_con: endpoint {
  76. remote-endpoint = <&hdmi_con_in>;
  77. };
  78. };
  79. &mdio {
  80. ext_rgmii_phy: ethernet-phy@1 {
  81. compatible = "ethernet-phy-ieee802.3-c22";
  82. reg = <1>;
  83. };
  84. };
  85. &mmc2 {
  86. pinctrl-names = "default";
  87. pinctrl-0 = <&mmc2_pins>;
  88. vmmc-supply = <&reg_dcdc1>;
  89. vqmmc-supply = <&reg_vcc1v8>;
  90. bus-width = <8>;
  91. non-removable;
  92. cap-mmc-hw-reset;
  93. mmc-hs200-1_8v;
  94. status = "okay";
  95. };
  96. &ohci0 {
  97. status = "okay";
  98. };
  99. &ohci1 {
  100. status = "okay";
  101. };
  102. &reg_dc1sw {
  103. /*
  104. * Ethernet PHY needs 30ms to properly power up and some more
  105. * to initialize. 100ms should be plenty of time to finish
  106. * whole process.
  107. */
  108. regulator-enable-ramp-delay = <100000>;
  109. regulator-name = "vcc-phy";
  110. };
  111. &reg_dldo1 {
  112. regulator-min-microvolt = <3300000>;
  113. regulator-max-microvolt = <3300000>;
  114. regulator-name = "vcc-hdmi";
  115. };
  116. &reg_dldo2 {
  117. regulator-min-microvolt = <3300000>;
  118. regulator-max-microvolt = <3300000>;
  119. regulator-name = "vcc-mipi";
  120. };
  121. &reg_dldo4 {
  122. regulator-min-microvolt = <3300000>;
  123. regulator-max-microvolt = <3300000>;
  124. regulator-name = "vcc-wifi";
  125. };
  126. &simplefb_hdmi {
  127. vcc-hdmi-supply = <&reg_dldo1>;
  128. };
  129. &sound {
  130. simple-audio-card,aux-devs = <&codec_analog>;
  131. simple-audio-card,widgets = "Microphone", "Microphone Jack",
  132. "Headphone", "Headphone Jack";
  133. simple-audio-card,routing =
  134. "Left DAC", "DACL",
  135. "Right DAC", "DACR",
  136. "Headphone Jack", "HP",
  137. "ADCL", "Left ADC",
  138. "ADCR", "Right ADC",
  139. "MIC2", "Microphone Jack";
  140. status = "okay";
  141. };
  142. &uart0 {
  143. pinctrl-names = "default";
  144. pinctrl-0 = <&uart0_pb_pins>;
  145. status = "okay";
  146. };
  147. /* On Pi-2 connector */
  148. &uart2 {
  149. pinctrl-names = "default";
  150. pinctrl-0 = <&uart2_pins>;
  151. status = "disabled";
  152. };
  153. /* On Euler connector */
  154. &uart3 {
  155. pinctrl-names = "default";
  156. pinctrl-0 = <&uart3_pins>;
  157. status = "disabled";
  158. };
  159. /* On Euler connector, RTS/CTS optional */
  160. &uart4 {
  161. pinctrl-names = "default";
  162. pinctrl-0 = <&uart4_pins>;
  163. status = "disabled";
  164. };
  165. &usb_otg {
  166. dr_mode = "host";
  167. status = "okay";
  168. };
  169. &usbphy {
  170. status = "okay";
  171. };