meson8b.dtsi 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229
  1. /*
  2. * Copyright 2015 Endless Mobile, Inc.
  3. * Author: Carlo Caione <carlo@endlessm.com>
  4. *
  5. * This file is dual-licensed: you can use it either under the terms
  6. * of the GPL or the X11 license, at your option. Note that this dual
  7. * licensing only applies to this file, and not this project as a
  8. * whole.
  9. *
  10. * a) This library is free software; you can redistribute it and/or
  11. * modify it under the terms of the GNU General Public License as
  12. * published by the Free Software Foundation; either version 2 of the
  13. * License, or (at your option) any later version.
  14. *
  15. * This library is distributed in the hope that it will be useful,
  16. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  17. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  18. * GNU General Public License for more details.
  19. *
  20. * You should have received a copy of the GNU General Public License
  21. * along with this program. If not, see <http://www.gnu.org/licenses/>.
  22. *
  23. * Or, alternatively,
  24. *
  25. * b) Permission is hereby granted, free of charge, to any person
  26. * obtaining a copy of this software and associated documentation
  27. * files (the "Software"), to deal in the Software without
  28. * restriction, including without limitation the rights to use,
  29. * copy, modify, merge, publish, distribute, sublicense, and/or
  30. * sell copies of the Software, and to permit persons to whom the
  31. * Software is furnished to do so, subject to the following
  32. * conditions:
  33. *
  34. * The above copyright notice and this permission notice shall be
  35. * included in all copies or substantial portions of the Software.
  36. *
  37. * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
  38. * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
  39. * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
  40. * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
  41. * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
  42. * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
  43. * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
  44. * OTHER DEALINGS IN THE SOFTWARE.
  45. */
  46. #include <dt-bindings/clock/meson8b-clkc.h>
  47. #include <dt-bindings/gpio/meson8b-gpio.h>
  48. #include <dt-bindings/reset/amlogic,meson8b-reset.h>
  49. #include "skeleton.dtsi"
  50. / {
  51. interrupt-parent = <&gic>;
  52. cpus {
  53. #address-cells = <1>;
  54. #size-cells = <0>;
  55. cpu@200 {
  56. device_type = "cpu";
  57. compatible = "arm,cortex-a5";
  58. next-level-cache = <&L2>;
  59. reg = <0x200>;
  60. };
  61. cpu@201 {
  62. device_type = "cpu";
  63. compatible = "arm,cortex-a5";
  64. next-level-cache = <&L2>;
  65. reg = <0x201>;
  66. };
  67. cpu@202 {
  68. device_type = "cpu";
  69. compatible = "arm,cortex-a5";
  70. next-level-cache = <&L2>;
  71. reg = <0x202>;
  72. };
  73. cpu@203 {
  74. device_type = "cpu";
  75. compatible = "arm,cortex-a5";
  76. next-level-cache = <&L2>;
  77. reg = <0x203>;
  78. };
  79. };
  80. soc {
  81. compatible = "simple-bus";
  82. #address-cells = <1>;
  83. #size-cells = <1>;
  84. ranges;
  85. L2: l2-cache-controller@c4200000 {
  86. compatible = "arm,pl310-cache";
  87. reg = <0xc4200000 0x1000>;
  88. cache-unified;
  89. cache-level = <2>;
  90. };
  91. gic: interrupt-controller@c4301000 {
  92. compatible = "arm,cortex-a9-gic";
  93. reg = <0xc4301000 0x1000>,
  94. <0xc4300100 0x0100>;
  95. interrupt-controller;
  96. #interrupt-cells = <3>;
  97. };
  98. reset: reset-controller@c1104404 {
  99. compatible = "amlogic,meson8b-reset";
  100. reg = <0xc1104404 0x20>;
  101. #reset-cells = <1>;
  102. };
  103. wdt: watchdog@c1109900 {
  104. compatible = "amlogic,meson8b-wdt";
  105. reg = <0xc1109900 0x8>;
  106. interrupts = <0 0 1>;
  107. };
  108. timer@c1109940 {
  109. compatible = "amlogic,meson6-timer";
  110. reg = <0xc1109940 0x18>;
  111. interrupts = <0 10 1>;
  112. };
  113. uart_AO: serial@c81004c0 {
  114. compatible = "amlogic,meson-uart";
  115. reg = <0xc81004c0 0x18>;
  116. interrupts = <0 90 1>;
  117. clocks = <&clkc CLKID_CLK81>;
  118. status = "disabled";
  119. };
  120. uart_A: serial@c11084c0 {
  121. compatible = "amlogic,meson-uart";
  122. reg = <0xc11084c0 0x18>;
  123. interrupts = <0 26 1>;
  124. clocks = <&clkc CLKID_CLK81>;
  125. status = "disabled";
  126. };
  127. uart_B: serial@c11084dc {
  128. compatible = "amlogic,meson-uart";
  129. reg = <0xc11084dc 0x18>;
  130. interrupts = <0 75 1>;
  131. clocks = <&clkc CLKID_CLK81>;
  132. status = "disabled";
  133. };
  134. uart_C: serial@c1108700 {
  135. compatible = "amlogic,meson-uart";
  136. reg = <0xc1108700 0x18>;
  137. interrupts = <0 93 1>;
  138. clocks = <&clkc CLKID_CLK81>;
  139. status = "disabled";
  140. };
  141. clkc: clock-controller@c1104000 {
  142. #clock-cells = <1>;
  143. compatible = "amlogic,meson8b-clkc";
  144. reg = <0xc1108000 0x4>, <0xc1104000 0x460>;
  145. };
  146. pwm_ab: pwm@8550 {
  147. compatible = "amlogic,meson8b-pwm";
  148. reg = <0xc1108550 0x10>;
  149. #pwm-cells = <3>;
  150. status = "disabled";
  151. };
  152. pwm_cd: pwm@8650 {
  153. compatible = "amlogic,meson8b-pwm";
  154. reg = <0xc1108650 0x10>;
  155. #pwm-cells = <3>;
  156. status = "disabled";
  157. };
  158. pwm_ef: pwm@86c0 {
  159. compatible = "amlogic,meson8b-pwm";
  160. reg = <0xc11086c0 0x10>;
  161. #pwm-cells = <3>;
  162. status = "disabled";
  163. };
  164. pinctrl_cbus: pinctrl@c1109880 {
  165. compatible = "amlogic,meson8b-cbus-pinctrl";
  166. reg = <0xc1109880 0x10>;
  167. #address-cells = <1>;
  168. #size-cells = <1>;
  169. ranges;
  170. gpio: banks@c11080b0 {
  171. reg = <0xc11080b0 0x28>,
  172. <0xc11080e8 0x18>,
  173. <0xc1108120 0x18>,
  174. <0xc1108030 0x38>;
  175. reg-names = "mux", "pull", "pull-enable", "gpio";
  176. gpio-controller;
  177. #gpio-cells = <2>;
  178. };
  179. };
  180. pinctrl_aobus: pinctrl@c8100084 {
  181. compatible = "amlogic,meson8b-aobus-pinctrl";
  182. reg = <0xc8100084 0xc>;
  183. #address-cells = <1>;
  184. #size-cells = <1>;
  185. ranges;
  186. gpio_ao: ao-bank@c1108030 {
  187. reg = <0xc8100014 0x4>,
  188. <0xc810002c 0x4>,
  189. <0xc8100024 0x8>;
  190. reg-names = "mux", "pull", "gpio";
  191. gpio-controller;
  192. #gpio-cells = <2>;
  193. };
  194. uart_ao_a_pins: uart_ao_a {
  195. mux {
  196. groups = "uart_tx_ao_a", "uart_rx_ao_a";
  197. function = "uart_ao";
  198. };
  199. };
  200. };
  201. };
  202. }; /* end of / */