1/*
2 * at91sam9x5ek.dtsi - Device Tree file for AT91SAM9x5CM Base board
3 *
4 *  Copyright (C) 2012 Atmel,
5 *                2012 Nicolas Ferre <nicolas.ferre@atmel.com>
6 *
7 * Licensed under GPLv2 or later.
8 */
9#include "at91sam9x5cm.dtsi"
10
11/ {
12	model = "Atmel AT91SAM9X5-EK";
13	compatible = "atmel,at91sam9x5ek", "atmel,at91sam9x5", "atmel,at91sam9";
14
15	chosen {
16		bootargs = "console=ttyS0,115200 root=/dev/mtdblock1 rw rootfstype=ubifs ubi.mtd=1 root=ubi0:rootfs";
17	};
18
19	ahb {
20		apb {
21			mmc0: mmc@f0008000 {
22				pinctrl-0 = <
23					&pinctrl_board_mmc0
24					&pinctrl_mmc0_slot0_clk_cmd_dat0
25					&pinctrl_mmc0_slot0_dat1_3>;
26				status = "okay";
27				slot@0 {
28					reg = <0>;
29					bus-width = <4>;
30					cd-gpios = <&pioD 15 GPIO_ACTIVE_HIGH>;
31				};
32			};
33
34			mmc1: mmc@f000c000 {
35				pinctrl-0 = <
36					&pinctrl_board_mmc1
37					&pinctrl_mmc1_slot0_clk_cmd_dat0
38					&pinctrl_mmc1_slot0_dat1_3>;
39				status = "okay";
40				slot@0 {
41					reg = <0>;
42					bus-width = <4>;
43					cd-gpios = <&pioD 14 GPIO_ACTIVE_HIGH>;
44				};
45			};
46
47			dbgu: serial@fffff200 {
48				status = "okay";
49			};
50
51			usart0: serial@f801c000 {
52				status = "okay";
53			};
54
55			usb2: gadget@f803c000 {
56				pinctrl-names = "default";
57				pinctrl-0 = <&pinctrl_board_usb2>;
58				atmel,vbus-gpio = <&pioB 16 GPIO_ACTIVE_HIGH>;
59				status = "okay";
60			};
61
62			isi: isi@f8048000 {
63				status = "disabled";
64				port {
65					isi_0: endpoint@0 {
66						remote-endpoint = <&ov2640_0>;
67						bus-width = <8>;
68					};
69				};
70			};
71
72			i2c0: i2c@f8010000 {
73				status = "okay";
74
75				wm8731: wm8731@1a {
76					compatible = "wm8731";
77					reg = <0x1a>;
78				};
79
80				ov2640: camera@0x30 {
81					compatible = "ovti,ov2640";
82					reg = <0x30>;
83					pinctrl-names = "default";
84					pinctrl-0 = <&pinctrl_pck0_as_isi_mck &pinctrl_sensor_power &pinctrl_sensor_reset>;
85					resetb-gpios = <&pioA 7 GPIO_ACTIVE_LOW>;
86					pwdn-gpios = <&pioA 13 GPIO_ACTIVE_HIGH>;
87					clocks = <&pck0>;
88					clock-names = "xvclk";
89					assigned-clocks = <&pck0>;
90					assigned-clock-rates = <25000000>;
91					status = "disabled";
92
93					port {
94						ov2640_0: endpoint {
95							remote-endpoint = <&isi_0>;
96							bus-width = <8>;
97						};
98					};
99				};
100			};
101
102			pinctrl@fffff400 {
103				camera_sensor {
104					pinctrl_pck0_as_isi_mck: pck0_as_isi_mck-0 {
105						atmel,pins =
106							<AT91_PIOC 15 AT91_PERIPH_C AT91_PINCTRL_NONE>;	/* ISI_MCK */
107					};
108
109					pinctrl_sensor_power: sensor_power-0 {
110						atmel,pins =
111							<AT91_PIOA 13 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
112					};
113
114					pinctrl_sensor_reset: sensor_reset-0 {
115						atmel,pins =
116							<AT91_PIOA 7 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
117					};
118				};
119
120				mmc0 {
121					pinctrl_board_mmc0: mmc0-board {
122						atmel,pins =
123							<AT91_PIOD 15 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;	/* PD15 gpio CD pin pull up and deglitch */
124					};
125				};
126
127				mmc1 {
128					pinctrl_board_mmc1: mmc1-board {
129						atmel,pins =
130							<AT91_PIOD 14 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;	/* PD14 gpio CD pin pull up and deglitch */
131					};
132				};
133
134				usb2 {
135					pinctrl_board_usb2: usb2-board {
136						atmel,pins =
137							<AT91_PIOB 16 AT91_PERIPH_GPIO AT91_PINCTRL_DEGLITCH>;		/* PB16 gpio vbus sense, deglitch */
138					};
139				};
140			};
141
142			spi0: spi@f0000000 {
143				status = "okay";
144				cs-gpios = <&pioA 14 0>, <0>, <0>, <0>;
145				m25p80@0 {
146					compatible = "atmel,at25df321a";
147					spi-max-frequency = <50000000>;
148					reg = <0>;
149				};
150			};
151
152			watchdog@fffffe40 {
153				status = "okay";
154			};
155
156			ssc0: ssc@f0010000 {
157				status = "okay";
158			};
159		};
160
161		usb0: ohci@00600000 {
162			status = "okay";
163			num-ports = <3>;
164			atmel,vbus-gpio = <0 /* &pioD 18 GPIO_ACTIVE_LOW *//* Activate to have access to port A */
165					   &pioD 19 GPIO_ACTIVE_LOW
166					   &pioD 20 GPIO_ACTIVE_LOW
167					  >;
168		};
169
170		usb1: ehci@00700000 {
171			status = "okay";
172		};
173	};
174
175	sound {
176		compatible = "atmel,sam9x5-wm8731-audio";
177
178		atmel,model = "wm8731 @ AT91SAM9X5EK";
179
180		atmel,audio-routing =
181			"Headphone Jack", "RHPOUT",
182			"Headphone Jack", "LHPOUT",
183			"LLINEIN", "Line In Jack",
184			"RLINEIN", "Line In Jack";
185
186		atmel,ssc-controller = <&ssc0>;
187		atmel,audio-codec = <&wm8731>;
188	};
189};
190