at91-foxg20.dts 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168
  1. // SPDX-License-Identifier: GPL-2.0-or-later
  2. /*
  3. * at91-foxg20.dts - Device Tree file for Acme Systems FoxG20 board
  4. *
  5. * Based on DT files for at91sam9g20ek evaluation board (AT91SAM9G20 SoC)
  6. *
  7. * Copyright (C) 2013 Douglas Gilbert <[email protected]>
  8. */
  9. /dts-v1/;
  10. #include "at91sam9g20.dtsi"
  11. / {
  12. model = "Acme Systems FoxG20";
  13. compatible = "acme,foxg20", "atmel,at91sam9g20", "atmel,at91sam9";
  14. chosen {
  15. bootargs = "console=ttyS0,115200 root=/dev/mmcblk0p2 rw rootwait";
  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 = <18432000>;
  26. };
  27. };
  28. ahb {
  29. apb {
  30. tcb0: timer@fffa0000 {
  31. timer@0 {
  32. compatible = "atmel,tcb-timer";
  33. reg = <0>, <1>;
  34. };
  35. timer@2 {
  36. compatible = "atmel,tcb-timer";
  37. reg = <2>;
  38. };
  39. };
  40. usb1: gadget@fffa4000 {
  41. atmel,vbus-gpio = <&pioC 6 GPIO_ACTIVE_HIGH>;
  42. status = "okay";
  43. };
  44. mmc0: mmc@fffa8000 {
  45. pinctrl-0 = <
  46. &pinctrl_mmc0_clk
  47. &pinctrl_mmc0_slot1_cmd_dat0
  48. &pinctrl_mmc0_slot1_dat1_3>;
  49. pinctrl-names = "default";
  50. status = "okay";
  51. slot@1 {
  52. reg = <1>;
  53. bus-width = <4>;
  54. };
  55. };
  56. usart0: serial@fffb0000 {
  57. pinctrl-0 =
  58. <&pinctrl_usart0
  59. &pinctrl_usart0_rts
  60. &pinctrl_usart0_cts
  61. >;
  62. status = "okay";
  63. };
  64. usart1: serial@fffb4000 {
  65. status = "okay";
  66. };
  67. usart2: serial@fffb8000 {
  68. status = "okay";
  69. };
  70. macb0: ethernet@fffc4000 {
  71. phy-mode = "rmii";
  72. status = "okay";
  73. };
  74. usart3: serial@fffd0000 {
  75. status = "okay";
  76. };
  77. uart0: serial@fffd4000 {
  78. status = "okay";
  79. };
  80. uart1: serial@fffd8000 {
  81. status = "okay";
  82. };
  83. dbgu: serial@fffff200 {
  84. status = "okay";
  85. };
  86. pinctrl@fffff400 {
  87. board {
  88. pinctrl_pck0_as_mck: pck0_as_mck {
  89. atmel,pins =
  90. <AT91_PIOC 1 AT91_PERIPH_B AT91_PINCTRL_NONE>;
  91. };
  92. };
  93. mmc0_slot1 {
  94. pinctrl_board_mmc0_slot1: mmc0_slot1-board {
  95. atmel,pins =
  96. <AT91_PIOC 9 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>; /* CD pin */
  97. };
  98. };
  99. i2c0 {
  100. pinctrl_i2c0: i2c0-0 {
  101. atmel,pins =
  102. <AT91_PIOA 23 AT91_PERIPH_A AT91_PINCTRL_MULTI_DRIVE /* TWD (SDA), open drain */
  103. AT91_PIOA 24 AT91_PERIPH_A AT91_PINCTRL_MULTI_DRIVE>; /* TWCK (SCL), open drain */
  104. };
  105. };
  106. };
  107. watchdog@fffffd40 {
  108. status = "okay";
  109. };
  110. };
  111. usb0: ohci@500000 {
  112. num-ports = <2>;
  113. status = "okay";
  114. };
  115. };
  116. i2c-gpio-0 {
  117. pinctrl-names = "default";
  118. pinctrl-0 = <&pinctrl_i2c0>;
  119. i2c-gpio,delay-us = <5>; /* ~85 kHz */
  120. status = "okay";
  121. };
  122. leds {
  123. compatible = "gpio-leds";
  124. /* red LED marked "PC7" near mini USB (device) receptacle */
  125. user_led {
  126. label = "user_led";
  127. gpios = <&pioC 7 GPIO_ACTIVE_HIGH>; /* PC7 */
  128. linux,default-trigger = "heartbeat";
  129. };
  130. };
  131. gpio-keys {
  132. compatible = "gpio-keys";
  133. button {
  134. label = "Button";
  135. gpios = <&pioC 4 GPIO_ACTIVE_LOW>;
  136. linux,code = <0x103>;
  137. wakeup-source;
  138. };
  139. };
  140. };