blob: f89598af4c2b1ef24b1812b15fca28de2c5b4382 [file] [log] [blame]
Douglas Gilbert2515e8b2013-04-18 14:53:06 +02001/*
2 * at91-foxg20.dts - Device Tree file for Acme Systems FoxG20 board
3 *
4 * Based on DT files for at91sam9g20ek evaluation board (AT91SAM9G20 SoC)
5 *
6 * Copyright (C) 2013 Douglas Gilbert <dgilbert@interlog.com>
7 *
8 * Licensed under GPLv2 or later.
9 */
10/dts-v1/;
Nicolas Ferre004a3122013-05-31 16:41:02 +020011#include "at91sam9g20.dtsi"
Douglas Gilbert2515e8b2013-04-18 14:53:06 +020012
13/ {
14 model = "Acme Systems FoxG20";
15 compatible = "acme,foxg20", "atmel,at91sam9g20", "atmel,at91sam9";
16
17 chosen {
18 bootargs = "console=ttyS0,115200 root=/dev/mmcblk0p2 rw rootwait";
19 };
20
21 memory {
22 reg = <0x20000000 0x4000000>;
23 };
24
25 clocks {
26 #address-cells = <1>;
27 #size-cells = <1>;
28 ranges;
29
30 main_clock: clock@0 {
31 compatible = "atmel,osc", "fixed-clock";
32 clock-frequency = <18432000>;
33 };
Alexandre Belloni32cc7032014-06-17 11:12:11 +020034
35 slow_xtal {
36 clock-frequency = <32768>;
37 };
38
39 main_xtal {
40 clock-frequency = <18432000>;
41 };
Douglas Gilbert2515e8b2013-04-18 14:53:06 +020042 };
43
44 ahb {
45 apb {
46 usb1: gadget@fffa4000 {
Nicolas Ferre004a3122013-05-31 16:41:02 +020047 atmel,vbus-gpio = <&pioC 6 GPIO_ACTIVE_HIGH>;
Douglas Gilbert2515e8b2013-04-18 14:53:06 +020048 status = "okay";
49 };
50
51 mmc0: mmc@fffa8000 {
52 pinctrl-0 = <
53 &pinctrl_mmc0_clk
54 &pinctrl_mmc0_slot1_cmd_dat0
55 &pinctrl_mmc0_slot1_dat1_3>;
56 status = "okay";
57
58 slot@1 {
59 reg = <1>;
60 bus-width = <4>;
61 };
62 };
63
64 usart0: serial@fffb0000 {
65 pinctrl-0 =
66 <&pinctrl_usart0
67 &pinctrl_usart0_rts
68 &pinctrl_usart0_cts
69 >;
70 status = "okay";
71 };
72
73 usart1: serial@fffb4000 {
74 status = "okay";
75 };
76
77 usart2: serial@fffb8000 {
78 status = "okay";
79 };
80
81 macb0: ethernet@fffc4000 {
82 phy-mode = "rmii";
83 status = "okay";
84 };
85
86 usart3: serial@fffd0000 {
87 status = "okay";
88 };
89
90 uart0: serial@fffd4000 {
91 status = "okay";
92 };
93
94 uart1: serial@fffd8000 {
95 status = "okay";
96 };
97
98 dbgu: serial@fffff200 {
99 status = "okay";
100 };
101
102 pinctrl@fffff400 {
103 board {
104 pinctrl_pck0_as_mck: pck0_as_mck {
105 atmel,pins =
Nicolas Ferre004a3122013-05-31 16:41:02 +0200106 <AT91_PIOC 1 AT91_PERIPH_B AT91_PINCTRL_NONE>;
Douglas Gilbert2515e8b2013-04-18 14:53:06 +0200107 };
108 };
109
110 mmc0_slot1 {
111 pinctrl_board_mmc0_slot1: mmc0_slot1-board {
112 atmel,pins =
Nicolas Ferre004a3122013-05-31 16:41:02 +0200113 <AT91_PIOC 9 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>; /* CD pin */
Douglas Gilbert2515e8b2013-04-18 14:53:06 +0200114 };
115 };
116
117 i2c0 {
118 pinctrl_i2c0: i2c0-0 {
119 atmel,pins =
Nicolas Ferre004a3122013-05-31 16:41:02 +0200120 <AT91_PIOA 23 AT91_PERIPH_A AT91_PINCTRL_MULTI_DRIVE /* TWD (SDA), open drain */
121 AT91_PIOA 24 AT91_PERIPH_A AT91_PINCTRL_MULTI_DRIVE>; /* TWCK (SCL), open drain */
Douglas Gilbert2515e8b2013-04-18 14:53:06 +0200122 };
123 };
124 };
125
126 watchdog@fffffd40 {
127 status = "okay";
128 };
129 };
130
131 usb0: ohci@00500000 {
132 num-ports = <2>;
133 status = "okay";
134 };
135 };
136
137 i2c@0 {
138 pinctrl-names = "default";
139 pinctrl-0 = <&pinctrl_i2c0>;
140 i2c-gpio,delay-us = <5>; /* ~85 kHz */
141 status = "okay";
142 };
143
144 leds {
145 compatible = "gpio-leds";
146
147 /* red LED marked "PC7" near mini USB (device) receptacle */
148 user_led {
149 label = "user_led";
Nicolas Ferre004a3122013-05-31 16:41:02 +0200150 gpios = <&pioC 7 GPIO_ACTIVE_HIGH>; /* PC7 */
Douglas Gilbert2515e8b2013-04-18 14:53:06 +0200151 linux,default-trigger = "heartbeat";
152 };
153 };
154
155 gpio_keys {
156 compatible = "gpio-keys";
157
158 btn {
159 label = "Button";
Nicolas Ferre004a3122013-05-31 16:41:02 +0200160 gpios = <&pioC 4 GPIO_ACTIVE_LOW>;
Douglas Gilbert2515e8b2013-04-18 14:53:06 +0200161 linux,code = <0x103>;
162 gpio-key,wakeup;
163 };
164 };
165};