blob: 9dfd5de808d18add2cfc0c04f0cfc28fc2b604f8 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001// 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 <dgilbert@interlog.com>
8 */
9/dts-v1/;
10#include "at91sam9g20.dtsi"
11
12/ {
13 model = "Acme Systems FoxG20";
14 compatible = "acme,foxg20", "atmel,at91sam9g20", "atmel,at91sam9";
15
16 chosen {
17 bootargs = "console=ttyS0,115200 root=/dev/mmcblk0p2 rw rootwait";
18 };
19
20 memory@20000000 {
21 reg = <0x20000000 0x4000000>;
22 };
23
24 clocks {
25 slow_xtal {
26 clock-frequency = <32768>;
27 };
28
29 main_xtal {
30 clock-frequency = <18432000>;
31 };
32 };
33
34 ahb {
35 apb {
36 tcb0: timer@fffa0000 {
37 timer@0 {
38 compatible = "atmel,tcb-timer";
39 reg = <0>, <1>;
40 };
41
42 timer@2 {
43 compatible = "atmel,tcb-timer";
44 reg = <2>;
45 };
46 };
47
48 usb1: gadget@fffa4000 {
49 atmel,vbus-gpio = <&pioC 6 GPIO_ACTIVE_HIGH>;
50 status = "okay";
51 };
52
53 mmc0: mmc@fffa8000 {
54 pinctrl-0 = <
55 &pinctrl_mmc0_clk
56 &pinctrl_mmc0_slot1_cmd_dat0
57 &pinctrl_mmc0_slot1_dat1_3>;
58 pinctrl-names = "default";
59 status = "okay";
60
61 slot@1 {
62 reg = <1>;
63 bus-width = <4>;
64 };
65 };
66
67 usart0: serial@fffb0000 {
68 pinctrl-0 =
69 <&pinctrl_usart0
70 &pinctrl_usart0_rts
71 &pinctrl_usart0_cts
72 >;
73 status = "okay";
74 };
75
76 usart1: serial@fffb4000 {
77 status = "okay";
78 };
79
80 usart2: serial@fffb8000 {
81 status = "okay";
82 };
83
84 macb0: ethernet@fffc4000 {
85 phy-mode = "rmii";
86 status = "okay";
87 };
88
89 usart3: serial@fffd0000 {
90 status = "okay";
91 };
92
93 uart0: serial@fffd4000 {
94 status = "okay";
95 };
96
97 uart1: serial@fffd8000 {
98 status = "okay";
99 };
100
101 dbgu: serial@fffff200 {
102 status = "okay";
103 };
104
105 pinctrl@fffff400 {
106 board {
107 pinctrl_pck0_as_mck: pck0_as_mck {
108 atmel,pins =
109 <AT91_PIOC 1 AT91_PERIPH_B AT91_PINCTRL_NONE>;
110 };
111 };
112
113 mmc0_slot1 {
114 pinctrl_board_mmc0_slot1: mmc0_slot1-board {
115 atmel,pins =
116 <AT91_PIOC 9 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>; /* CD pin */
117 };
118 };
119
120 i2c0 {
121 pinctrl_i2c0: i2c0-0 {
122 atmel,pins =
123 <AT91_PIOA 23 AT91_PERIPH_A AT91_PINCTRL_MULTI_DRIVE /* TWD (SDA), open drain */
124 AT91_PIOA 24 AT91_PERIPH_A AT91_PINCTRL_MULTI_DRIVE>; /* TWCK (SCL), open drain */
125 };
126 };
127 };
128
129 watchdog@fffffd40 {
130 status = "okay";
131 };
132 };
133
134 usb0: ohci@500000 {
135 num-ports = <2>;
136 status = "okay";
137 };
138 };
139
140 i2c-gpio-0 {
141 pinctrl-names = "default";
142 pinctrl-0 = <&pinctrl_i2c0>;
143 i2c-gpio,delay-us = <5>; /* ~85 kHz */
144 status = "okay";
145 };
146
147 leds {
148 compatible = "gpio-leds";
149
150 /* red LED marked "PC7" near mini USB (device) receptacle */
151 user_led {
152 label = "user_led";
153 gpios = <&pioC 7 GPIO_ACTIVE_HIGH>; /* PC7 */
154 linux,default-trigger = "heartbeat";
155 };
156 };
157
158 gpio-keys {
159 compatible = "gpio-keys";
160
161 button {
162 label = "Button";
163 gpios = <&pioC 4 GPIO_ACTIVE_LOW>;
164 linux,code = <0x103>;
165 wakeup-source;
166 };
167 };
168};