at91-vinco.dts 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231
  1. // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
  2. /*
  3. * Device Tree file for VInCo platform
  4. *
  5. * Copyright (C) 2014 Atmel,
  6. * 2014 Nicolas Ferre <[email protected]>
  7. * 2015 Gregory CLEMENT <[email protected]>
  8. */
  9. /dts-v1/;
  10. #include "sama5d4.dtsi"
  11. / {
  12. model = "L+G VInCo platform";
  13. compatible = "l+g,vinco", "atmel,sama5d4", "atmel,sama5";
  14. chosen {
  15. stdout-path = "serial0:115200n8";
  16. };
  17. memory@20000000 {
  18. reg = <0x20000000 0x4000000>;
  19. };
  20. clocks {
  21. slow_xtal {
  22. clock-frequency = <32768>;
  23. };
  24. main_xtal {
  25. clock-frequency = <12000000>;
  26. };
  27. };
  28. ahb {
  29. apb {
  30. adc0: adc@fc034000 {
  31. status = "okay"; /* Enable ADC IIO support */
  32. };
  33. mmc0: mmc@f8000000 {
  34. pinctrl-names = "default";
  35. pinctrl-0 = <&pinctrl_mmc0_clk_cmd_dat0
  36. &pinctrl_mmc0_dat1_3
  37. &pinctrl_mmc0_dat4_7>;
  38. vqmmc-supply = <&vcc_3v3_reg>;
  39. vmmc-supply = <&vcc_3v3_reg>;
  40. no-1-8-v;
  41. status = "okay";
  42. slot@0 {
  43. reg = <0>;
  44. bus-width = <8>;
  45. non-removable;
  46. broken-cd;
  47. status = "okay";
  48. };
  49. };
  50. spi0: spi@f8010000 {
  51. cs-gpios = <&pioC 3 0>, <0>, <0>, <0>;
  52. status = "okay";
  53. flash@0 {
  54. compatible = "n25q32b", "jedec,spi-nor";
  55. spi-max-frequency = <50000000>;
  56. reg = <0>;
  57. };
  58. };
  59. i2c0: i2c@f8014000 {
  60. status = "okay";
  61. };
  62. i2c1: i2c@f8018000 {
  63. status = "okay";
  64. /* kerkey security module */
  65. };
  66. macb0: ethernet@f8020000 {
  67. phy-mode = "rmii";
  68. status = "okay";
  69. ethernet-phy@1 {
  70. reg = <0x1>;
  71. reset-gpios = <&pioE 8 GPIO_ACTIVE_LOW>;
  72. interrupt-parent = <&pioB>;
  73. interrupts = <15 IRQ_TYPE_EDGE_FALLING>;
  74. };
  75. };
  76. i2c2: i2c@f8024000 {
  77. status = "okay";
  78. rtc1: rtc@32 {
  79. compatible = "epson,rx8900";
  80. reg = <0x32>;
  81. };
  82. };
  83. usart2: serial@fc008000 {
  84. /* MBUS */
  85. status = "okay";
  86. };
  87. usart3: serial@fc00c000 {
  88. /* debug */
  89. status = "okay";
  90. };
  91. usart4: serial@fc010000 {
  92. /* LMN */
  93. pinctrl-0 = <&pinctrl_usart4 &pinctrl_usart4_rts>;
  94. linux,rs485-enabled-at-boot-time;
  95. status = "okay";
  96. };
  97. tcb2: timer@fc024000 {
  98. timer@0 {
  99. compatible = "atmel,tcb-timer";
  100. reg = <0>;
  101. };
  102. timer@1 {
  103. compatible = "atmel,tcb-timer";
  104. reg = <1>;
  105. };
  106. };
  107. macb1: ethernet@fc028000 {
  108. phy-mode = "rmii";
  109. status = "okay";
  110. #address-cells = <1>;
  111. #size-cells = <0>;
  112. status = "okay";
  113. ethernet-phy@1 {
  114. reg = <0x1>;
  115. interrupt-parent = <&pioB>;
  116. interrupts = <31 IRQ_TYPE_EDGE_FALLING>;
  117. reset-gpios = <&pioE 6 GPIO_ACTIVE_LOW>;
  118. };
  119. };
  120. watchdog@fc068640 {
  121. status = "okay";
  122. };
  123. pinctrl@fc06a000 {
  124. board {
  125. pinctrl_usba_vbus: usba_vbus {
  126. atmel,pins =
  127. <AT91_PIOE 31 AT91_PERIPH_GPIO AT91_PINCTRL_DEGLITCH>;
  128. };
  129. };
  130. };
  131. };
  132. usb0: gadget@400000 {
  133. atmel,vbus-gpio = <&pioE 31 GPIO_ACTIVE_HIGH>;
  134. pinctrl-names = "default";
  135. pinctrl-0 = <&pinctrl_usba_vbus>;
  136. status = "disable";
  137. };
  138. usb1: ohci@500000 {
  139. num-ports = <3>;
  140. atmel,vbus-gpio = <0
  141. &pioE 11 GPIO_ACTIVE_LOW
  142. &pioE 12 GPIO_ACTIVE_LOW
  143. >;
  144. status = "disable";
  145. };
  146. usb2: ehci@600000 {
  147. /* 4G Modem */
  148. status = "okay";
  149. };
  150. };
  151. leds {
  152. compatible = "gpio-leds";
  153. status = "okay";
  154. led_err {
  155. label = "err";
  156. gpios = <&pioA 7 GPIO_ACTIVE_LOW>;
  157. default-state = "off";
  158. };
  159. led_rssi {
  160. label = "rssi";
  161. gpios = <&pioA 9 GPIO_ACTIVE_LOW>;
  162. default-state = "off";
  163. };
  164. led_tls {
  165. label = "tls";
  166. gpios = <&pioA 24 GPIO_ACTIVE_LOW>;
  167. default-state = "off";
  168. };
  169. led_lmc {
  170. label = "lmc";
  171. gpios = <&pioA 25 GPIO_ACTIVE_LOW>;
  172. default-state = "off";
  173. };
  174. led_wmt {
  175. label = "wmt";
  176. gpios = <&pioA 29 GPIO_ACTIVE_LOW>;
  177. default-state = "off";
  178. };
  179. led_pwr {
  180. label = "pwr";
  181. gpios = <&pioA 26 GPIO_ACTIVE_LOW>;
  182. default-state = "on";
  183. };
  184. };
  185. vcc_3v3_reg: fixedregulator_3v3 {
  186. compatible = "regulator-fixed";
  187. regulator-name = "VCC 3V3";
  188. regulator-min-microvolt = <3300000>;
  189. regulator-max-microvolt = <3300000>;
  190. regulator-boot-on;
  191. regulator-always-on;
  192. };
  193. };