1/*
2 * at91sam9g20ek_common.dtsi - Device Tree file for Atmel at91sam9g20ek board
3 *
4 * Copyright (C) 2012 Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
5 *
6 * Licensed under GPLv2.
7 */
8#include "at91sam9g20.dtsi"
9
10/ {
11
12	chosen {
13		bootargs = "mem=64M console=ttyS0,115200 root=/dev/mtdblock5 rw rootfstype=ubifs";
14	};
15
16	memory {
17		reg = <0x20000000 0x4000000>;
18	};
19
20	clocks {
21		#address-cells = <1>;
22		#size-cells = <1>;
23		ranges;
24
25		main_clock: clock@0 {
26			compatible = "atmel,osc", "fixed-clock";
27			clock-frequency = <18432000>;
28		};
29
30		slow_xtal {
31			clock-frequency = <32768>;
32		};
33
34		main_xtal {
35			clock-frequency = <18432000>;
36		};
37	};
38
39	ahb {
40		apb {
41			pinctrl@fffff400 {
42				board {
43					pinctrl_pck0_as_mck: pck0_as_mck {
44						atmel,pins =
45							<AT91_PIOC 1 AT91_PERIPH_B AT91_PINCTRL_NONE>;	/* PC1 periph B */
46					};
47
48				};
49
50				mmc0_slot1 {
51					pinctrl_board_mmc0_slot1: mmc0_slot1-board {
52						atmel,pins =
53							<AT91_PIOC 9 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;	/* PC9 gpio CD pin pull up and deglitch */
54					};
55				};
56			};
57
58			dbgu: serial@fffff200 {
59				status = "okay";
60			};
61
62			usart0: serial@fffb0000 {
63				pinctrl-0 =
64					<&pinctrl_usart0
65					 &pinctrl_usart0_rts
66					 &pinctrl_usart0_cts
67					 &pinctrl_usart0_dtr_dsr
68					 &pinctrl_usart0_dcd
69					 &pinctrl_usart0_ri>;
70				status = "okay";
71			};
72
73			usart1: serial@fffb4000 {
74				status = "okay";
75			};
76
77			macb0: ethernet@fffc4000 {
78				phy-mode = "rmii";
79				status = "okay";
80			};
81
82			usb1: gadget@fffa4000 {
83				atmel,vbus-gpio = <&pioC 5 GPIO_ACTIVE_HIGH>;
84				status = "okay";
85			};
86
87			mmc0: mmc@fffa8000 {
88				pinctrl-0 = <
89					&pinctrl_board_mmc0_slot1
90					&pinctrl_mmc0_clk
91					&pinctrl_mmc0_slot1_cmd_dat0
92					&pinctrl_mmc0_slot1_dat1_3>;
93				status = "okay";
94				slot@1 {
95					reg = <1>;
96					bus-width = <4>;
97					cd-gpios = <&pioC 9 GPIO_ACTIVE_HIGH>;
98				};
99			};
100
101			ssc0: ssc@fffbc000 {
102				status = "okay";
103				pinctrl-0 = <&pinctrl_ssc0_tx>;
104			};
105
106			spi0: spi@fffc8000 {
107				cs-gpios = <0>, <&pioC 11 0>, <0>, <0>;
108				mtd_dataflash@0 {
109					compatible = "atmel,at45", "atmel,dataflash";
110					spi-max-frequency = <50000000>;
111					reg = <1>;
112				};
113			};
114
115			shdwc@fffffd10 {
116				atmel,wakeup-counter = <10>;
117				atmel,wakeup-rtt-timer;
118			};
119
120			rtc@fffffd20 {
121				atmel,rtt-rtc-time-reg = <&gpbr 0x0>;
122				status = "okay";
123			};
124
125			watchdog@fffffd40 {
126				status = "okay";
127			};
128
129			gpbr: syscon@fffffd50 {
130				status = "okay";
131			};
132		};
133
134		nand0: nand@40000000 {
135			nand-bus-width = <8>;
136			nand-ecc-mode = "soft";
137			nand-on-flash-bbt;
138			status = "okay";
139
140			at91bootstrap@0 {
141				label = "at91bootstrap";
142				reg = <0x0 0x20000>;
143			};
144
145			barebox@20000 {
146				label = "barebox";
147				reg = <0x20000 0x40000>;
148			};
149
150			bareboxenv@60000 {
151				label = "bareboxenv";
152				reg = <0x60000 0x20000>;
153			};
154
155			bareboxenv2@80000 {
156				label = "bareboxenv2";
157				reg = <0x80000 0x20000>;
158			};
159
160			oftree@80000 {
161				label = "oftree";
162				reg = <0xa0000 0x20000>;
163			};
164
165			kernel@a0000 {
166				label = "kernel";
167				reg = <0xc0000 0x400000>;
168			};
169
170			rootfs@4a0000 {
171				label = "rootfs";
172				reg = <0x4c0000 0x7800000>;
173			};
174
175			data@7ca0000 {
176				label = "data";
177				reg = <0x7cc0000 0x8340000>;
178			};
179		};
180
181		usb0: ohci@00500000 {
182			num-ports = <2>;
183			status = "okay";
184		};
185	};
186
187	i2c@0 {
188		status = "okay";
189
190		24c512@50 {
191			compatible = "24c512";
192			reg = <0x50>;
193		};
194
195		wm8731: wm8731@1b {
196			compatible = "wm8731";
197			reg = <0x1b>;
198		};
199	};
200
201	gpio_keys {
202		compatible = "gpio-keys";
203
204		btn3 {
205			label = "Button 3";
206			gpios = <&pioA 30 GPIO_ACTIVE_LOW>;
207			linux,code = <0x103>;
208			gpio-key,wakeup;
209		};
210
211		btn4 {
212			label = "Button 4";
213			gpios = <&pioA 31 GPIO_ACTIVE_LOW>;
214			linux,code = <0x104>;
215			gpio-key,wakeup;
216		};
217	};
218
219	sound {
220		compatible = "atmel,at91sam9g20ek-wm8731-audio";
221		pinctrl-names = "default";
222		pinctrl-0 = <&pinctrl_pck0_as_mck>;
223
224		atmel,model = "wm8731 @ AT91SAMG20EK";
225
226		atmel,audio-routing =
227			"Ext Spk", "LHPOUT",
228			"Int Mic", "MICIN";
229
230		atmel,ssc-controller = <&ssc0>;
231		atmel,audio-codec = <&wm8731>;
232	};
233};
234