at91-vinco.dts 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257
  1. /*
  2. * Device Tree file for VInCo platform
  3. *
  4. * Copyright (C) 2014 Atmel,
  5. * 2014 Nicolas Ferre <nicolas.ferre@atmel.com>
  6. * 2015 Gregory CLEMENT <gregory.clement@free-electrons.com>
  7. *
  8. * This file is dual-licensed: you can use it either under the terms
  9. * of the GPL or the X11 license, at your option. Note that this dual
  10. * licensing only applies to this file, and not this project as a
  11. * whole.
  12. *
  13. * a) This file is free software; you can redistribute it and/or
  14. * modify it under the terms of the GNU General Public License as
  15. * published by the Free Software Foundation; either version 2 of the
  16. * License, or (at your option) any later version.
  17. *
  18. * This file is distributed in the hope that it will be useful,
  19. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  20. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  21. * GNU General Public License for more details.
  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. /dts-v1/;
  47. #include "sama5d4.dtsi"
  48. / {
  49. model = "L+G VInCo platform";
  50. compatible = "l+g,vinco", "atmel,sama5d4", "atmel,sama5";
  51. chosen {
  52. stdout-path = "serial0:115200n8";
  53. };
  54. memory {
  55. reg = <0x20000000 0x4000000>;
  56. };
  57. clocks {
  58. slow_xtal {
  59. clock-frequency = <32768>;
  60. };
  61. main_xtal {
  62. clock-frequency = <12000000>;
  63. };
  64. };
  65. ahb {
  66. apb {
  67. adc0: adc@fc034000 {
  68. status = "okay"; /* Enable ADC IIO support */
  69. };
  70. mmc0: mmc@f8000000 {
  71. pinctrl-names = "default";
  72. pinctrl-0 = <&pinctrl_mmc0_clk_cmd_dat0
  73. &pinctrl_mmc0_dat1_3
  74. &pinctrl_mmc0_dat4_7>;
  75. vqmmc-supply = <&vcc_3v3_reg>;
  76. vmmc-supply = <&vcc_3v3_reg>;
  77. no-1-8-v;
  78. status = "okay";
  79. slot@0 {
  80. reg = <0>;
  81. bus-width = <8>;
  82. non-removable;
  83. broken-cd;
  84. status = "okay";
  85. };
  86. };
  87. spi0: spi@f8010000 {
  88. cs-gpios = <&pioC 3 0>, <0>, <0>, <0>;
  89. status = "okay";
  90. m25p80@0 {
  91. compatible = "n25q32b", "jedec,spi-nor";
  92. spi-max-frequency = <50000000>;
  93. reg = <0>;
  94. };
  95. };
  96. i2c0: i2c@f8014000 {
  97. status = "okay";
  98. };
  99. i2c1: i2c@f8018000 {
  100. status = "okay";
  101. /* kerkey security module */
  102. };
  103. macb0: ethernet@f8020000 {
  104. phy-mode = "rmii";
  105. status = "okay";
  106. ethernet-phy@1 {
  107. reg = <0x1>;
  108. reset-gpios = <&pioE 8 GPIO_ACTIVE_LOW>;
  109. interrupt-parent = <&pioB>;
  110. interrupts = <15 IRQ_TYPE_EDGE_FALLING>;
  111. };
  112. };
  113. i2c2: i2c@f8024000 {
  114. status = "okay";
  115. rtc1: rtc@64 {
  116. compatible = "epson,rx8900";
  117. reg = <0x32>;
  118. };
  119. };
  120. usart2: serial@fc008000 {
  121. /* MBUS */
  122. status = "okay";
  123. };
  124. usart3: serial@fc00c000 {
  125. /* debug */
  126. status = "okay";
  127. };
  128. usart4: serial@fc010000 {
  129. /* LMN */
  130. pinctrl-0 = <&pinctrl_usart4 &pinctrl_usart4_rts>;
  131. linux,rs485-enabled-at-boot-time;
  132. status = "okay";
  133. };
  134. macb1: ethernet@fc028000 {
  135. phy-mode = "rmii";
  136. status = "okay";
  137. #address-cells = <1>;
  138. #size-cells = <0>;
  139. status = "okay";
  140. ethernet-phy@1 {
  141. reg = <0x1>;
  142. interrupt-parent = <&pioB>;
  143. interrupts = <31 IRQ_TYPE_EDGE_FALLING>;
  144. reset-gpios = <&pioE 6 GPIO_ACTIVE_LOW>;
  145. };
  146. };
  147. watchdog@fc068640 {
  148. status = "okay";
  149. };
  150. pinctrl@fc06a000 {
  151. board {
  152. pinctrl_usba_vbus: usba_vbus {
  153. atmel,pins =
  154. <AT91_PIOE 31 AT91_PERIPH_GPIO AT91_PINCTRL_DEGLITCH>;
  155. };
  156. };
  157. };
  158. };
  159. usb0: gadget@00400000 {
  160. atmel,vbus-gpio = <&pioE 31 GPIO_ACTIVE_HIGH>;
  161. pinctrl-names = "default";
  162. pinctrl-0 = <&pinctrl_usba_vbus>;
  163. status = "disable";
  164. };
  165. usb1: ohci@00500000 {
  166. num-ports = <3>;
  167. atmel,vbus-gpio = <0
  168. &pioE 11 GPIO_ACTIVE_LOW
  169. &pioE 12 GPIO_ACTIVE_LOW
  170. >;
  171. status = "disable";
  172. };
  173. usb2: ehci@00600000 {
  174. /* 4G Modem */
  175. status = "okay";
  176. };
  177. };
  178. leds {
  179. compatible = "gpio-leds";
  180. status = "okay";
  181. led_err {
  182. label = "err";
  183. gpios = <&pioA 7 GPIO_ACTIVE_LOW>;
  184. default-state = "off";
  185. };
  186. led_rssi {
  187. label = "rssi";
  188. gpios = <&pioA 9 GPIO_ACTIVE_LOW>;
  189. default-state = "off";
  190. };
  191. led_tls {
  192. label = "tls";
  193. gpios = <&pioA 24 GPIO_ACTIVE_LOW>;
  194. default-state = "off";
  195. };
  196. led_lmc {
  197. label = "lmc";
  198. gpios = <&pioA 25 GPIO_ACTIVE_LOW>;
  199. default-state = "off";
  200. };
  201. led_wmt {
  202. label = "wmt";
  203. gpios = <&pioA 29 GPIO_ACTIVE_LOW>;
  204. default-state = "off";
  205. };
  206. led_pwr {
  207. label = "pwr";
  208. gpios = <&pioA 26 GPIO_ACTIVE_LOW>;
  209. default-state = "on";
  210. };
  211. };
  212. vcc_3v3_reg: fixedregulator_3v3 {
  213. compatible = "regulator-fixed";
  214. regulator-name = "VCC 3V3";
  215. regulator-min-microvolt = <3300000>;
  216. regulator-max-microvolt = <3300000>;
  217. regulator-boot-on;
  218. regulator-always-on;
  219. };
  220. };