sun50i-a64-sopine.dtsi 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158
  1. /*
  2. * Copyright (c) 2017 Icenowy Zheng <icenowy@aosc.xyz>
  3. *
  4. * Based on sun50i-a64-pine64.dts, which is:
  5. * Copyright (c) 2016 ARM Ltd.
  6. *
  7. * This file is dual-licensed: you can use it either under the terms
  8. * of the GPL or the X11 license, at your option. Note that this dual
  9. * licensing only applies to this file, and not this project as a
  10. * whole.
  11. *
  12. * a) This library is free software; you can redistribute it and/or
  13. * modify it under the terms of the GNU General Public License as
  14. * published by the Free Software Foundation; either version 2 of the
  15. * License, or (at your option) any later version.
  16. *
  17. * This library is distributed in the hope that it will be useful,
  18. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  19. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  20. * GNU General Public License for more details.
  21. *
  22. * Or, alternatively,
  23. *
  24. * b) Permission is hereby granted, free of charge, to any person
  25. * obtaining a copy of this software and associated documentation
  26. * files (the "Software"), to deal in the Software without
  27. * restriction, including without limitation the rights to use,
  28. * copy, modify, merge, publish, distribute, sublicense, and/or
  29. * sell copies of the Software, and to permit persons to whom the
  30. * Software is furnished to do so, subject to the following
  31. * conditions:
  32. *
  33. * The above copyright notice and this permission notice shall be
  34. * included in all copies or substantial portions of the Software.
  35. *
  36. * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
  37. * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
  38. * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
  39. * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
  40. * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
  41. * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
  42. * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
  43. * OTHER DEALINGS IN THE SOFTWARE.
  44. */
  45. #include "sun50i-a64.dtsi"
  46. #include <dt-bindings/gpio/gpio.h>
  47. &mmc0 {
  48. pinctrl-names = "default";
  49. pinctrl-0 = <&mmc0_pins>;
  50. vmmc-supply = <&reg_dcdc1>;
  51. non-removable;
  52. disable-wp;
  53. bus-width = <4>;
  54. cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */
  55. status = "okay";
  56. };
  57. &r_rsb {
  58. status = "okay";
  59. axp803: pmic@3a3 {
  60. compatible = "x-powers,axp803";
  61. reg = <0x3a3>;
  62. interrupt-parent = <&r_intc>;
  63. interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
  64. };
  65. };
  66. &spi0 {
  67. status = "okay";
  68. flash@0 {
  69. #address-cells = <1>;
  70. #size-cells = <1>;
  71. compatible = "jedec,spi-nor";
  72. reg = <0>;
  73. spi-max-frequency = <40000000>;
  74. };
  75. };
  76. #include "axp803.dtsi"
  77. &reg_aldo2 {
  78. regulator-always-on;
  79. regulator-min-microvolt = <1800000>;
  80. regulator-max-microvolt = <3300000>;
  81. regulator-name = "vcc-pl";
  82. };
  83. &reg_aldo3 {
  84. regulator-always-on;
  85. regulator-min-microvolt = <3000000>;
  86. regulator-max-microvolt = <3000000>;
  87. regulator-name = "vcc-pll-avcc";
  88. };
  89. &reg_dcdc1 {
  90. regulator-always-on;
  91. regulator-min-microvolt = <3300000>;
  92. regulator-max-microvolt = <3300000>;
  93. regulator-name = "vcc-3v3";
  94. };
  95. &reg_dcdc2 {
  96. regulator-always-on;
  97. regulator-min-microvolt = <1040000>;
  98. regulator-max-microvolt = <1300000>;
  99. regulator-name = "vdd-cpux";
  100. };
  101. /* DCDC3 is polyphased with DCDC2 */
  102. &reg_dcdc5 {
  103. regulator-always-on;
  104. regulator-min-microvolt = <1200000>;
  105. regulator-max-microvolt = <1200000>;
  106. regulator-name = "vcc-dram";
  107. };
  108. &reg_dcdc6 {
  109. regulator-always-on;
  110. regulator-min-microvolt = <1100000>;
  111. regulator-max-microvolt = <1100000>;
  112. regulator-name = "vdd-sys";
  113. };
  114. &reg_eldo1 {
  115. regulator-always-on;
  116. regulator-min-microvolt = <1800000>;
  117. regulator-max-microvolt = <1800000>;
  118. regulator-name = "vdd-1v8-lpddr";
  119. };
  120. &reg_fldo1 {
  121. regulator-min-microvolt = <1200000>;
  122. regulator-max-microvolt = <1200000>;
  123. regulator-name = "vcc-1v2-hsic";
  124. };
  125. /*
  126. * The A64 chip cannot work without this regulator off, although
  127. * it seems to be only driving the AR100 core.
  128. * Maybe we don't still know well about CPUs domain.
  129. */
  130. &reg_fldo2 {
  131. regulator-always-on;
  132. regulator-min-microvolt = <1100000>;
  133. regulator-max-microvolt = <1100000>;
  134. regulator-name = "vdd-cpus";
  135. };
  136. &reg_rtc_ldo {
  137. regulator-name = "vcc-rtc";
  138. };