1262569Simp/*
2262569Simp * at91sam9g20ek_common.dtsi - Device Tree file for Atmel at91sam9g20ek board
3262569Simp *
4262569Simp * Copyright (C) 2012 Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
5262569Simp *
6262569Simp * Licensed under GPLv2.
7262569Simp */
8262569Simp#include "at91sam9g20.dtsi"
9262569Simp
10262569Simp/ {
11262569Simp
12262569Simp	chosen {
13262569Simp		bootargs = "mem=64M console=ttyS0,115200 root=/dev/mtdblock5 rw rootfstype=ubifs";
14262569Simp	};
15262569Simp
16262569Simp	memory {
17262569Simp		reg = <0x20000000 0x4000000>;
18262569Simp	};
19262569Simp
20262569Simp	clocks {
21262569Simp		#address-cells = <1>;
22262569Simp		#size-cells = <1>;
23262569Simp		ranges;
24262569Simp
25262569Simp		main_clock: clock@0 {
26262569Simp			compatible = "atmel,osc", "fixed-clock";
27262569Simp			clock-frequency = <18432000>;
28262569Simp		};
29270864Simp
30270864Simp		slow_xtal {
31270864Simp			clock-frequency = <32768>;
32270864Simp		};
33270864Simp
34270864Simp		main_xtal {
35270864Simp			clock-frequency = <18432000>;
36270864Simp		};
37262569Simp	};
38262569Simp
39262569Simp	ahb {
40262569Simp		apb {
41262569Simp			pinctrl@fffff400 {
42262569Simp				board {
43262569Simp					pinctrl_pck0_as_mck: pck0_as_mck {
44262569Simp						atmel,pins =
45262569Simp							<AT91_PIOC 1 AT91_PERIPH_B AT91_PINCTRL_NONE>;	/* PC1 periph B */
46262569Simp					};
47262569Simp
48262569Simp				};
49262569Simp
50262569Simp				mmc0_slot1 {
51262569Simp					pinctrl_board_mmc0_slot1: mmc0_slot1-board {
52262569Simp						atmel,pins =
53262569Simp							<AT91_PIOC 9 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;	/* PC9 gpio CD pin pull up and deglitch */
54262569Simp					};
55262569Simp				};
56262569Simp			};
57262569Simp
58262569Simp			dbgu: serial@fffff200 {
59262569Simp				status = "okay";
60262569Simp			};
61262569Simp
62262569Simp			usart0: serial@fffb0000 {
63262569Simp				pinctrl-0 =
64262569Simp					<&pinctrl_usart0
65262569Simp					 &pinctrl_usart0_rts
66262569Simp					 &pinctrl_usart0_cts
67262569Simp					 &pinctrl_usart0_dtr_dsr
68262569Simp					 &pinctrl_usart0_dcd
69262569Simp					 &pinctrl_usart0_ri>;
70262569Simp				status = "okay";
71262569Simp			};
72262569Simp
73262569Simp			usart1: serial@fffb4000 {
74262569Simp				status = "okay";
75262569Simp			};
76262569Simp
77262569Simp			macb0: ethernet@fffc4000 {
78262569Simp				phy-mode = "rmii";
79262569Simp				status = "okay";
80262569Simp			};
81262569Simp
82262569Simp			usb1: gadget@fffa4000 {
83262569Simp				atmel,vbus-gpio = <&pioC 5 GPIO_ACTIVE_HIGH>;
84262569Simp				status = "okay";
85262569Simp			};
86262569Simp
87262569Simp			mmc0: mmc@fffa8000 {
88262569Simp				pinctrl-0 = <
89262569Simp					&pinctrl_board_mmc0_slot1
90262569Simp					&pinctrl_mmc0_clk
91262569Simp					&pinctrl_mmc0_slot1_cmd_dat0
92262569Simp					&pinctrl_mmc0_slot1_dat1_3>;
93262569Simp				status = "okay";
94262569Simp				slot@1 {
95262569Simp					reg = <1>;
96262569Simp					bus-width = <4>;
97262569Simp					cd-gpios = <&pioC 9 GPIO_ACTIVE_HIGH>;
98262569Simp				};
99262569Simp			};
100262569Simp
101262569Simp			ssc0: ssc@fffbc000 {
102262569Simp				status = "okay";
103262569Simp				pinctrl-0 = <&pinctrl_ssc0_tx>;
104262569Simp			};
105262569Simp
106262569Simp			spi0: spi@fffc8000 {
107262569Simp				cs-gpios = <0>, <&pioC 11 0>, <0>, <0>;
108262569Simp				mtd_dataflash@0 {
109262569Simp					compatible = "atmel,at45", "atmel,dataflash";
110262569Simp					spi-max-frequency = <50000000>;
111262569Simp					reg = <1>;
112262569Simp				};
113262569Simp			};
114262569Simp
115284090Sian			shdwc@fffffd10 {
116284090Sian				atmel,wakeup-counter = <10>;
117284090Sian				atmel,wakeup-rtt-timer;
118284090Sian			};
119284090Sian
120284090Sian			rtc@fffffd20 {
121284090Sian				atmel,rtt-rtc-time-reg = <&gpbr 0x0>;
122284090Sian				status = "okay";
123284090Sian			};
124284090Sian
125262569Simp			watchdog@fffffd40 {
126262569Simp				status = "okay";
127262569Simp			};
128284090Sian
129284090Sian			gpbr: syscon@fffffd50 {
130284090Sian				status = "okay";
131284090Sian			};
132262569Simp		};
133262569Simp
134262569Simp		nand0: nand@40000000 {
135262569Simp			nand-bus-width = <8>;
136262569Simp			nand-ecc-mode = "soft";
137262569Simp			nand-on-flash-bbt;
138262569Simp			status = "okay";
139262569Simp
140262569Simp			at91bootstrap@0 {
141262569Simp				label = "at91bootstrap";
142262569Simp				reg = <0x0 0x20000>;
143262569Simp			};
144262569Simp
145262569Simp			barebox@20000 {
146262569Simp				label = "barebox";
147262569Simp				reg = <0x20000 0x40000>;
148262569Simp			};
149262569Simp
150262569Simp			bareboxenv@60000 {
151262569Simp				label = "bareboxenv";
152262569Simp				reg = <0x60000 0x20000>;
153262569Simp			};
154262569Simp
155262569Simp			bareboxenv2@80000 {
156262569Simp				label = "bareboxenv2";
157262569Simp				reg = <0x80000 0x20000>;
158262569Simp			};
159262569Simp
160262569Simp			oftree@80000 {
161262569Simp				label = "oftree";
162262569Simp				reg = <0xa0000 0x20000>;
163262569Simp			};
164262569Simp
165262569Simp			kernel@a0000 {
166262569Simp				label = "kernel";
167262569Simp				reg = <0xc0000 0x400000>;
168262569Simp			};
169262569Simp
170262569Simp			rootfs@4a0000 {
171262569Simp				label = "rootfs";
172262569Simp				reg = <0x4c0000 0x7800000>;
173262569Simp			};
174262569Simp
175262569Simp			data@7ca0000 {
176262569Simp				label = "data";
177262569Simp				reg = <0x7cc0000 0x8340000>;
178262569Simp			};
179262569Simp		};
180262569Simp
181262569Simp		usb0: ohci@00500000 {
182262569Simp			num-ports = <2>;
183262569Simp			status = "okay";
184262569Simp		};
185262569Simp	};
186262569Simp
187262569Simp	i2c@0 {
188262569Simp		status = "okay";
189262569Simp
190262569Simp		24c512@50 {
191262569Simp			compatible = "24c512";
192262569Simp			reg = <0x50>;
193262569Simp		};
194262569Simp
195262569Simp		wm8731: wm8731@1b {
196262569Simp			compatible = "wm8731";
197262569Simp			reg = <0x1b>;
198262569Simp		};
199262569Simp	};
200262569Simp
201262569Simp	gpio_keys {
202262569Simp		compatible = "gpio-keys";
203262569Simp
204262569Simp		btn3 {
205262569Simp			label = "Button 3";
206262569Simp			gpios = <&pioA 30 GPIO_ACTIVE_LOW>;
207262569Simp			linux,code = <0x103>;
208262569Simp			gpio-key,wakeup;
209262569Simp		};
210262569Simp
211262569Simp		btn4 {
212262569Simp			label = "Button 4";
213262569Simp			gpios = <&pioA 31 GPIO_ACTIVE_LOW>;
214262569Simp			linux,code = <0x104>;
215262569Simp			gpio-key,wakeup;
216262569Simp		};
217262569Simp	};
218262569Simp
219262569Simp	sound {
220262569Simp		compatible = "atmel,at91sam9g20ek-wm8731-audio";
221262569Simp		pinctrl-names = "default";
222262569Simp		pinctrl-0 = <&pinctrl_pck0_as_mck>;
223262569Simp
224262569Simp		atmel,model = "wm8731 @ AT91SAMG20EK";
225262569Simp
226262569Simp		atmel,audio-routing =
227262569Simp			"Ext Spk", "LHPOUT",
228262569Simp			"Int Mic", "MICIN";
229262569Simp
230262569Simp		atmel,ssc-controller = <&ssc0>;
231262569Simp		atmel,audio-codec = <&wm8731>;
232262569Simp	};
233262569Simp};
234